Rust Crates.io Supply Chain Attack (arrayref, internment, append-only-vec)
First seen Aug 21, 2026 · Updated Aug 21, 2026
A compromised maintainer account was used to publish malicious versions of three popular Rust crates (arrayref, internment, append-only-vec), collectively downloaded over 245 million times. The malicious releases introduced a typosquatted dependency whose build script downloaded and executed a remote payload at compile time, enabling arbitrary code execution on any system that built the affected packages.
Technical Analysis
The attackers gained control of a maintainer account on crates.io and pushed new versions (arrayref 0.3.10, internment 0.8.7, append-only-vec 0.1.9) that added a typosquatted dependency crate. This dependency contained a custom build.rs script executed automatically by Cargo during compilation, which fetched and ran a remote payload, achieving code execution on the build host before any application logic ran. Because build scripts execute with the full privileges of the build user and often have network access and access to environment variables/secrets (CI tokens, API keys), this vector is particularly dangerous in CI/CD and automated build pipelines. AI agent systems and developer tooling that use Rust-based components, agent frameworks written in or depending on Rust crates, or automated coding/build agents that pull and compile dependencies without verification could be silently compromised, potentially exfiltrating API keys, model credentials, or injecting backdoors into agent binaries during build automation.
Affected Systems
Rust projects depending on arrayref 0.3.10, internment 0.8.7, or append-only-vec 0.1.9 pulled from crates.io; CI/CD pipelines and developer machines that compiled these versions during the exposure window
Indicators of Compromise
- arrayref 0.3.10
- internment 0.8.7
- append-only-vec 0.1.9
- Typosquatted dependency crate (name not fully disclosed in source)
- Malicious build.rs script executing remote payload download
Remediation Steps
- 1
Audit dependency versions
Check all Cargo.lock files and CI build logs for use of arrayref 0.3.10, internment 0.8.7, or append-only-vec 0.1.9 and roll back to known-safe prior versions.
- 2
Rotate exposed credentials
Rotate any API keys, tokens, or secrets present on build hosts or CI environments that compiled the affected crate versions during the exposure window.
- 3
Enable build script sandboxing
Use tools like cargo-vet, cargo-crev, or sandboxed CI builders to restrict network access and privileges for build.rs execution.
- 4
Pin and verify dependencies
Pin crate versions with checksums, enable Cargo's lockfile verification, and review new dependency additions/updates before upgrading.
- 5
Monitor build infrastructure
Review logs for unexpected outbound network connections or executed binaries during compilation across affected timeframes.
Industries Most Exposed
Respond to this threat
Pro subscribers get a full AI-generated incident-response playbook for this threat — detection, containment, eradication, and recovery steps — plus an unlimited AI Threat Advisor for questions about your environment.