Lion Cipher Lab

Share threat intelligence with STIX and TAXII

Why it matters

Threat intelligence is only useful if it moves. A PDF report with indicators buried in a table is a thing a human reads on Tuesday; a STIX bundle delivered over TAXII is a thing a firewall blocks at 3am on Sunday without anyone awake. STIX is the agreed grammar for describing threats — indicators, malware, actors, and the relationships between them — and TAXII is the agreed plumbing for shipping it. Between them they are what CISA's Automated Indicator Sharing runs on, what MISP and every commercial threat-intel platform import and export, and what MITRE serves ATT&CK over. Once you can open…

What you'll learn

Steps in this lab

  1. The whole idea, in two sentences
  2. A word on what this ISN'T, so you don't get lost
  3. Get Python (skip if you already have it)
  4. Make a project folder and a virtual environment
  5. Install the two official libraries
  6. Meet a real STIX object, field by field
  7. The object model: three families, and the four types you actually meet
  8. STIX patterns — the detection language inside the indicator
  9. Save a real bundle to disk
  10. Read it with code — and let the library do the validating
  11. Write your own bundle by hand
  12. Break it on purpose — meet the validator
  13. Generate a bundle with code instead of by hand
  14. Now the transport half: what TAXII actually is
  15. Walk a live public TAXII server
  16. Pull real objects — and hit the custom-property wall
  17. Where this shows up in a real job
  18. What you can now do that you couldn't this morning

Open the full interactive lab →