’n Rust-krat het wanware tydens samestelling uitgevoer. 86 minute.
’n Vier-makro Rust-krat met 260 miljoen aflaaie voeg een afhanklikheid by, en `cargo build` voer ’n vreemdeling se binêre lêer op jou masjien uit.
’n Vier-makro Rust-krat met 260 miljoen aflaaie voeg een afhanklikheid by, en `cargo build` voer ’n vreemdeling se binêre lêer op jou masjien uit. 20 Augustus 2026: arrayref 0.3.10 land op crates.io, afhanklik van proc-macro1 — nie proc-macro2, die regte een nie — wie se bou-skrip ’n loonvrag aflaai, dit in /tmp/rust-setup plaas en dit losgekoppel laat loop terwyl jou projek saamstel. Die skoon weergawes word verwyder sodat Cargo se eie waarskuwing jou na die vergiftigde een lei. 86 minute later word dit verwyder.
Lees die geskrewe uitgawe (Engels) ↗
Wat hierdie video dek
- cargo build voer 'n vreemdeling se binêre lêer uit
- Die kwitansies: Rust Blog, SafeDep, Hacker News
- Hierdie is The Daily Diff, postmortem
- Tydlyn: 02:11 staging → 07:15 gepubliseer → 08:41 verwyder
- Meganisme: build.rs, geen sandbox, die yank-lokmiddel
Vertaalde transkripsie
Vertaal uit die oorspronklike Engelse vertelling. Beskikbare klank en onderskrifte word deur YouTube beheer.
cargo build voer 'n vreemdeling se binêre lêer uit
0:00 'n Vier-makro Rust-krat met 'n kwart miljard aflaaie voeg een by afhanklikheid, en cargo build voer 'n vreemdeling se binêre lêer op jou masjien uit. 20 Augustus 2026. arrayref 0.3.10 land op crates.io afhanklik van proc-macro1. Nie proc-macro2, die regte een nie: een syfer verkeerd, en sy bou-skrip voer 'n loonvrag uit terwyl jou projek saamstel. Rust se sekuriteitspan verwyder dit 86 minute later.
Die kwitansies: Rust Blog, SafeDep, Hacker News
0:22 SafeDep publiseer die afbreek. Hacker News: 554 punte. Hoe dit gebeur, waarom Cargo dit toelaat, en wie die skuld kry. Hierdie is The Daily Diff, postmortem. Twee vm, UTC.
Hierdie is The Daily Diff, postmortem
0:33 'n Rekening genaamd d-tolney, een letter van David Tolnay af, wat die helfte van Rust onderhou, publiseer proc-macro1 1.0.106: ware
Tydlyn: 02:11 staging → 07:15 gepubliseer → 08:41 verwyder
0:41 proc-macro2, hernoem. Staging. 07:11. Weergawe 1.0.107 voeg 'n bou-skrip by, plus base64, TLS en 'n HTTP-kliënt. Vir 'n token-ontleder. 07:15. Die onderhouer se rekening herpubliseer arrayref as 0.3.10 en verwyder elke ouer weergawe. Cargo druk: oorweeg om op te dateer na 'n weergawe wat nie verwyder is nie. Die enigste een wat oorbly, is die vergiftigde een.
1:02 Die waarskuwing is die lokmiddel. Dieselfde minuut, 'n sekuriteitsfirma rapporteer dit aan Rust. 07:54, 'n RustSec-kwessie. 08:29, 'n kwessie op die repo; die aanvaller antwoord met 0.3.11 en 'n tweede kwaadwillige afhanklikheid. 08:41, verwyder. Sestien-en-tagtig minute. Hoekom? Een: Cargo bou elke verklaarde afhanklikheid, genoem of nie. Een manifeslyn is genoeg.
1:21 Twee: 'n bou-skrip loop op jou masjien, as jy, met jou SSH-sleutels en cargo
Meganisme: build.rs, geen sandbox, die yank-lokmiddel
1:26 token, voordat jou kode saamstel. Geen sandbox, volgens ontwerp: dit is hoe krate C-biblioteke vind. Drie: binne is ware proc-macro2, so die bou slaag. Die loonvrag: 'n TLS-kliënt wat enige sertifikaat vertrou, haal 'n binêre lêer af, plaas dit in /tmp/rust-setup en laat dit losgekoppel loop. Op Windows omseil dit wscript om Cargo se taakobjek te ontsnap; 'n bron opmerking sê so. Die tweede fase, volgens die RustSec-draad: 'n afstandstoegangsinstrument gerig op
1:52 blaaiers en kripto-beursies. Poëties, aangesien arrayref se grootste gebruikers secp256k1 en Solana insluit. git blame. Cargo se model, vyf-en-vyftig persent: afhanklikhede voer kode op jou masjien uit tydens samestelling, geen sandbox, en die yank-waarskuwing het mense na die
git blame — die verdeling
2:07 gif gelei. Een rekening, dertig: een geloofsbrief herpubliseer 'n krat 'n kwart van 'n miljard aflaaie vertrou. Die syfer een, vyftien: een toetsaanslag van Rust se mees betroubare krat af, en niemand lees die boom nie. Ontploffingsradius: 2,285 aflaaie in 86 minute. Minder as tien persent van die verkeer, omdat die meeste slotlêers 0.3.9 gehou het. crates.io sê geen bewyse van gebruik nie.
Ontploffingsradius: 2,285 aflaaie
2:27 Twee mense op die RustSec-draad stem nie saam nie; een vind 'n systemd-diens. Op Hacker News gaan die top-draad nie oor die wanware nie. Dit is die kratbladsy, waar 0.3.10 nou nooit bestaan het nie. Uitspraak, postmortem: NEEDS REVIEW. Sestien-en-tagtig minute om te verwyder, 'n selfde-dag blogpos, die rekening gesluit: daardie deel is SHIP IT. Maar die kratbladsy wys niks het gebeur nie, cargo audit bly stil oor 'n gekasde
Uitspraak + die Maandaglyn
2:48 kopie, en bou-skripte loop steeds as jy. Maandag: voer die Rust blog se vind-opdrag uit, en behandel 'n yank-waarskuwing as 'n vraag, nie 'n instruksie nie. Stuur vir my die insident waaroor jy nog nie mag praat nie, in die kommentaar, of by the daily diff dot dev. En dit is die diff vir vandag. Ek is Niko van Axrisi. Smelt verantwoordelik saam.
Bronne
- Rust Blog, "Supply chain attack on arrayref" (security-response, Aug 20, 2026)blog.rust-lang.org
- RUSTSEC-2026-0260 (arrayref)github.com
- RustSec issue #3161 (the original report, IOCs, victims)github.com
- SafeDep technical analysissafedep.io
- GitHub issue on the repo (0.3.11 spotted)github.com
- crates.iocrates.io
- Hacker News (554 points)news.ycombinator.com
- BleepingComputerwww.bleepingcomputer.com



