Cybrary ForgeCYBRARY / FORGE
Curriculum
A-280·AI safety·40 min

Adverse impact: the model that ranks the shift Start this lab

A screening model reached serving with no fairness gate. Its own evaluation wrote the selection counts to disk. Compare the rates across sites, apply the four-fifths rule, find the unapproved feature standing in for the site, and contain the serving node without punishing the team that built it.

Mission brief · A-280

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

A model that ranks people can be accurate and still unlawful. Adverse impact is measured on outcomes across groups, not on intent or on the feature list, and the measurement is arithmetic anyone can check — which is exactly why an organization cannot claim it did not know.

Concepts

Selection rate, then the ratio

Selection rate is selected divided by applicants, per group. The disparate impact ratio is the lowest group's rate divided by the highest. Below 0.80 — the four-fifths rule — a selection process is treated as having adverse impact and has to be justified or fixed.

A proxy carries what you removed

Deleting the protected attribute does nothing if a feature correlates with it. A postcode band that tracks the site tracks everyone who lives near that site, and the model learns the thing you thought you had taken out.

A gate is a control, not a report

A fairness evaluation that runs but blocks nothing is documentation of harm. The promotion pipeline needs a gate that fails the build, with the ratio and threshold written into it.

Name the harm, not the team

The finding is the model's effect on applicants at one site. Write it that way: the owner has to fix it, and a finding that reads as an accusation gets argued with instead of fixed.

Objectives graded

  • Compare selection rates across sites and work out the disparate impact ratio
  • Apply the four-fifths rule and say plainly whether it passes
  • Find the proxy feature carrying a protected characteristic into the model
  • Contain the serving node without blaming the wrong owner

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-a-280/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-ai-mlops01/sessionactionThe disparity was computed from the evaluation on disk rather than asserted.
  6. 6.Write case field lowestGroupactionlowestGroup → riverside
  7. 7.Write case field impactRatioactionimpactRatio → 0.60
  8. 8.Write case field fourFifthsactionfourFifths → fail
  9. 9.Write case field proxyFeatureactionproxyFeature → commute_postcode_band
  10. 10.isolated on hst-ai-score01actionapproval gatehst-ai-score01.isolated → true

Gate approved — 100%

15 of 15 rubric rules hold.

Gate denied — 82%

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 disparity was computed from the evaluation on disk rather than asserted.
  • pass investigation · The disadvantaged group was identified from the selection counts.
  • pass investigation · The disparity was expressed as a ratio a regulator would recognize.
  • pass explanation · The ratio was tested against the four-fifths threshold rather than left as a number.
  • pass configuration · The proxy feature carrying the disparity was named from the feature list.
  • pass safety · The serving node was pulled from rotation under approval while the model is unfit.

MITRE ATT&CK coverage

The harm here is not an intrusion: a model reached serving through a trusted pipeline with no gate, and the pipeline's own trust is what carried it.

TechniqueNameTactic
T1078Valid AccountsDefense Evasion
T1199Trusted RelationshipInitial Access

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 disparity was computed from the evaluation on disk rather than asserted.

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

  • The disadvantaged group was identified from the selection counts.

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

  • The disparity was expressed as a ratio a regulator would recognize.

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

  • The ratio was tested against the four-fifths threshold rather than left as a number.

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

  • The proxy feature carrying the disparity was named from the feature list.

    configuration · weight 10 · T1199 Trusted Relationship (Initial Access)

  • The serving node was pulled from rotation under approval while the model is unfit.

    safety · weight 20 · T1199 Trusted Relationship (Initial Access)

Common mistakes

  • Reporting accuracy or AUC as evidence that a model is fair.
  • Assuming a model is unbiased because protected attributes were excluded.
  • Quoting selection counts without turning them into rates and a ratio.
  • Leaving the model serving while the remediation is discussed.

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

Selection rate, ratio, threshold, proxy check is the same audit for credit decisions, fraud scoring, triage queues and any automated ranking of people.