Poisoned Pipeline

Poisoned Pipeline / Incidents / AS27

AS27 · 2026-09

Hijacked AI coding assistant spreads Shai-Hulud

PyPIGit / GitHubAI coding agentsVS Code / IDEDeveloper workstation

Mandiant's AI Risk and Resilience 2026 report (case study 1) describes an
IR where an attacker hijacked an active AI coding-assistant session. The
assistant recommended attacker-poisoned software; the human accepted; the
same session installed an infostealer via PyPI, stole GitHub OAuth tokens,
and deployed Shai-Hulud across about 100 internal repositories. The actor
then poisoned a package in the company's official namespace, which a
second employee pulled.

Mapped techniques

supply-chain AI coding-assistant session

T0152 · Execution · IDE

The live assistant session was the install oracle.

T0210 · Persistence · Poison AI coding-agent config or workspace

Hijacked session recommended and then installed poisoned software.

T0109 · Resource Development · Publish malicious artifact

Poisoned PyPI package plus later official-namespace poison.

T0151 · Execution · Installation scripts

Infostealer ran from the accepted PyPI install.

T0112 · Initial Access · Compromised token

GitHub OAuth tokens stolen from the developer environment.

T0169 · Lateral Movement · Push implants across repositories

Shai-Hulud spread across about 100 internal repositories.

T0200 · Impact · Proprietary data stolen

Secrets and product source were taken from those repos.

T0121 · Resource Development · Compromised legitimate artifact

A package in the company's official namespace was then poisoned.

Framework gaps noted

Sources