
Tấn công chuỗi cung ứng Rust phát tán mã độc qua crate bị xâm nhập
"A supply-chain attack compromised the Rust crates arrayref, internment, and append-only-vec by publishing malicious versions that added a typosquatted dependency, proc-macro1, whose build script downloaded and executed a remote payload during compilation. The affected releases were removed within about 86 to 107 minutes; no CVE was assigned, and users were advised to inspect local Cargo caches and pin arrayref to 0.3.9 or earlier."
Ảnh hưởng bảo mật cao do mã độc chạy ngay khi build, có thể tác động tới CI/CD và máy phát triển; cần kiểm tra cache Cargo và rà soát dependency ngay.
Có thể gây gián đoạn quy trình build, phát sinh công sức điều tra và làm sạch môi trường, và tạo rủi ro lan rộng trong các dự án phụ thuộc vào arrayref.
Một chiến dịch tấn công chuỗi cung ứng đã làm lộ các phiên bản độc hại của ba crate Rust phổ biến trên crates.io: arrayref 0.3.10, internment 0.8.7 và append-only-vec 0.1.9. Theo báo cáo, kẻ tấn công đã lợi dụng tài khoản maintainer bị xâm nhập để phát hành bản mới có thêm phụ thuộc giả mạo proc-macro1; script build của phụ thuộc này tải và thực thi payload từ xa ngay trong quá trình biên dịch.
Điểm đáng chú ý là mã độc nằm trong build script, nên chỉ cần dự án resolve và build phiên bản bị ảnh hưởng là payload có thể chạy, không cần gọi trực tiếp thư viện. Các bản phát hành độc hại đã bị gỡ trong khoảng 86–107 phút sau khi xuất hiện. Hiện chưa có CVE, và Rust Security Response Team cho biết chưa thấy bằng chứng các phiên bản này được sử dụng rộng rãi.
Khuyến nghị cho đội kỹ thuật: kiểm tra ~/.cargo/registry/cache để tìm các gói đã tải, rà soát dependency tree có dùng arrayref và các crate liên quan, đồng thời pin arrayref về 0.3.9 hoặc cũ hơn nếu cần. Với môi trường CI/CD, nên làm sạch cache, khóa phiên bản phụ thuộc và theo dõi các cảnh báo từ RustSec trước khi build lại.