Cyberlium

Security › Module 9 › Lesson 4

BeginnerModule 9Lesson 4/5

Lab — Docs

Review and documentation lab on `$ARCH_LAB` — architecture review plan, threat model review, documentation standards bundled for LAB-ARCH-001.

25 min+40 XP3 quiz
Module progress4 of 5

Visual · t41_review_lab

Lab: review/docs pack on YOUR $ARCH_LAB LAB-ARCH-001. Original Cyberlium.

Opening

Ship review and documentation artifacts from YOUR lab thread — review plan, TM review, doc standards — zero offensive findings or stranger org data.

On YOUR `$ARCH_LAB` per brief: (1) scope proof — Module 8 control selection pack labeled; (2) architecture review plan Module 9-1; (3) threat model review sheet Module 9-2; (4) documentation standards card Module 9-3 applied to prior artifacts; (5) review loop stub (design → TM review → doc standard → control trace); (6) integrity — `$ARCH_LAB` only, LAB-ARCH-001 scope, LAB disclaimer on all docs, no offensive exploit content, no stranger org reviews; (7) chmod 600 pack. Cross-link Modules 4–8 design thread — professional review handoff.

1. Lab deliverables

Review plan + TM review + doc standards cross-indexed — single governance thread.

Loop stub links finding IDs to control trace — accountability.

Command guide

Try these commands — Lab deliverables

═══ TOOLS & WEBSITES ═══ Browse / read these (authorized learning only — stay in YOUR lab / program scope)

NIST 800-53 — https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final OWASP ASVS — https://owasp.org/www-project-application-security-verification-standard/ Microsoft SDL — https://www.microsoft.com/en-us/securityengineering/sdl/

═══ INSTALL ═══

Linux (Debian/Ubuntu):

Command — copy this

sudo apt install curl

macOS: Built-in

Windows: Built-in (PowerShell: Invoke-WebRequest)

═══ LINUX / macOS ═══

Command — copy this

export ARCH_LAB=${ARCH_LAB:-$HOME/cyberlium-lab/t41-arch}
export ARCH_CONTROLS=${ARCH_CONTROLS:-$ARCH_LAB/LAB-ARCH-001/controls}
cat > "$ARCH_CONTROLS/control-selection-table.md" <<'EOF'
# Control Selection Table — LAB-ARCH-001
| Threat (from STRIDE) | Control objective | NIST 800-53 (literacy) | ASVS (literacy) | Implementation stub | Owner |
|----------------------|-------------------|------------------------|-----------------|---------------------|-------|
| Spoofing @ portal | Strong authN | IA-2, IA-5 | V2.1 | OAuth2 + MFA | App Sec |
| Tampering @ order API | Input integrity | SI-7, SA-15 | V5.1 | JSON schema validation | Platform |
| Info disclosure @ DB | Protect at rest | SC-28, MP-5 | V6.2 | AES-256 + KMS | Platform |
| Elevation @ admin | Least privilege | AC-6, AC-3 | V4.1 | RBAC + PAM | IT Sec |
| DoS @ edge | Availability | SC-5, CP-2 | V12.x | Rate limit + DR plan | SRE |
LAB SAMPLE — control traceability — NOT production control attestation
EOF

Command — copy this

grep -E 'Spoofing|LAB SAMPLE|IA-2|V2.1' "$ARCH_CONTROLS/control-selection-table.md"
export ARCH_REVIEW=${ARCH_REVIEW:-$ARCH_LAB/LAB-ARCH-001/review}
cat > "$ARCH_REVIEW/architecture-review-checklist.md" <<'EOF'
# Architecture Review Checklist — LAB-ARCH-001
- [ ] Context + container diagrams current and labeled
- [ ] STRIDE worksheets updated for changed trust boundaries
- [ ] Defense-in-depth layers map to implemented controls
- [ ] SABSA attributes traced to control-selection-table rows
- [ ] No undocumented admin bypass paths in design
- [ ] All artifacts labeled LAB SAMPLE — defensive literacy only
LAB SAMPLE — review checklist — NOT production sign-off
EOF

Command — copy this

grep -E '\[ \]|LAB SAMPLE|STRIDE' "$ARCH_REVIEW/architecture-review-checklist.md"
cat > "$ARCH_LAB/notes/controls-lab-summary.md" <<'EOF'
# Control Selection Lab Summary — YOUR lab
- control-selection-named.txt + nist-baseline-literacy.md: selection literacy
- asvs-mapping-literacy.md: ASVS ↔ architecture crosswalk
- control-selection-table.md: STRIDE → NIST/ASVS table
- architecture-review-checklist.md: design review stub in review/
## Refusals
- No fake ATO packages; table is LAB SAMPLE literacy only
EOF

Command — copy this

grep -E 'control-selection-table|Refusals|LAB SAMPLE' "$ARCH_LAB/notes/controls-lab-summary.md"
curl -sS https://owasp.org/www-project-application-security-verification-standard/ | head -3

═══ WINDOWS ═══

Command — copy this

Get-Content $HOME/cyberlium-lab/t41-arch/LAB-ARCH-001/controls/control-selection-table.md | Select-String Spoofing

Primary tools to practice this lesson: grep, curl. Reference sites: NIST 800-53 (https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final); OWASP ASVS (https://owasp.org/www-project-application-security-verification-standard/); Microsoft SDL (https://www.microsoft.com/en-us/securityengineering/sdl/). Run every command in the box — install first, then the usage lines — only on YOUR lab / program scope.

2. Quality bar

LAB disclaimer on every document — not optional.

Zero offensive exploit content in review findings — defensive mitigations only.

3. Teardown

Secure notes chmod 600; review pack ready for capstone evidence index.

Archive stub optional per brief.

4. What you ship: review lab pack

Review plan + TM review + doc standards + loop stub + integrity — chmod 600.

5. What you record before the next lesson

Review lab pack path.

6. Wrong vs right: offensive playbooks vs YOUR threat models

Worked failure — same MSF word, opposite target. Right never needs a café Wi-Fi or classmate laptop.

  • Wrong

    Review lab includes offensive exploit finding appendix as bonus deliverable.

  • Right

    Review lab pack on `$ARCH_LAB` LAB-ARCH-001. Next: quiz.

Mission: review lab

1) Scope and Module 8 control pack proof. 2) Architecture review and TM review. 3) Documentation standards applied to artifacts. 4) Integrity block; chmod 600.

Stuck? Ask Cyberlium AI Mentor

Ask Mentor: “Review loop — minimum nodes?”

Knowledge Check

1

APPLY: Review lab scope:

Multiple choice

Knowledge Check

2

APPLY: True or False: Offensive exploit steps earn review lab credit.

True or False

Knowledge Check

3

APPLY: Review lab pack should:

Multiple choice

← Previous

Answer all 3 knowledge checks to continue. (0/3 answered)