Lỗ hổng nhân Linux “ẩn mình” gần 10 năm bị phanh phui: script chỉ 732 byte có thể giành quyền root, hàng loạt bản phân phối lớn đều bị ảnh hưởng
Các nhà nghiên cứu bảo mật vừa công bố một lỗ hổng leo thang đặc quyền nghiêm trọng tồn tại trong nhân Linux suốt gần 10 năm, mang mã CVE-2026-31431 (tên mã “
Copy Fail”).
Kẻ tấn công chỉ cần một đoạn script Python dài 732 byte là có thể giành quyền root trên các bản phân phối Linux phổ biến như Ubuntu, Amazon Linux, Red Hat Enterprise Linux và SUSE Linux Enterprise.
Khác với nhiều lỗ hổng leo thang đặc quyền khác trên Linux vốn yêu cầu điều kiện race condition, phải khớp chính xác phiên bản kernel hoặc cần payload được biên dịch sẵn, “Copy Fail” là một lỗi logic tuyến tính đơn thuần, khiến việc khai thác trở nên cực kỳ dễ dàng.
Nguyên nhân gốc rễ của lỗ hổng đến từ sự kết hợp của ba yếu tố: giao diện mã hóa AF_ALG, lời gọi hệ thống splice(), và một tối ưu hóa mã được đưa vào từ năm 2017.
Sự kết hợp này cho phép kẻ tấn công ghi dữ liệu độc hại vào bộ nhớ đệm trang (page cache) của kernel, từ đó chỉnh sửa các file nhị phân đáng tin cậy như /usr/bin/su.
Phạm vi ảnh hưởng của lỗ hổng bao phủ toàn bộ các phiên bản kernel được xây dựng từ năm 2017 cho đến trước khi bản vá được phát hành. Các nhà nghiên cứu đã thử nghiệm trên Linux 6.12, 6.17 và 6.18, và đều thành công trong việc giành quyền root shell trên cả bốn bản phân phối phổ biến.
Đáng chú ý, do cơ chế page cache của Linux được chia sẻ giữa các container, một container hoặc Pod bị xâm nhập có thể lợi dụng lỗ hổng này để sửa đổi file cache của hệ thống host, từ đó thực hiện container escape — tạo ra mối đe dọa nghiêm trọng đối với môi trường cloud-native và kiến trúc đa tenant.
Quá trình phát hiện lỗ hổng cũng rất đáng chú ý: nhà nghiên cứu Taeyang Lee sau khi xác định được bề mặt tấn công đã sử dụng công cụ kiểm toán có hỗ trợ AI để quét, và chỉ mất khoảng 1 giờ để tìm ra lỗ hổng mức độ nghiêm trọng cao nhất này.
Bản vá (commit a664bf3d603d) đã được phát hành, với biện pháp chính là hoàn tác đoạn mã tối ưu hóa từ năm 2017. Trong trường hợp chưa thể cập nhật kernel, quản trị viên có thể giảm thiểu rủi ro bằng cách vô hiệu hóa module nhân algif_aead hoặc cấu hình chính sách seccomp để chặn việc tạo socket AF_ALG.
Tham khảo