VietTechiesHIỂU CÔNG NGHỆ. MỞ GÓC NHÌN.
☰ Chuyên mục

Rust cảnh báo cache GitHub Actions có thể làm lộ secret khi chạy Miri

22/09/2026 · VietTechies · Biên tập

Rust cảnh báo cache GitHub Actions có thể làm lộ secret khi chạy Miri
Ảnh minh họa do AI tạo.

Nhóm Phản hồi Bảo mật Rust cảnh báo việc chạy Miri trong GitHub Actions có thể làm lộ secret nếu workflow lưu thư mục target/ vào cache. Hiện Miri lưu các biến môi trường tại đây để duy trì trạng thái liên quan đến quá trình build giữa các lần chạy; vì vậy, các tệp đã cache có thể bị pull request đọc.

Cơ chế lộ dữ liệu

Rủi ro chỉ xảy ra khi nhiều điều kiện cùng tồn tại. Dự án phải chạy cargo miri trong CI, cung cấp secret cho bước này hoặc môi trường của toàn bộ job, lưu target/ bằng cơ chế như actions/cache hay swatinem/rust-cache, đồng thời cho phép workflow của pull request đọc cache. Trong một cấu hình phổ biến, các lần chạy trên nhánh chính có thể ghi vào cache còn pull request chỉ có thể đọc.

Nhóm bảo mật cho biết người có quyền mở pull request có thể lợi dụng một lần chạy CI sau đó để trích xuất dữ liệu từ thư mục target/ đã cache. Các commit bị ghi đè và nhật ký CI cũ cũng có thể biến mất theo thời gian, khiến hoạt động này khó điều tra hơn.

Dự án nào cần kiểm tra

Các dự án đáp ứng những điều kiện trên nên kiểm tra workflow của mình. Nhóm Rust cho biết đợt quét hệ sinh thái đã phát hiện một repository gặp vấn đề và bảy repository khác chưa có dấu hiệu dễ bị ảnh hưởng nhưng vẫn cần thận trọng. Nhóm cũng lưu ý kết quả quét có thể chưa đầy đủ và khuyến nghị maintainer tự đánh giá cấu hình của mình.

Biện pháp giảm thiểu và bản vá

Các lựa chọn trước mắt gồm tắt cache cho job bị ảnh hưởng, chỉ cung cấp secret cho những bước không gọi Miri hoặc tạm thời tắt Miri. Sau khi thay đổi workflow, maintainer nên xóa cache liên quan và cân nhắc thay mới các secret có thể đã bị lộ.

Bản vá được lên kế hoạch sẽ giới hạn các biến môi trường mà Miri lưu giữ ở nhóm CARGO_*, ngoại trừ CARGO_*_TOKEN, cùng với OUT_DIR. Nhóm cho biết thay đổi này dự kiến xuất hiện trong bản nightly ngày 22/09/2026, nhưng có thể chưa có trong kênh nightly khi thông báo được công bố.

Cảnh báo không chỉ liên quan đến Miri. Nhóm Rust cho biết Cargo, Miri và Rust không đảm bảo các biến môi trường sẽ không bao giờ bị sao chép vào các tệp build, còn build script cũng có thể ghi dữ liệu môi trường xuống đĩa. Vì vậy, các workflow cho phép ghi cache công khai trong khi secret đang hiện diện cần được đánh giá riêng.

Ảnh minh họa do AI tạo.

Nguồn: GitHub Actions leaking secrets when Miri output is cached