A fresh threat-intel report describes an adversary's behavior in prose; your job is to turn that prose into a detection that fires in your environment before the adversary reaches it.
Tier: Advanced · Workflow area: Detection engineering with AI
This playbook runs the full pipeline — extract the techniques and IOCs, map them to ATT&CK, generate a candidate detection, and test it — with verification at every hop, because each step is a place the model can quietly fabricate a technique, an indicator, or a field.
Skip AI when the report already ships with vendor-authored, tested detections for your stack — validate theirs rather than regenerating.
Extract behaviors and IOCs with citations back to the report. Prose in, structured facts out — each anchored to the sentence it came from.
From this threat report (pasted), extract:
- Adversary behaviors, each mapped to the most specific MITRE ATT&CK
technique ID you can justify.
- IOCs (hashes, IPs, domains, filenames), typed.
For every item, quote the sentence from the report it came from. If a
technique mapping is a guess, mark it LOW CONFIDENCE. Do not add techniques
or IOCs that are not stated in the report.
Expected output: a behavior→technique table and a typed IOC list, each row quoting its source sentence, with weak mappings flagged.
Verify the ATT&CK mappings against the matrix. Open each cited technique in ATT&CK Navigator and confirm the report's described behavior actually matches that technique's definition. Models routinely map to a related technique that is subtly wrong — T1059 (command interpreter) where the report describes T1053 (scheduled task).
Verify IOCs against the source text. Confirm every extracted hash/IP/domain appears verbatim in the report. A transposed character in a hash makes the resulting detection worthless. This is a literal string-match check.
Generate a candidate detection for a behavior worth detecting. IOCs age fast; prioritize a behavioral detection. Feed the verified technique into the Sigma authoring flow (see pb-06) and compile it to your SIEM.
Test against known-bad and known-good. Reproduce the behavior safely with an Atomic Red Team test where one exists, confirm the rule fires, then confirm it stays silent on benign sample data. An untested intel-derived rule is just a rumor in YAML.
Record provenance end to end. The final artifact links report → technique → rule → test result, so a reviewer can trace why the detection exists and what it was proven against.
Every hop in an intel-to-detection pipeline is a fabrication risk: a misattributed technique, a mistyped IOC, a hallucinated field. The value is not the automation — it is the chain of verifications you keep between the report and the deployed rule.
Threat reports are often shared under TLP restrictions, and the resulting detections reveal a client's coverage — both are sensitive. Run extraction and mapping on a local Ollama model or the client's approved endpoint, and honor the report's TLP marking: TLP:RED intel does not go into any shared or third-party tool. Verify mappings against the public ATT&CK matrix (safe to consult). Keep IOC handling, rule generation, and testing inside the client's environment, and record the full provenance chain in the client's detection repo so their analysts can audit why each intel-derived rule exists and what it was tested against.