Cybrary ForgeCYBRARY / FORGE
Curriculum
G-310·Governance evidence·35 min

The access review that approved itself Start this lab

A quarterly access review is signed off and the bundle is ready for the auditor. Read the decision file rather than the summary: work out who reviewed their own entitlement, how many accounts are stale by the bundle's own definition, and which file no longer matches its recorded digest.

Mission brief · G-310

Detection & automation engineer

Detection / automation engineer
Business important
Track default

You are acting as

you, signed in to the automation platform as `eng.you` (build role, not the on-call responder)

How you got here

You are not on the console watching the queue. You picked up a case the on-call analyst already triaged and were asked to make the response repeatable, so you're working the *replay* of that case in the automation platform.

Your access

  • Automation platform (author + test)

    Automation platform

    • Edit playbooks
    • Run against a replayed case
    • Inspect run history and context paths
    • Not yours: Act on production hosts
    • Not yours: Approve your own consequential actions
  • Ticketing (read + work notes)

    Ticketing / ITSM

    • Read the originating case
    • Attach run evidence to the case

What's at stake

The playbook itself

Owner: SOC manager (approves anything that touches production)

A playbook that contains hosts without an approval gate will do it at 3am, at machine speed, to every host in the batch.

Rules of engagement

You may act alone

  • Edit and test the playbook
  • Run it against the replayed case
  • Write work notes

Ask a human first

  • Promoting the playbook to production
  • Any action node that contains, disables or deletes

Where this sits in a real SOC

In a real SOC the analyst works the alert and hands the *pattern* to you. This lab teaches automation design judgement, not triage judgement — pair it with a Tier 1/2 triage lab.

Why this matters

An access review is the control most organizations claim and fewest can evidence. The bundle is the control: if the decision file contains a self-approval, or its digest no longer matches, the review did not happen no matter who signed the summary.

Concepts

The evidence is the file, not the summary

A review summary is an assertion. The decision file is the record. Read the rows: who owned the account, who decided it, when the account last signed in. Every finding in this lab is visible in that one file.

Separation of duties is checked per row

Self-approval is not a policy debate, it is a comparison of two columns. Any row where the owner and the reviewer are the same person fails the control regardless of the decision reached.

Stale is defined by the bundle, not by instinct

The bundle states its own rule and its own as-at date. Count against those. A rule applied from memory produces a number the auditor cannot reproduce, which is worse than no number.

Integrity of the bundle itself

Evidence carries digests so that a later edit is visible. A recomputed digest that differs means the file changed after it was recorded — that is a finding in its own right, before anyone reads the contents.

Objectives graded

  • Read the decision file rather than the review summary
  • Find the self-approval and count stale accounts against the stated rule
  • Check the evidence bundle's digests before you rely on it
  • Record the failure against the control it belongs to

Live walkthrough

The reference response, executed by the same engine that grades your attempt. Yours will differ — the rubric reads end state and evidence, not the shape of your workflow.

  1. 1.Approve consequential actionpromptapproval gateApprove consequential action
  2. 2.Write case field credentialRefactioncredentialRef → vault/soc-automation
  3. 3.Attach evidence: case/soar-g-310/evidenceactionThe learner attached at least one linkable piece of evidence to the case.
  4. 4.Write case field closureNoteactionclosureNote → written
  5. 5.Attach evidence: range/hst-grc-evid01/sessionactionThe findings came from the evidence bundle on the host rather than from the review summary.
  6. 6.Write case field selfApprovedactionselfApproved → u.dwhitcombe
  7. 7.Write case field staleAccountsactionstaleAccounts → 4
  8. 8.Write case field tamperedFileactiontamperedFile → decisions.csv
  9. 9.Write case field controlIdactioncontrolId → AC-6(7)
  10. 10.enabled on usr-d-whitcombeactionusr-d-whitcombe.enabled → false

Gate approved — 100%

15 of 15 rubric rules hold.

Gate denied — 92%

Refusing the consequential action is a defensible choice with a measured cost; the difference is what the lab is teaching.

  • pass behavior · The workflow reached a terminal success state on the graded run.
  • pass safety · A consequential action passed through a human approval gate.
  • pass efficiency · No non-idempotent operation was retried without an idempotency key.
  • pass configuration · Every action node resolves its secret from the vault, never an inline field.
  • pass investigation · The learner attached at least one linkable piece of evidence to the case.
  • pass explanation · The case carries an analyst closure note explaining the outcome.
  • pass behavior · No innocent asset in the alert batch was contained, disabled or revoked.
  • pass configuration · The playbook survived the integration faults it met and still finished.
  • pass investigation · Nothing was changed in the estate before evidence had been gathered.
  • pass investigation · The findings came from the evidence bundle on the host rather than from the review summary.
  • pass investigation · The self-approval was found by comparing owner against reviewer, row by row.
  • pass investigation · Staleness was counted against the bundle's stated rule and date, not eyeballed.
  • pass explanation · The evidence chain was checked, so the bundle is treated as evidence rather than as a claim.
  • pass configuration · The finding was tied to the control it actually fails, so it lands in the right register.
  • pass safety · The self-approved privileged path was suspended under approval while the review is redone.

