arrayref: вредонос, который сработал раньше, чем кто-то нажал «запустить»
Крошечная библиотека на Rust, которую тысячи проектов подключают не задумываясь, вышла в отравленной версии. Самое неприятное: код срабатывал во время сборки — до того, как программу, в которую он попал, вообще хоть раз запустили.
20 августа 2026 года проект Rust опубликовал предупреждение об атаке на цепочку поставок в crates.io — витрине, где живут библиотеки для Rust. Задействованы были два пакета: arrayref, маленький вспомогательный кусок кода, который сидит глубоко в списках зависимостей у массы софта, и proc-macro1 — имя, отличающееся одним символом от proc-macro2, а тот есть почти во всём, что пишут на Rust. Компания SafeDep разобрала отравленную версию и нашла полезную нагрузку в шаге сборки.
Вот на чём стоит притормозить. Обычно вредоносный код ждёт, пока вы запустите программу. Этот работал, пока программу собирали. Разработчик набирает команду на компиляцию, уходит за кофе, и к моменту возвращения машина уже выполнила чужой код. Ничего не запускали. Ничего не нажимали. Спусковым крючком стала сама сборка.