Sabline 8.7.1

We examined 15 real incidents and replayed 8 in Sabline

We examined 15 publicly reported incidents from 2023 onward in which code ran with more authority than it should have, and replayed 8 of them: for each, a Sabline program of the same shape, run under a budget, with a recorded result - 2 refused outright, 6 refused in part.

The other 7 have no replay, and each row below says why:

  • 5 are not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run.
  • 2 are out of scope: prompt injection where no code ran, so there is no program of any kind to replay.

All 15 are on this page; none is left out.

Note

None of these involved a Sabline program, and this is not a claim that adopting Sabline would have prevented any of them. Each replay is the shape of the attack, written in Sabline and run; the real events happened in languages, package managers and agent frameworks Sabline neither runs nor bounds. Every refusal below is re-run on every push, and fails the build if it stops.

Not replayed: nothing here addresses the shape #

Nothing in Sabline addresses this shape.

IncidentDateWhy there is no replay
The CircleCI breach2022-12-22Not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run
The xz backdoor2024-03-29Not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run
The Ultralytics attack2024-12-04Not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run
The GitHub MCP exploit2025-05-26Not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run
The Amazon Q wiper prompt2025-07-17Not covered: nothing in Sabline addresses the shape, so there is no Sabline program to run

Replayed: refused in part #

Part of the shape is refused and part is not; both halves are recorded.

IncidentDateThe line that does the work
Slopsquatting2024-03-28import "lib/..."
tj-actions/changed-files2025-03-14env
MCP tool poisoning2025-04-01--max-allow io
The Nx (s1ngularity) attack2025-08-26ffi:json
Shai-Hulud2025-09-14fs:read:.
postmark-mcp2025-09-25tool:send_email:to=*@corp.com

Replayed: refused #

The shape, written in Sabline and run under a budget granting what the task needs, is refused - and the refusal is recorded and re-run on every push.

IncidentDateThe line that does the work
The Solana web3.js backdoor2024-12-03sabline.lock
CVE-2025-6514 (mcp-remote)2025-07-09ffi:json

Not replayed: out of scope #

Prompt injection where no code ran - listed so the boundary is visible, not counted as a gap.

IncidentDateWhy there is no replay
EchoLeak2025-06-11Out of scope: prompt injection where no code ran, so there is no program of any kind to replay
CamoLeak2025-10-08Out of scope: prompt injection where no code ran, so there is no program of any kind to replay

Check it yourself #

python incident_evidence.py re-runs every program and writes what it printed; python check_incidents.py is what CI runs. The entries, their sources and their programs are in incidents/.