Cybrary ForgeCYBRARY / FORGE
Curriculum
V-570·Cross-platform·45 min

Four tickets, one resolver: name resolution, profile drift and a stale gold image Start this lab

A failover agent that will not configure, a certificate renewal that fails, logs that stopped arriving and a clock that is out - all on one host. Find the one cause under all four, then bring the host back to its profile and put a stale gold image in order.

Mission brief · V-570

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

Four tickets arrived from four teams and they are one fault. Name resolution sits underneath the failover agent, the certificate, the directory login and the log target, so one dead resolver looks like four unrelated outages — and gets fixed four wrong ways.

Concepts

Group symptoms by dependency before fixing any of them

When several checks fail on one host and none on its neighbor, ask what that host depends on that the other does not. Closing symptoms one at a time hides the cause and it returns next quarter.

Forward and reverse both matter

A host that resolves one way passes a casual test and still fails the failover agent and the certificate, because both authenticate against the fully qualified name. Always check the reverse record as well.

Profile drift only shows itself under load

A host that has drifted from the cluster profile behaves the same until the day it matters. Remediation runs in maintenance mode, which is why it is put off and why it is worth doing.

A golden image is a supply chain

Every machine cloned from a stale image is born out of date, and clones of a never-generalised image share a machine identity, which breaks directory joins. Patch first, generalize last — the other order buys you nothing.

Objectives graded

  • Sort the failing checks by cause before closing any of them.
  • Read the refusal the failover agent and the certificate renewal return.
  • Compare the resolvers on every host, forwards and in reverse.
  • Bring the drifted host back to the profile the cluster shares.
  • Patch the golden image before generalising it, and say why that order matters.

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-v-570/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-plat01/sessionactionThe platform was worked in the console rather than described from the ticket.
  6. 6.Write case field scoreBeforeactionscoreBefore → 67
  7. 7.Write case field brokenHostactionbrokenHost → nw-esx-02
  8. 8.Write case field deadResolveractiondeadResolver → 10.20.9.250
  9. 9.Write case field staleTemplateactionstaleTemplate → tpl-win2022-gold
  10. 10.Write case field templatePatchAgeDaysactiontemplatePatchAgeDays → 412
  11. 11.Write case field scoreAfteractionscoreAfter → 86

Gate approved — 100%

16 of 16 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 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 platform was worked in the console rather than described from the ticket.
  • pass investigation · The platform was measured before it was touched.
  • pass investigation · Four separate-looking failures were traced back to a single host.
  • pass investigation · The cause was named as a specific resolver rather than as 'DNS problems'.
  • pass investigation · The quieter fault - the image every new machine inherits - was found too.
  • pass investigation · The image's currency was recorded as a figure the next reviewer can check.
  • pass configuration · Name resolution, profile drift and the golden image were all put right and the result measured.

MITRE ATT&CK coverage

Name resolution is the quiet dependency underneath every authenticated platform operation, and a golden image is a supply chain of one: whatever is in it — missing patches, a shared machine identity — is inherited by every machine built from it.

TechniqueNameTactic
T1082System Information DiscoveryDiscovery
T1078Valid AccountsDefense Evasion
T1195.002Supply Chain Compromise: Compromise Software Supply ChainInitial Access

What each rubric rule proves

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

    behavior · weight 20

  • A reversible 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 platform was worked in the console rather than described from the ticket.

    investigation · weight 15

  • The platform was measured before it was touched.

    investigation · weight 10 · T1082 System Information Discovery (Discovery)

  • Four separate-looking failures were traced back to a single host.

    investigation · weight 10 · T1082 System Information Discovery (Discovery)

  • The cause was named as a specific resolver rather than as 'DNS problems'.

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

  • The quieter fault - the image every new machine inherits - was found too.

    investigation · weight 10 · T1195.002 Supply Chain Compromise: Compromise Software Supply Chain (Initial Access)

  • The image's currency was recorded as a figure the next reviewer can check.

    investigation · weight 5 · T1195.002 Supply Chain Compromise: Compromise Software Supply Chain (Initial Access)

  • Name resolution, profile drift and the golden image were all put right and the result measured.

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

Common mistakes

  • Raising four tickets as four faults and fixing four symptoms.
  • Testing name resolution in one direction only.
  • Trying to remediate a host profile without moving the guests off first.
  • Generalising a stale image, so every clone starts by installing a year of updates.

Same idea, three vendors

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

ConceptCortex ForgeSummit SOARStoryline
caseIncidentContainerCase
alertAlertEventEvent
artifactIndicatorArtifactRecord
workflowPlaybookPlaybookStory
workflow-runPlaybook runPlaybook debug runStory run
nodeTaskBlockAction
connectorIntegrationAppCredential-backed action
connector-instanceIntegration instanceAssetResource
credentialCredentialAsset credentialCredential
approvalManual taskPromptPage
child-workflowSub-playbookChild playbookSub-story
context-pathContext pathDatapathEvent path
queueIncidentsEventsCases
taskWork Plan taskTaskCase task
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)
caseIncidentContainerCaseIncidentCaseRecordCaseIncidentSecurity incident (SIR)
alertAlertEventEventAlertAlertInbound record / signalTrigger eventEscalated offense / alertSecurity alert
artifactIndicatorArtifact (CEF fields)Event payload fieldEntityEntityField / correlation valueEvent fieldArtifactObservable
workflowPlaybookPlaybookStoryPlaybook (Logic App)PlaybookPlaybookWorkflowWorkflow (BPMN)Flow / subflow
workflow-runPlaybook runPlaybook run / debug runEvent flowLogic App runPlaybook executionPlaybook executionExecutionWorkflow executionFlow execution
nodeTaskBlockActionAction / stepAction / stepActionStepFunction / scriptFlow action
connectorIntegrationAppHTTP Request action / ToolConnectorIntegrationIntegrationIntegrationAppSpoke
connector-instanceIntegration instanceAssetCredential + resource pairAPI connectionIntegration instance (environment-scoped)AssetIntegration connectionApp configuration (app.config)Connection & credential alias
credentialCredentialAsset configuration secretCredentialManaged identity / connection secretIntegration parameter (secret)Vault secretSecretApp host secretCredential record
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
child-workflowSub-playbookChild playbookSend to StoryNested Logic AppBlockSub-playbookNested workflowCalled workflowSubflow
context-pathContext path (${...})DatapathFormula (<<path.to.value>>)Expression (@{body('step')})Placeholder ([Entity.Identifier])Reference ($record.field)Expression ({{ .event.field }})Rule/script object (incident.properties)Data pill
queueIncidents viewEvent / Case listCasesIncidents gridCases queueApplication workspaceCasesIncident listSIR queue
taskWork Plan taskTask (workbook phase)Case taskIncident taskTaskTaskCase taskTask (within phase)Response task
noteWar Room entryNoteCase noteCommentCase wall commentCommentCase commentNoteWork note

What transfers

Shared-dependency reasoning — one cause underneath several symptoms — and treating base images as a supply chain apply to any platform, cloud tenancy or container registry.