◇ OpenCyber Academy
Rapid course · Chapter 4 · English

Chapter 4 — Security architecture and engineering: guided lab and applied synthesis

Open, free learning for anyone who wants to protect people and technology. No account is required to read this text or its worked answers.

Chapter 4 — Security architecture and engineering: guided lab and applied synthesis

Lesson map

Lesson 04 published. Map, example, EX039.

flowchart TD
  N0["Learning outcomes"]
  N1["4.1 The guided lab"]
  N2["Lab — Checking loan system settings against a baseli"]
  N3["4.2 Reading the results"]
  N4["4.3 Prioritising actions"]
  N5["4.4 Verifying the fix"]
  N6["4.5 Synthesis and plan"]
  N7["Synthesis"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Worked example"]
  EX --> Q["Exercise EX039"]

Logical drawing

flowchart LR
  N0["Learning outcomes"]
  N1["4.1 The guided lab"]
  N2["Lab — Checking loan system settings against a baseli"]
  N3["4.2 Reading the results"]
  N4["4.3 Prioritising actions"]
  N5["4.4 Verifying the fix"]
  N6["4.5 Synthesis and plan"]
  N7["Synthesis"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX039"]
[Learning outcomes]
    |
    v
[4.1 The guided lab]
    |
    v
[Lab — Checking loan system settings against a baseli]
    |
    v
[4.2 Reading the results]
    |
    v
[4.3 Prioritising actions]
    |
    v
[4.4 Verifying the fix]
    |
    v
[4.5 Synthesis and plan]
    |
    v
[Synthesis]
    |
    v
[Worked example] --> [Exercise EX039]

Learning outcomes

You will (1) check a system's settings against a baseline in a guided lab; (2) turn results into prioritised actions; (3) synthesise the month's learning into a short plan.

4.1 The guided lab

Felix sets a guided lab using synthetic settings exported from a loan system like Saltmarsh's. The lab compares each setting with a short baseline drawn from the month's principles: multi-factor sign-in for staff, sessions that time out, no shared accounts, upload links that expire, audit logging on and administrator rights limited to two people. Leah runs the script and reads the output line by line. The lab runs offline on fictitious data, so nothing touches a real system. Felix walks the class through the first two checks.

Lab — Checking loan system settings against a baseline

# Check loan system settings against a baseline (synthetic exports before and after fixes).
rules = {"staff_mfa": lambda v: v == "on", "session_timeout_min": lambda v: v <= 30,
         "shared_accounts": lambda v: v == 0, "upload_link_expiry_days": lambda v: v is not None and v <= 14,
         "audit_logging": lambda v: v == "on", "admin_count": lambda v: v <= 2, "public_links": lambda v: v == "off"}
after = {"staff_mfa": "on", "session_timeout_min": 30, "shared_accounts": 0, "upload_link_expiry_days": 14,
         "audit_logging": "on", "admin_count": 2, "public_links": "off"}
before = dict(after, session_timeout_min=480, admin_count=5, upload_link_expiry_days=None)
for label, cfg in (("before", before), ("after", after)):
    fails = [f"{k}={cfg[k]}" for k, ok in rules.items() if not ok(cfg[k])]
    print(f"{label}: {len(rules) - len(fails)}/{len(rules)} settings meet baseline; fails {fails}")

Run with python3 lab_baseline.py. Verified output:

before: 4/7 settings meet baseline; fails ['session_timeout_min=480', 'upload_link_expiry_days=None', 'admin_count=5']
after: 7/7 settings meet baseline; fails []

4.2 Reading the results

The lab reports four of seven settings meeting the baseline. Three do not: sessions stay open for eight hours instead of thirty minutes, five people hold administrator rights instead of two, and upload links never expire. Leah notes that the earlier link-sharing fix closed the public access issue but did not set expiry. Reading results carefully matters, because a pass on one setting may hide a related weakness that the baseline describes separately. She writes each gap in her notes with the setting name, the current value and the baseline value, so the vendor can act on it.

4.3 Prioritising actions

Leah ranks the three gaps. Administrator rights come first, because any of five accounts could change security settings or export all loan documents. Link expiry is second, since old links could leak if forwarded. Session timeout is third, as branch PCs already lock after five minutes. For each action she names an owner and a date and asks the vendor which changes can be made through settings. All three can, and the vendor confirms they will not disrupt loan processing.

4.4 Verifying the fix

After the changes, Leah reruns the lab with an updated export. All seven settings now meet the baseline. She keeps both outputs as evidence, dated, in the review folder. Felix stresses that verification closes the loop: a change requested is not a change made until a check confirms it. He also suggests rerunning the check every quarter, because vendor updates and staff changes can quietly undo settings over time. Leah records the date of each run and the export file used, so the evidence can be traced. She adds the quarterly check to the operations calendar with her own name as owner.

4.5 Synthesis and plan

To finish the course, Leah writes a one-page plan for Saltmarsh's next six months: individual email accounts as decided in chapter 1, a quarterly baseline check of the loan system, a tested break-glass procedure for the identity provider, an annual update of the architecture overview and vendor security questions for every new supplier. Each item links to a principle or finding from the course. Her manager approves the plan. Felix notes that the course's aim was not expertise, but a working habit of mapping, checking and recording that Leah can keep using.

Worked example

Leah runs a baseline lab on synthetic loan settings, finds three gaps, prioritises and fixes them, verifies with a rerun and writes a six-month plan.

Synthetic case. Settings, vendor and plan are synthetic.

Errors and limits

Baselines cover only listed settings. Quarterly checks lapse without an owner.

Exercises

Synthesis

A guided baseline check, prioritised fixes, verification and a short plan turn a month of learning into lasting practice.

Continue studying — chapter 04 of 04

← Chapter 03 (draft) · Course chapter index · Worked results ↓ · Next course via chapter index →