Lỗ hổng nghiêm trọng AWS Bedrock AgentCore: Rò rỉ dữ liệu

Một lỗ hổng nghiêm trọng đã được phát hiện trong chế độ mạng “Sandbox” của AWS Bedrock AgentCore Code Interpreter. Lỗ hổng này, mặc dù được quảng cáo là cung cấp cơ chế cách ly mạng hoàn toàn, đã cho phép các truy vấn DNS ra bên ngoài. Điều này tạo điều kiện cho các tác nhân đe dọa thiết lập kênh điều khiển và kiểm soát (C2) bí mật, từ đó rò rỉ dữ liệu nhạy cảm.
AWS Bedrock AgentCore Code Interpreter là một dịch vụ được quản lý, cho phép các tác nhân AI và chatbot thực thi mã Python, JavaScript và shell theo yêu cầu của người dùng. Chức năng này tương tự cách trình thông dịch mã của ChatGPT xử lý các tệp đã tải lên và trả về kết quả phân tích.
Dịch vụ cung cấp ba chế độ mạng: Public, VPC và Sandbox. Chế độ Sandbox ban đầu được AWS mô tả là cung cấp “cơ chế cách ly hoàn toàn không có truy cập bên ngoài.”
Phân Tích Lỗ Hổng trong AWS Bedrock AgentCore Code Interpreter
Các nhà nghiên cứu tại BeyondTrust Phantom Labs đã phát hiện một lỗ hổng nghiêm trọng trong cơ chế cách ly được AWS cam kết. Mặc dù chế độ Sandbox đã chặn lưu lượng truy cập internet thông thường, các truy vấn bản ghi DNS A và AAAA vẫn được phép thoát ra khỏi sandbox một cách tự do.
Bỏ Qua Cơ Chế Cách Ly Mạng Sandbox
Để xác nhận hành vi này, các nhà nghiên cứu đã sử dụng Interactsh, một máy chủ kiểm tra out-of-band. Interactsh đã nhận được các truy vấn DNS từ bên trong Code Interpreter được cách ly, mặc dù phiên bản này đã được cấu hình không có quyền truy cập mạng.
Sơ suất này đã khiến toàn bộ mô hình cách ly trở nên không hiệu quả, tạo ra một lỗ hổng AWS Bedrock AgentCore cho phép bỏ qua các biện pháp bảo mật.
Thiết Lập Kênh Điều Khiển và Kiểm Soát (C2) Qua DNS
Phantom Labs không chỉ dừng lại ở việc xác định rò rỉ DNS mà còn xây dựng một giao thức DNS C2 hai chiều đầy đủ chức năng để chứng minh mức độ nghiêm trọng của lỗ hổng. Thông tin chi tiết về nghiên cứu có thể được tìm thấy tại báo cáo của BeyondTrust.
Các lệnh được gửi đến trình thông dịch sandboxed thông qua phản hồi bản ghi DNS A. Mỗi octet địa chỉ IP đã mã hóa các ký tự ASCII của các khối lệnh được mã hóa base64. Ví dụ:
whoami (base64) -> d2hvYW1pLệnh này sẽ được chia thành nhiều phản hồi DNS, với octet đầu tiên cho biết liệu còn nhiều khối dữ liệu hay không.
Việc rò rỉ dữ liệu AWS và xuất kết quả chảy theo hướng ngược lại. Trình thông dịch mã nhúng các kết quả lệnh được mã hóa base64 vào các truy vấn subdomain DNS, với tối đa 60 ký tự cho mỗi nhãn DNS. Các truy vấn này được thu thập bởi một phiên bản EC2 do kẻ tấn công kiểm soát, hoạt động như một máy chủ tên.
Cơ chế này đã cung cấp cho các nhà nghiên cứu một reverse shell tương tác đầy đủ, hoạt động hoàn toàn qua DNS, hoàn toàn bỏ qua cơ chế cách ly mạng mà chế độ Sandbox đã hứa hẹn. Đây là một hình thức remote code execution nguy hiểm, cho phép kiểm soát từ xa môi trường được bảo vệ.
Tác Động Nghiêm Trọng và Khai Thác Quyền IAM
Mức độ nguy hiểm của cuộc tấn công này tăng lên đáng kể vì các phiên bản Code Interpreter hoạt động với một vai trò IAM được chỉ định. Các nhà nghiên cứu đã chứng minh rằng thông qua DNS shell, họ có thể chạy các lệnh AWS CLI bằng thông tin xác thực IAM của trình thông dịch để liệt kê các bucket S3 và truy xuất các tệp nhạy cảm.
Những tệp này bao gồm thông tin nhận dạng cá nhân của khách hàng (PII), thông tin xác thực API và hồ sơ tài chính. Tất cả dữ liệu này đều bị rò rỉ dữ liệu AWS một cách âm thầm qua DNS.
Vai trò IAM mặc định của AgentCore Starter Toolkit, như được ghi lại trong kho lưu trữ mã nguồn mở của AWS, cấp các quyền truy cập rộng rãi, bao gồm:
- Truy cập đọc đầy đủ S3
- Truy cập đầy đủ DynamoDB
- Truy cập Secrets Manager không giới hạn
Đây là một vi phạm nghiêm trọng nguyên tắc đặc quyền tối thiểu (least privilege), tạo ra một lỗ hổng AWS Bedrock AgentCore dễ bị khai thác.
Diễn Biến Phát Hiện và Phản Hồi Từ AWS
BeyondTrust đã tiết lộ lỗ hổng một cách có trách nhiệm cho AWS thông qua HackerOne (Báo cáo #3323153) vào ngày 1 tháng 9 năm 2025. Ban đầu, lỗ hổng được chấm điểm CVSSv3 là 8.1, sau đó được sửa đổi xuống 7.5.
AWS đã tái tạo và thừa nhận vấn đề, triển khai bản vá ban đầu vào ngày 1 tháng 11 năm 2025, nhưng sau đó đã khôi phục bản vá này. Vào ngày 23 tháng 12 năm 2025, AWS thông báo rằng sẽ không có bản sửa lỗi vĩnh viễn nào được phát hành.
Thay vào đó, AWS đã cập nhật tài liệu để làm rõ rằng chế độ Sandbox cho phép phân giải DNS và khuyến nghị khách hàng di chuyển sang chế độ VPC để có cơ chế cách ly thực sự. AWS đã trao cho nhà nghiên cứu báo cáo một thẻ quà tặng trị giá 100 USD của AWS Gear Shop. Thông tin công khai về lỗ hổng này đã diễn ra vào ngày 16 tháng 3 năm 2026.
Mối Đe Dọa Mở Rộng Trên Bề Mặt Tấn Công AI
Lỗ hổng này giao thoa một cách nguy hiểm với bề mặt tấn công AI đang mở rộng. Kẻ tấn công không cần quyền truy cập shell trực tiếp để kích hoạt các cuộc tấn công khai thác. Thay vào đó, chúng có thể sử dụng các kỹ thuật như:
- Tấn công prompt injection
- Sự cố xâm nhập chuỗi cung ứng trong hơn 270 dependency bên thứ ba của Code Interpreter (bao gồm pandas và numpy)
- Thao túng mã Python được tạo bởi AI
Những yếu tố này có thể đóng vai trò là vector ban đầu cho cuộc tấn công. Kênh DNS C2 sau đó sẽ hoạt động như một cơ chế xuất dữ liệu dai dẳng.
Nghiên cứu liên quan trước đây của Sonrai Security cũng đã chứng minh khả năng rò rỉ thông tin xác thực từ các sandbox của AgentCore thông qua Metadata Service của Firecracker microVM. Điều này nhấn mạnh một mô hình rộng hơn về những điểm yếu trong cơ chế cách ly trong kiến trúc của AgentCore, cho thấy đây không phải là vấn đề cách ly đầu tiên được phát hiện trong nền tảng này.