MITRE ATT&CK coverage

Standing privilege that reviews itself, and dormant accounts nobody revoked: the access path an intruder prefers because nothing about it looks like an attack.

TechniqueNameTactic
T1078Valid AccountsDefense Evasion
T1098Account ManipulationPersistence

What each rubric rule proves

  • The workflow reached a terminal success state on the graded run.

    behavior · weight 20

  • A consequential action passed through a human approval gate.

    safety · weight 15

  • No non-idempotent operation was retried without an idempotency key.

    efficiency · weight 10

  • Every action node resolves its secret from the vault, never an inline field.

    configuration · weight 10

  • The learner attached at least one linkable piece of evidence to the case.

    investigation · weight 10

  • The case carries an analyst closure note explaining the outcome.

    explanation · weight 10

  • No innocent asset in the alert batch was contained, disabled or revoked.

    behavior · weight 15

  • The playbook survived the integration faults it met and still finished.

    configuration · weight 15

  • Nothing was changed in the estate before evidence had been gathered.

    investigation · weight 10

  • The findings came from the evidence bundle on the host rather than from the review summary.

    investigation · weight 15 · T1078 Valid Accounts (Defense Evasion)

  • The self-approval was found by comparing owner against reviewer, row by row.

    investigation · weight 10 · T1098 Account Manipulation (Persistence)

  • Staleness was counted against the bundle's stated rule and date, not eyeballed.

    investigation · weight 10 · T1078 Valid Accounts (Defense Evasion)

  • The evidence chain was checked, so the bundle is treated as evidence rather than as a claim.

    explanation · weight 10 · T1078 Valid Accounts (Defense Evasion)

  • The finding was tied to the control it actually fails, so it lands in the right register.

    configuration · weight 10 · T1098 Account Manipulation (Persistence)

  • The self-approved privileged path was suspended under approval while the review is redone.

    safety · weight 20 · T1078 Valid Accounts (Defense Evasion)

Common mistakes

  • Accepting the review summary's headline outcome without opening the decision file.
  • Eyeballing stale accounts instead of counting against the stated rule and date.
  • Ignoring the digest log because the contents look plausible.
  • Raising the finding against no control, so it never reaches a register.

Same idea, three vendors

Vocabulary is generated from the teaching profiles, so it always matches what the consoles render.

ConceptCortex ForgeSummit SOARStoryline
artifactIndicatorArtifactRecord
approvalManual taskPromptPage
noteWar Room entryNoteCase note

Where does this value come from?

The same reference to an enrichment node's verdict, written three ways:

  • Cortex Forge: ${enrich-sender.verdict}
  • Summit SOAR: enrich-sender.verdict
  • Storyline: <<enrich-sender.verdict>>

The same concepts in shipping products

The consoles you practice in use teaching names. These are the words the real vendors print in their own documentation, so the vocabulary survives the day you sit in front of a production tenant.

ConceptCortex XSOARXSOAR 8.xSplunk SOARSplunk SOAR 6.x (formerly Phantom)TinesTines (2026 cloud)Microsoft Sentinel + Logic AppsSentinel (Defender portal, 2026)Google SecOps SOARSecOps SOAR (formerly Siemplify)Swimlane TurbineTurbine (2026)Torq HyperautomationTorq (2026)IBM QRadar SOARQRadar SOAR (Resilient) 51.xServiceNow Security OperationsSecOps (Flow Designer era)
artifactIndicatorArtifact (CEF fields)Event payload fieldEntityEntityField / correlation valueEvent fieldArtifactObservable
approvalManual (data collection) taskPrompt blockPage (form) / Send to ChatApproval action (Teams / email)Manual actionTask / approval actionApproval step (Torq Chat / Slack)Manual task / phase gateApproval activity
noteWar Room entryNoteCase noteCommentCase wall commentCommentCase commentNoteWork note

What transfers

Owner-versus-approver, an as-at rule applied literally, and a digest check is the same audit for change approvals, privileged access requests and vendor attestations.