Cybrary ForgeCYBRARY / FORGE
Curriculum
N-404·Cross-platform·60 min

Follow a breach across the subnets it crossed Start this lab

Overnight the perimeter logged unusual SMTP from the published web host into the server farm, then outbound TLS from an application server. You get a shell on that server, so work out which DMZ host reached it, which rule carried the data out, and which file server was touched.

Mission brief · N-404

Tier 3 analyst on the incident response bench

Tier 3 — deep host and forensics
Business important
Track default

You are acting as

the break-glass IR account `svc-ir`, checked out of the vault for this incident — never the compromised identity

How you got here

The detection fired in the EDR console. You opened a live-response session from that detection, so your shell rides the EDR agent channel — containing the host will *not* cut you off, which is exactly why you contain from here rather than over SSH.

Your access

  • EDR console (detections + live response)

    Endpoint detection & response

    • Read the detection and process tree
    • Look up host criticality, owner and VIP flags
    • Open a live-response session on the host
    • Contain the host over the agent channel
    • Not yours: Disable user accounts (that's the identity team)
    • Not yours: Delete evidence
  • Live-response shell on the affected host

    Host shell session

    • Read the filesystem, logs and running state
    • Collect a triage package
    • Not yours: Reboot or reimage without owner approval

What's at stake

The affected host

Owner: The system's business owner, named on the asset record

Containing a host you haven't identified can stop revenue. Check criticality and owner before you isolate anything.

Rules of engagement

You may act alone

  • Investigate from the live-response session
  • Collect evidence and triage packages
  • Contain a standard-criticality host

Ask a human first

  • Containing a mission-critical host — asset owner and on-call manager first
  • Disabling a user identity — identity team, and HR/legal if it looks like an insider

Why this matters

Intrusions that stay inside one subnet are the easy ones. Real damage happens when an intruder crosses a boundary the estate deliberately built, usually through the one port that boundary permits, and then leaves through a path that was already approved. Following that route is what turns a single alerting host into an accurate incident scope.

Concepts

Host logs name the crossing, the rule base explains it

The service that accepted the connection records who connected and when. The rule base then explains how that connection was possible at all. Neither half is sufficient: an address without a permitting rule is an anecdote, and a rule without a log line is theory.

Adversaries prefer permitted paths

Crossing a boundary on the single allowed port and leaving over the estate's normal egress avoids every control designed for anomalies. Expect the intrusion to look like sanctioned traffic, and scope by asking which permitted paths touch the compromised asset.

Lateral reach is scoped from the compromised host, not guessed

Mounts, sessions and open sockets on the host you hold enumerate exactly which neighbors were touched. Scope from those facts before widening the investigation, because a guessed blast radius is either an under-report or a week of wasted response.

Isolating a production server is a decision, not a reflex

The application server carries business traffic, so containment is approved, recorded and timed. The evidence justifies it; the gate authorizes it.

Objectives graded

  • Trace an intrusion across three zones using host logs, sockets and the rule base
  • Explain a crossing by the permit that allowed it rather than by the tool that made it
  • Scope lateral reach inside the server farm and contain the compromised host

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 reversible actionpromptapproval gateApprove reversible action
  2. 2.Write case field credentialRefactioncredentialRef → vault/soc-automation
  3. 3.Attach evidence: case/soar-n-404/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-nw-app07/sessionactionThe host was worked live rather than triaged from the perimeter alert alone.
  6. 6.Write case field localCidractionlocalCidr → 10.42.10.0/24
  7. 7.Write case field pivotSourceactionpivotSource → 172.16.20.80
  8. 8.Write case field pivotPortactionpivotPort → 25
  9. 9.Write case field c2Ipactionc2Ip → 203.0.113.77
  10. 10.Write case field egressRuleactionegressRule → 130
  11. 11.isolated on hst-nw-app07actionapproval gatehst-nw-app07.isolated → true
  12. 12.Write case field lateralTargetactionlateralTarget → 10.42.10.40
  13. 13.Attach evidence: case/soar-n-404/timelineactionA cross-subnet timeline was filed: entry, crossing, staging, egress, containment.
  14. 14.Write case field seatRamGbactionseatRamGb → 8
  15. 15.Write case field seatDiskGbactionseatDiskGb → 512

Gate approved — 100%

20 of 20 rubric rules hold.

Gate denied — 86%

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 reversible 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 host was worked live rather than triaged from the perimeter alert alone.
  • pass investigation · The seat was placed in the estate before the crossing was described.
  • pass investigation · The crossing was attributed to a specific DMZ host from the server's own logs.
  • pass investigation · The port used for the crossing was identified, which explains how it passed the perimeter.
  • pass behavior · The live outbound channel was found and attributed to a process.
  • pass behavior · The exfiltration path is described by the rule that allowed it, which is what gets changed.
  • pass behavior · The compromised application server is isolated at end state.
  • pass explanation · Lateral reach inside the server farm was recorded, so scoping is complete.
  • pass explanation · A cross-subnet timeline was filed: entry, crossing, staging, egress, containment.
  • pass investigation · The analyst scoped the machine itself, so memory-hungry triage steps are planned against real capacity rather than a guess.
  • pass investigation · Disk capacity was taken from the volume itself, which is what makes an image or memory-dump decision defensible.

MITRE ATT&CK coverage

An intruder enters through the published web host, crosses into the server farm on the single permitted port, mounts a file share and exfiltrates over the egress path the rule base already allows.

TechniqueNameTactic
T1190Exploit Public-Facing ApplicationInitial Access
T1210Exploitation of Remote ServicesLateral Movement
T1021.002SMB/Windows Admin SharesLateral Movement
T1071.001Application Layer Protocol: Web ProtocolsCommand and Control
T1041Exfiltration Over C2 ChannelExfiltration

What each rubric rule proves

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

    behavior · weight 20 · T1190 Exploit Public-Facing Application (Initial Access)

  • A reversible action passed through a human approval gate.

    safety · weight 15 · T1190 Exploit Public-Facing Application (Initial Access)

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

    efficiency · weight 10 · T1071.001 Application Layer Protocol: Web Protocols (Command and Control)

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

    configuration · weight 10 · T1041 Exfiltration Over C2 Channel (Exfiltration)

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

    investigation · weight 10 · T1210 Exploitation of Remote Services (Lateral Movement)

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

    explanation · weight 10 · T1190 Exploit Public-Facing Application (Initial Access)

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

    behavior · weight 15 · T1041 Exfiltration Over C2 Channel (Exfiltration)

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

    configuration · weight 15 · T1071.001 Application Layer Protocol: Web Protocols (Command and Control)

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

    investigation · weight 10 · T1210 Exploitation of Remote Services (Lateral Movement)

  • The host was worked live rather than triaged from the perimeter alert alone.

    investigation · weight 10 · T1210 Exploitation of Remote Services (Lateral Movement)

  • The seat was placed in the estate before the crossing was described.

    investigation · weight 10 · T1016 System Network Configuration Discovery (Discovery)

  • The crossing was attributed to a specific DMZ host from the server's own logs.

    investigation · weight 10 · T1190 Exploit Public-Facing Application (Initial Access)

  • The port used for the crossing was identified, which explains how it passed the perimeter.

    investigation · weight 10 · T1210 Exploitation of Remote Services (Lateral Movement)

  • The live outbound channel was found and attributed to a process.

    behavior · weight 10 · T1071.001 Application Layer Protocol: Web Protocols (Command and Control)

  • The exfiltration path is described by the rule that allowed it, which is what gets changed.

    behavior · weight 15 · T1041 Exfiltration Over C2 Channel (Exfiltration)

  • The compromised application server is isolated at end state.

    behavior · weight 15 · T1190 Exploit Public-Facing Application (Initial Access)

  • Lateral reach inside the server farm was recorded, so scoping is complete.

    explanation · weight 10 · T1021.002 SMB/Windows Admin Shares (Lateral Movement)

  • A cross-subnet timeline was filed: entry, crossing, staging, egress, containment.

    explanation · weight 10 · T1041 Exfiltration Over C2 Channel (Exfiltration)

  • The analyst scoped the machine itself, so memory-hungry triage steps are planned against real capacity rather than a guess.

    investigation · weight 3

  • Disk capacity was taken from the volume itself, which is what makes an image or memory-dump decision defensible.

    investigation · weight 3

Common mistakes

  • Reporting the alerting host and stopping, without the zone the intrusion entered from.
  • Describing the exfiltration by the process name rather than by the path that permitted it.
  • Missing the file-share mount because the socket table was read but the process list was not.
  • Containing before the crossing is documented, losing the evidence that scopes the incident.

Same idea, three vendors

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

ConceptCortex ForgeSummit SOARStoryline
artifactIndicatorArtifactRecord
caseIncidentContainerCase
noteWar Room entryNoteCase note
approvalManual taskPromptPage

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
caseIncidentContainerCaseIncidentCaseRecordCaseIncidentSecurity incident (SIR)
noteWar Room entryNoteCase noteCommentCase wall commentCommentCase commentNoteWork note
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

What transfers

Entry, crossing, staging, egress: the same four questions scope an intrusion in a data center, a cloud VPC or a partner network, and each answer should name both the observation and the control that allowed it.