Am 20. August 2026 erschien eine kompromittierte Version der beliebten Rust-Crate arrayref auf crates.io. Version 0.3.10 fügte eine Abhängigkeit zu einem Typo-Squatting-Crate namens proc-macro1 hinzu, deren Build-Skript während der Kompilierung eines Projekts eine Remote-Binärdatei herunterlädt und ausführt. Der Code wird zur Build-Zeit ausgeführt, daher ist es bereits ausreichend, ein Projekt zu kompilieren, das die fehlerhaften Versionen nutzt, um ihn auszulösen. Das crates.io-Team hat die schädlichen Versionen seitdem entfernt.
Die echten Crates arrayref und append-only-vec werden von droundy verwaltet, dessen Konto vermutlich kompromittiert wurde. Die entsprechenden GitHub-Repositorys sind nicht mehr verfügbar. Ein separates Konto dtolney hat proc-macro1 veröffentlicht, das sehr ähnlich dem echten dtolnay-Konto von David Tolnay ist.
Die Nutzlast befindet sich im Build-Skript von proc-macro1 1.0.107. Es speichert seine Serveradresse als Base64-Fragmente und setzt sie zur Build-Zeit wieder zusammen, wodurch der Payload-Host hxxps://23[.]254[.]165[.]112:9089/ und die Befehls- und Kontrolladresse 23[.]254[.]165[.]112:443 entstehen. Das Skript ruft über eine TLS-Verbindung, die jedes Zertifikat ohne Validierung akzeptiert, eine architekturspezifische Binärdatei ab und führt sie anschließend vom Build getrennt aus.
Das Besitzer-Konto hat ältere Versionen von arrayref 0.3.5 bis 0.3.9 zurückgezogen, wodurch Entwickler zu der einzigen nicht zurückgezogenen Version, der schädlichen 0.3.10, geleitet wurden. arrayref wird weit weit verbreitet als transitive Abhängigkeit verwendet und liegt tief in gängigen Rust-Graphen durch tiny-skia, sctk-adwaita und winit.
Wichtige Entitäten: Personen: David Tolnay, droundy
Quelle: Hacker News · Zusammengefasst von HeadlinesBriefing