# Rust biblioteka pokrenula malver tokom kompilacije. 86 minuta.

Published: 2026-09-15

Rust biblioteka sa četiri makroa i 260 miliona preuzimanja dodaje jednu zavisnost, a \`cargo build\` pokreće binarnu datoteku nepoznate osobe na vašoj mašini. 20. avgust 2026: arrayref 0.3.10 stiže na crates.io, zaviseći od proc-macro1 – ne proc-macro2, onog pravog – čija skripta za izgradnju preuzima maliciozni teret, smešta ga u /tmp/rust-setup i pokreće ga u pozadini dok se vaš projekat kompajlira. Čiste verzije su povučene (yanked) tako da vas Cargo-ovo sopstveno upozorenje vodi ka zaraženoj. 86 minuta kasnije je izbrisana.

Canonical: https://thedailydiff.dev/sr-Latn/video/2026-09-15-arrayref-proc-macro/

## Šta ovaj video pokriva

- cargo build pokreće binarnu datoteku nepoznate osobe
- Dokazi: Rust Blog, SafeDep, Hacker News
- Ovo je The Daily Diff, postmortem
- Vremenska linija: 02:11 staging → 07:15 objavljeno → 08:41 izbrisano
- Mehanizam: build.rs, bez sandboxa, "yank" mamac

## Poglavlja

- 0:00 cargo build pokreće binarnu datoteku nepoznate osobe
- 0:20 Dokazi: Rust Blog, SafeDep, Hacker News
- 0:33 Ovo je The Daily Diff, postmortem
- 0:40 Vremenska linija: 02:11 staging → 07:15 objavljeno → 08:41 izbrisano
- 1:25 Mehanizam: build.rs, bez sandboxa, "yank" mamac
- 2:05 git blame — podela
- 2:25 Opseg štete: 2.285 preuzimanja
- 2:45 Presuda + ponedeljna linija

## Preveden transkript

Prevedeno sa originalne engleske naracije. Dostupan audio i titlovi kontrolisani su od strane YouTube-a.

### cargo build pokreće binarnu datoteku nepoznate osobe

0:00 Rust biblioteka sa četiri makroa i četvrt milijarde preuzimanja dodaje jednu zavisnost, a cargo build pokreće binarnu datoteku nepoznate osobe na vašoj mašini. 20. avgust 2026. arrayref 0.3.10 stiže na crates.io, zaviseći od proc-macro1. Ne proc-macro2, onaj pravi: jedna cifra razlike, a njegova skripta za izgradnju pokreće maliciozni teret dok se vaš projekat kompajlira. Rust-ov sigurnosni tim briše je 86 minuta kasnije.

### Dokazi: Rust Blog, SafeDep, Hacker News

0:22 SafeDep objavljuje analizu. Hacker News: 554 poena. Kako se to dešava, zašto Cargo to dozvoljava i ko je kriv. Ovo je The Daily Diff, postmortem. Dva ujutru, UTC.

### Ovo je The Daily Diff, postmortem

0:33 Nalog pod imenom d-tolney, jedna slovna greška od David Tolnay-a, koji održava pola Rust-a, objavljuje proc-macro1 1.0.106: pravi

### Vremenska linija: 02:11 staging → 07:15 objavljeno → 08:41 izbrisano

0:41 proc-macro2, preimenovan. Staging. 07:11. Verzija 1.0.107 dodaje skriptu za izgradnju, plus base64, TLS i HTTP klijent. Za parser tokena. 07:15. Nalog održavaoca ponovo objavljuje arrayref kao 0.3.10 i povlači (yanks) svaku stariju verziju. Cargo ispisuje: razmislite o ažuriranju na verziju koja nije povučena. Jedina preostala je ona zaražena.

1:02 Upozorenje je mamac. Istog minuta, sigurnosna firma to prijavljuje Rust-u. 07:54, RustSec problem. 08:29, problem na repozitorijumu; napadač odgovara sa 0.3.11 i drugom malicioznom zavisnošću. 08:41, izbrisano. Osamdeset šest minuta. Zašto? Prvo: Cargo izgrađuje svaku deklarisanu zavisnost, pozvanu ili ne. Jedan red u manifestu je dovoljan.

1:21 Drugo: skripta za izgradnju se pokreće na vašoj mašini, kao vi, sa vašim SSH ključevima i cargo

### Mehanizam: build.rs, bez sandboxa, "yank" mamac

1:26 tokenom, pre nego što se vaš kod kompajlira. Bez sandboxa, po dizajnu: tako biblioteke pronalaze C biblioteke. Treće: unutra je pravi proc-macro2, tako da je izgradnja uspešna. Teret: TLS klijent koji veruje bilo kom sertifikatu preuzima binarnu datoteku, smešta je u /tmp/rust-setup i pokreće je u pozadini. Na Windows-u, zaobilazi se kroz wscript da bi se izbegao Cargo-ov "job object"; izvor komentar to potvrđuje. Druga faza, prema RustSec niti: alat za daljinski pristup namenjen

1:52 preglednicima i kripto novčanicima. Poetično, budući da najveći korisnici arrayref-a uključuju secp256k1 i Solana. git blame. Cargo-ov model, pedeset pet posto: zavisnosti pokreću kod na vašoj mašini tokom kompilacije, bez sandboxa, a upozorenje o povlačenju (yank) je vodilo ljude ka

### git blame — podela

2:07 otrovu. Jedan nalog, trideset: jedan akreditiv ponovo objavljuje biblioteku kojoj četvrt milijarde preuzimanja veruje. Cifra jedan, petnaest: jedan pritisak na taster od najpouzdanije Rust biblioteke, i niko ne čita stablo. Opseg štete: 2.285 preuzimanja za 86 minuta. Manje od deset posto saobraćaja, jer je većina lockfile-ova držala 0.3.9. crates.io kaže da nema dokaza o korišćenju.

### Opseg štete: 2.285 preuzimanja

2:27 Dve osobe na RustSec niti se ne slažu; jedna pronalazi systemd servis. Na Hacker News-u, glavna nit nije o malveru. To je stranica biblioteke, gde 0.3.10 sada nikada nije ni postojala. Presuda, postmortem: NEEDS REVIEW. Osamdeset šest minuta za brisanje, blog post istog dana, nalog zaključan: taj deo je SHIP IT. Ali stranica biblioteke pokazuje da se ništa nije dogodilo, cargo audit ostaje nem na keširanoj

### Presuda + ponedeljna linija

2:48 kopiji, a skripte za izgradnju se i dalje pokreću kao vi. Ponedeljak: pokrenite komandu za pronalaženje sa Rust bloga i tretirajte upozorenje o povlačenju (yank) kao pitanje, a ne kao instrukciju. Pošaljite mi incident o kojem još uvek ne smete da pričate, u komentarima, ili na the daily diff dot dev. I to je diff za danas. Ja sam Niko iz Axrisi. Spajajte odgovorno.

## Izvori

- [Rust Blog, "Supply chain attack on arrayref" (security-response, Aug 20, 2026)](https://blog.rust-lang.org/2026/08/20/supply-chain-attack-on-arrayref/) — blog.rust-lang.org
- [RUSTSEC-2026-0260 (arrayref)](https://github.com/rustsec/advisory-db/blob/main/crates/arrayref/RUSTSEC-2026-0260.md) — github.com
- [RustSec issue #3161 (the original report, IOCs, victims)](https://github.com/rustsec/advisory-db/issues/3161) — github.com
- [SafeDep technical analysis](https://safedep.io/arrayref-proc-macro1-rust-build-time-malware/) — safedep.io
- [GitHub issue on the repo (0.3.11 spotted)](https://github.com/droundy/arrayref/issues/33) — github.com
- [crates.io](https://crates.io/crates/arrayref) — crates.io
- [Hacker News (554 points)](https://news.ycombinator.com/item?id=49374269) — news.ycombinator.com
- [BleepingComputer](https://www.bleepingcomputer.com/news/security/hackers-poison-arrayref-rust-crate-to-push-infostealer-malware/) — www.bleepingcomputer.com
