Security › Module 9 › Lesson 4
Lab — Docs
Review and documentation lab on `$ARCH_LAB` — architecture review plan, threat model review, documentation standards bundled for LAB-ARCH-001.
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
EOFCommand — 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
EOFCommand — 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
APPLY: Review lab scope:
Multiple choice
Knowledge Check
APPLY: True or False: Offensive exploit steps earn review lab credit.
True or False
Knowledge Check
APPLY: Review lab pack should:
Multiple choice