Một lỗ hổng lỗ hổng CVE nghiêm trọng đã được Cloudflare vá, cho phép một tài khoản khách hàng truy xuất dữ liệu còn sót lại trên ổ đĩa của khách hàng khác trên cùng một máy chủ vật lý trong nền tảng Containers. Vấn đề này cũng ảnh hưởng đến Cloudflare Sandboxes, một dịch vụ được xây dựng dựa trên Containers.
Chi tiết lỗ hổng Cross-Tenant Data Exposure
Lỗ hổng này, được Oren Yomtov từ Accomplish phát hiện và báo cáo có trách nhiệm qua chương trình Bug Bounty của Cloudflare vào ngày 4 tháng 9 năm 2026, liên quan đến việc dữ liệu từ các bản ghi cũ không được xóa hoàn toàn trên các khối lưu trữ chia sẻ.
Để khai thác lỗ hổng này, kẻ tấn công cần có tài khoản Workers Paid. Tuy nhiên, do cách Cloudflare tự động phân bổ tài nguyên, kẻ tấn công không thể chọn trước nạn nhân, máy chủ, hoặc khối lượng công việc cụ thể. Mặc dù vậy, điểm yếu này đã vượt qua ranh giới phân tách tenant quan trọng trong cơ sở hạ tầng điện toán đám mây chia sẻ.
Nguồn gốc của lỗ hổng
Lỗ hổng bắt nguồn từ lớp lưu trữ, không phải từ một trình thoát container hoặc máy ảo thông thường. Cloudflare chạy mọi Container trong một Firecracker microVM chuyên dụng và hiển thị ổ đĩa ghi được dưới dạng /dev/vdc. Phía sau ổ đĩa này, tính năng dm-thin provisioning của Linux sẽ phân bổ dung lượng lưu trữ vật lý theo các khối 64 KiB chỉ khi ổ đĩa ảo ghi vào một vùng chưa được ánh xạ.
Các nhóm lưu trữ chia sẻ bị ảnh hưởng của Cloudflare đã kích hoạt tùy chọn skip_block_zeroing. Khi ổ đĩa container bị xóa, các khối vật lý của nó sẽ được trả về một nhóm được sử dụng bởi nhiều tài khoản khách hàng. Do các phân bổ mới không được xóa, một khối được tái sử dụng có thể giữ lại các byte thuộc về chủ sở hữu trước đó cho đến khi các khu vực đó bị ghi đè.
Khai thác và Phát hiện Dữ liệu Rò rỉ
Các nhà nghiên cứu đã khai thác hành vi này bằng cách xác định các vùng được căn chỉnh 64 KiB đại diện cho không gian trống trong hệ thống tệp ext4 của máy khách và chỉ ghi 4 KiB vào mỗi vùng. Việc ghi nhỏ này đã buộc dm-thin phân bổ một khối 64 KiB được tái sử dụng trong khi chỉ thay thế 4 KiB.
Một lần đọc raw-device read sau đó có thể tiết lộ dữ liệu còn sót lại trong 60 KiB chưa được chạm tới – các byte mà container mới chưa từng ghi tới. Phân tích checksum đã cung cấp bằng chứng rằng các khối bị lộ đến từ các hệ thống tệp khác.
Trên sáu lần triển khai sản xuất, nhóm đã kiểm tra 5.614 khối thư mục có thể kiểm tra và không gán khối nào cho hệ thống tệp proof-of-concept của riêng họ, đồng thời xác định được 2.700 inode thư mục nước ngoài riêng biệt. Dữ liệu còn sót lại xuất hiện trên 18 trên 24 lượt triển khai và 20 trên 22 nút cơ bản trải rộng trên bốn lục địa.
Các định dạng được quan sát bao gồm cấu trúc thư mục, các trang cơ sở dữ liệu và các cơ sở dữ liệu SQLite hoàn chỉnh về mặt cấu trúc. Kỹ thuật này không cung cấp quyền truy cập vào các ổ đĩa đang được gắn kết, cho phép sửa đổi dữ liệu trực tiếp của khách hàng khác, hoặc ảnh hưởng đến tính khả dụng của khối lượng công việc.
Kết quả cũng phụ thuộc vào lịch trình và các khối đã giải phóng nào mà bộ cấp phát đã gán lại, làm cho việc trích xuất trở nên cơ hội thay vì nhắm mục tiêu. Ngay cả với những hạn chế đó, các phân mảnh bị lộ có khả năng chứa siêu dữ liệu hệ thống tệp, thông tin ứng dụng hoặc nội dung cơ sở dữ liệu nhạy cảm.
Biện pháp khắc phục của Cloudflare
Cloudflare đã thực hiện các bước sau để giải quyết lỗ hổng này. Đầu tiên, họ đã loại bỏ tùy chọn skip_block_zeroing trên toàn bộ hệ thống Containers, khôi phục hành vi mặc định của dm-thin là xóa các khối được phân bổ mới trước khi hiển thị chúng.
Vì thay đổi này không làm sạch các khối đã được ánh xạ vào các ổ đĩa đang chạy hoặc các bản chụp nhanh hình ảnh OCI đã lưu trong bộ nhớ cache, công ty cũng đã loại bỏ các ổ đĩa container hiện có, rút cạn các máy chủ, khởi động lại các máy ảo và xóa bộ nhớ cache hình ảnh. Các nhà nghiên cứu đã độc lập xác nhận rằng proof-of-concept của họ đã ngừng hoạt động.
Tiếp theo, Cloudflare đã phát triển các chữ ký phát hiện xung quanh mẫu I/O đĩa bất thường của cuộc tấn công: các thao tác ghi nhỏ 4 KiB theo sau là các thao tác đọc lớn hơn đáng kể từ các khối 64 KiB mới được phân bổ. Việc xem xét lịch sử của họ chỉ tìm thấy hoạt động liên quan đến các nhà nghiên cứu của Accomplish và các kỹ sư Cloudflare thực hiện xác thực được ủy quyền.
Việc khắc phục trên toàn bộ hệ thống không yêu cầu bất kỳ thay đổi cấu hình nào từ phía khách hàng. Tuy nhiên, các tổ chức nên đánh giá xem liệu các bí mật được xử lý bởi các khối lượng công việc bị ảnh hưởng có cần được xoay vòng phòng ngừa theo chính sách rủi ro của riêng họ hay không. Để tìm hiểu thêm về các biện pháp bảo mật của Cloudflare, bạn có thể tham khảo thông báo chính thức.










