Poisoned Rust Crates Execute Malware at Build Time: 245 Million Downloads Hit in Supply-Chain Attack
Developers running cargo build may have unknowingly executed malicious code that downloaded remote payloads, installed persistent backdoors, and began stealing browser-saved passwords. The attack, discovered on August 20, targeted three popular Rust crates on crates.io: arrayref 0.3.10, internment 0.8.7, and append-only-vec 0.1.9.
All three releases added a dependency on the typosquatted package proc-macro1 instead of the legitimate proc-macro2. Because the malicious crate copied legitimate code, compilation succeeded without errors. The hidden build script reassembled a C2 address from base64 fragments, disabled TLS verification, and downloaded platform-specific payloads to /tmp/rust-setup on Linux/macOS or via hidden PowerShell/VBScript on Windows.
Scale of the arrayref compromise
arrayref has recorded 245,385,500 cumulative downloads, including 53.9 million in the last 90 days. It sits in the dependency chain of widely used crates such as winit → sctk-adwaita → tiny-skia → arrayref. Attackers yanked versions 0.3.5 through 0.3.9 within the same minute the malicious 0.3.10 was published, forcing Cargo to recommend the poisoned release.
North Korean infrastructure overlap
Analysis by Wiz revealed infrastructure reuse with earlier npm and axios supply-chain attacks attributed by Microsoft to Sapphire Sleet and by Google Threat Intelligence to MIDNIGHT NEPTUNE. The C2 server at 23.254.165.112 and domain hwsrv-798836.hostwindsdns.com match prior campaigns. Second-stage malware queries Chrome, Brave, and Edge SQLite login databases and persists via systemd user services, LaunchAgents, or registry Run keys.
Systemic weaknesses in Cargo
- No mandatory publish cooldown; the global-min-publish-age PR remained unmerged at the time of the attack.
- Single-owner accounts without enforced 2FA; the sole maintainer of arrayref registered in 2009.
- Abuse of the yank mechanism to remove legitimate versions and steer users toward the malicious release.
RustSec and crates.io administrators removed the malicious versions within 86–107 minutes. Developers are advised to inspect ~/.cargo/registry/cache for the poisoned crate files, verify absence of /tmp/rust-setup and related scripts, and pin arrayref to version 0.3.9 or earlier.
Related articles
Vendor Responsibility in Open Source: Licensing Obligations Exposed by Sonatype Nexus Changes
The article examines how vendors building products on copyleft open source projects like Nexus Repository OSS inherit significant legal and security responsibilities under licenses such as EPL 1.0. Sonatype's February 2025 shift from regular OSS binary releases to a limited Community Edition forces downstream vendors to handle their own builds, patch porting, and compliance disclosures. This change highlights the second part of copyleft licenses that outlines obligations for distributors, including revealing modifications and assuming liability for the final product. Security implications arise because critical vulnerabilities in the upstream project must now be tracked and patched by the vendor, with delays creating measurable supply chain risks. The piece provides a practical checklist for buyers to assess licensing hygiene, SBOM availability, and vulnerability response times in any open source-based solution.
PhantomSub Campaign Deploys 101 Malicious npm Packages to Hijack WhatsApp Accounts for Unauthorized Channel Subscriptions
Researchers at OX Security uncovered 101 malicious npm packages tied to the PhantomSub campaign that abuse connected WhatsApp accounts to subscribe users to promotional channels without consent. The packages disguise themselves as modified versions of the open-source Baileys library used for WhatsApp automation. Attackers rely on authenticated sessions rather than simple package installation, allowing them to control subscriptions through lists stored on GitHub, in plaintext, or as encoded identifiers. The packages have accumulated roughly 490,000 downloads, including 116,000 in the past 30 days, though the exact number of compromised accounts remains unknown. As of 28 September, npm had removed only 16 of the identified packages. The operation ultimately benefits channels selling bots, game resources, accounts, and promotion services by inflating subscriber counts while disabling notifications to hide the activity.
AI Model Hallucinations Fuel Slopsquatting Attacks on PyPI and npm Registries
Researchers identified 139 package names consistently hallucinated by five different AI models across Python and JavaScript ecosystems. Seven of these names are already registered on PyPI and npm, including one previously used to distribute malware. The attack vector, termed slopsquatting, allows attackers to register AI-suggested package names and execute code with developer privileges during installation. One package, metro-evaluator, contained malicious code removed by npm in December 2025, while another empty package css-color-stop began receiving downloads after the list was published. Real projects such as odf and lusid now occupy names that AI models recommend, causing developers to install unrelated software. Studies show hallucination rates between 4.62% and 21.7% depending on the model, with commercial models performing better than open-source ones. The findings highlight risks when AI coding agents execute dependency installation commands without human verification.
Sapper Revives Minefield to Deliver Accurate SBOM-Based Vulnerability Impact Reports for Cyber Resilience Act Compliance
Developer Perruer has forked the archived BitBom project Minefield into a new open-source tool called Sapper, fixing critical bugs in dependency graph construction and vulnerability matching. The original Minefield used roaring bitmaps and Tarjan's algorithm to build transitive dependency caches from SBOMs in O(n + m) time, but it incorrectly interpreted SPDX edge directions from protobom 0.6, creating false cycles and massively inflating dependent package counts. Additional fixes addressed SQLite memory database pooling issues, OSV range sorting errors with Go pseudo-versions and ECOSYSTEM ecosystems, and slow OSV ingestion by adding a package name index. Sapper now produces prioritized reports using CISA KEV and EPSS scores, showing exact shortest paths from vulnerable packages to root products while respecting OpenVEX statements. The tool maintains full air-gapped operation and supports CycloneDX 1.3–1.7 and SPDX 2.x formats. These improvements directly help organizations meet the 24-hour notification requirements under the EU Cyber Resilience Act for actively exploited vulnerabilities.