Bỏ qua tới nội dung chính
Quay lại tin tức

Máy chủ đã hoạt động. Chính sách bảo mật của nó thì chưa.

Dev.to AI· Lav Kumar Vishwakarma· 13/8/2026opensource

CVE-2026-16584 trong Máy chủ AWS API MCP đã mang lại những bài học về an ninh MCP, các hệ thống mở khi lỗi (fail-open) và các biện pháp kiểm soát đặt giữa các tác nhân AI với hạ tầng thực tế. Ngày 23/7/2026, AWS đã công bố khuyến nghị bảo mật về một lỗ hổng do người viết báo cáo trong Máy chủ AWS API MCP. Lỗ hổng này được gán mã CVE-2026-16584, xếp loại Cao và có điểm CVSS v4.0 là 7.3. Tên người viết xuất hiện trong phần xác nhận là nhà nghiên cứu độc lập đã báo cáo lỗ hổng. Đây là một khoảnh khắc có ý nghĩa. Người viết đã dành phần lớn sự nghiệp để xây dựng các hệ thống phụ trợ (backend), và gần đây đã tập trung nghiên cứu sâu về lĩnh vực an ninh.

CVE-2026-16584 trong Máy chủ AWS API MCP đã cho thấy những vấn đề về bảo mật MCP, các hệ thống mở khi lỗi (fail-open) và các biện pháp kiểm soát giữa tác nhân AI với cơ sở hạ tầng thực tế. Ngày 23/7/2026, AWS đã công bố một khuyến cáo bảo mật về lỗ hổng mà tôi đã báo cáo trong Máy chủ AWS API MCP. Lỗ hổng này được gán mã CVE-2026-16584, xếp hạng Cao và có điểm CVSS v4.0 là 7.3. Tên của tôi xuất hiện trong phần xác nhận là nhà nghiên cứu độc lập đã báo cáo lỗ hổng này. Đó là một khoảnh khắc có ý nghĩa đối với tôi. Tôi đã dành phần lớn sự nghiệp của mình để xây dựng các hệ thống backend, và gần đây tôi đã xem xét kỹ lưỡng các ranh giới bảo mật xung quanh các tác nhân AI và máy chủ MCP. Tuy nhiên, tôi không muốn bài viết này trở thành một lời ca ngợi chiến thắng. Phần thú vị nằm ở chính sự cố, bởi vì nó dễ hiểu, dễ bị đánh giá thấp và có liên quan rộng rãi hơn nhiều so với một dự án mã nguồn mở. Dưới đây là phiên bản tóm tắt: Máy chủ có thể khởi động ngay cả khi dữ liệu cần thiết để thực thi chính sách bảo mật của nó không tải được. Khi điều đó xảy ra, việc kiểm tra chính sách có thể bị bỏ qua trong suốt vòng đời của tiến trình. Máy chủ đang chạy. Chính sách bảo mật thì không. Lưu ý về công bố: Bài viết này chỉ sử dụng thông tin có sẵn trong khuyến cáo bảo mật công khai của AWS. Tôi không công bố bằng chứng khái niệm (proof of concept), hướng dẫn tái tạo từng bước, thông tin liên lạc riêng tư, nhật ký nội bộ hoặc các chi tiết mà AWS chưa công khai. Máy chủ AWS API MCP làm gì? Giao thức Ngữ cảnh Mô hình (Model Context Protocol), hay MCP, cung cấp cho các trợ lý AI một cách tiêu chuẩn để kết nối với các công cụ và hệ thống bên ngoài. Máy chủ AWS API MCP cho phép một trợ lý tương tác với các dịch vụ AWS thông qua các lệnh AWS CLI. Điều đó hữu ích, nhưng nó cũng đặt máy chủ vào một ranh giới nhạy cảm. Một mô hình không còn chỉ tạo ra văn bản. Nó có thể yêu cầu một hành động chống lại cơ sở hạ tầng đám mây thực tế. Máy chủ bao gồm một chính sách bảo mật tùy chọn, do người dùng cấu hình. Các quản trị viên có thể sử dụng chính sách đó để từ chối hoặc kiểm soát các hoạt động AWS được chọn trước khi chúng được thực thi. Trong hoạt động bình thường, luồng diễn ra đơn giản: Máy chủ tải dữ liệu cần thiết để thực thi chính sách đã cấu hình. Một yêu cầu công cụ đến. Hoạt động AWS được yêu cầu được kiểm tra theo chính sách. Hoạt động được cho phép, bị từ chối hoặc được gửi qua một cổng kiểm soát. CVE-2026-16584 đã ảnh hưởng đến bước đầu tiên, sau đó làm thay đổi những gì xảy ra ở bước thứ ba. Điều gì đã xảy ra sai sót Máy chủ AWS API MCP đã tải dữ liệu thực thi chính sách của nó trong quá trình khởi động. Theo khuyến cáo, nếu quá trình khởi tạo đó thất bại, tiến trình có thể tiếp tục chạy mà không có dữ liệu thực thi. Khi một yêu cầu đến sau đó, việc kiểm tra chính sách có thể bị bỏ qua. Khi một chính sách bảo mật được cấu hình mà không bật chế độ đóng khi lỗi (fail-closed), các quy tắc từ chối và cổng kiểm soát đã cấu hình không được tham khảo. Quan trọng hơn, điều này không giới hạn ở một yêu cầu duy nhất. Máy chủ có thể duy trì ở trạng thái yếu hơn đó trong suốt vòng đời của tiến trình. Giai đoạn Hành vi dự kiến Hành vi dễ bị tổn thương Khởi động Dữ liệu chính sách tải Dữ liệu chính sách không khả dụng Sẵn sàng Máy chủ sẵn sàng sau khi các biện pháp kiểm soát của nó sẵn sàng Máy chủ tiếp tục chạy Yêu cầu Chính sách đánh giá hoạt động AWS Việc đánh giá chính sách bị bỏ qua Kết quả Các quy tắc từ chối hoặc cổng kiểm soát được áp dụng Lớp chính sách đó không hạn chế hoạt động Các lỗi khởi tạo xảy ra trong môi trường sản xuất. Một phụ thuộc hết thời gian. Một tệp bị định dạng sai. Quyền không đúng. Kết nối bị suy giảm. Không có điều nào trong số đó là bất thường. Câu hỏi bảo mật là ứng dụng sẽ làm gì sau khi xảy ra lỗi. Trong trường hợp này, việc thiếu trạng thái thực thi có thể dẫn đến hành vi cho phép. Đây là một vấn đề bảo mật fail-open (mở khi lỗi) kinh điển: một cơ chế kiểm soát trở nên không khả dụng, nhưng hoạt động được bảo vệ vẫn có thể tiếp tục. Cơ chế bảo vệ không bị vô hiệu hóa trong quá trình yêu cầu. Nó đã không tồn tại trước khi yêu cầu đến. **Tại sao điều này quan trọng đối với bảo mật tác nhân AI** Khi thảo luận về bảo mật AI, cuộc trò chuyện nhanh chóng chuyển sang các vấn đề như prompt injection (tiêm lệnh), thao túng mô hình, jailbreak (vượt rào) và mô tả công cụ độc hại. Đó là những vấn đề có thật. Tuy nhiên, lỗ hổng này không phải do mô hình thực hiện điều gì đó thông minh. Đây là một lỗi bảo mật backend thông thường tại ranh giới thực thi AI. Sự khác biệt đó rất quan trọng. Các máy chủ MCP nằm giữa ý định của tác nhân và một hành động bên ngoài. Nếu một kiểm tra quyền, cổng phê duyệt, ranh giới người thuê, danh sách công cụ được phép hoặc sandbox (môi trường biệt lập) bị thiếu, mô hình không cần phải phá vỡ cơ chế kiểm soát đó. Ứng dụng có thể đã hoạt động mà không có nó. Đây là lý do tại sao bảo mật AI tác nhân không thể được đơn giản hóa thành các prompt (lệnh) tốt hơn. Toàn bộ đường dẫn thực thi đều quan trọng: Tác nhân sử dụng thông tin xác thực nào? Những hoạt động nào được phơi bày dưới dạng công cụ? Quyền hạn được thực thi ở đâu? Điều gì xảy ra khi việc thực thi không thể khởi tạo? Máy chủ có duy trì trạng thái hoạt động bình thường khi một thành phần phụ thuộc bảo mật không hoạt động? Hệ thống có thể phân biệt giữa "chính sách bị vô hiệu hóa" và "chính sách không tải được" không? Đây là những câu hỏi về kiến trúc phần mềm, không phải câu hỏi về mô hình ngôn ngữ. **Lỗ hổng không bỏ qua điều gì** Điều quan trọng là phải mô tả tác động một cách chính xác. CVE-2026-16584 đã bỏ qua lớp chính sách bảo mật tùy chọn trong điều kiện máy chủ MCP bị ảnh hưởng. Nó không loại bỏ các quyền AWS IAM khỏi thông tin xác thực được cấu hình cho máy chủ. Nếu những thông tin xác thực đó chỉ cho phép quyền đọc đối với một tập hợp nhỏ tài nguyên, IAM vẫn tiếp tục thực thi ranh giới đó. Nếu thông tin xác thực có phạm vi rộng, lớp chính sách MCP bị thiếu đã để lại một tập hợp hành động lớn hơn nhiều có sẵn. Do đó, rủi ro thực tế phụ thuộc rất nhiều vào phạm vi thông tin xác thực. Đây là một ví dụ thực tế về lý do tại sao nguyên tắc đặc quyền tối thiểu (least privilege) của AWS IAM lại quan trọng. Đặc quyền tối thiểu không chỉ nhằm ngăn chặn người dùng được ủy quyền thực hiện quá nhiều. Nó còn hạn chế thiệt hại khi một lớp bảo mật khác gặp lỗi theo cách không mong muốn. Một chính sách MCP có thể bổ sung các hạn chế hữu ích theo ngữ cảnh cụ thể, nhưng nó không nên là ranh giới duy nhất giữa một tác nhân AI và một hoạt động đám mây có tác động lớn. **Phần khó chịu: "None" có nghĩa là gì?** Thông báo tư vấn ánh xạ vấn đề này tới CWE-455: Non-exit on Failed Initialization (Không thoát khi khởi tạo thất bại). Tên gọi nghe có vẻ khô khan, nhưng

Nguồn tin: Dev.to AI — Tác giả: Lav Kumar Vishwakarma. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.