Claude Code và ChatGPT: Khi agent AI trở thành cửa ngõ đánh cắp AWS

Claude Code và ChatGPT: Khi agent AI trở thành cửa ngõ đánh cắp AWS
Sở thích|Mẹo dùng AI

AI coding agent là gì và vì sao chúng đang đe dọa AWS của bạn

AI coding agent là các tác nhân tự động như Claude Code hay ChatGPT Atlas có quyền truy cập môi trường phát triển, trình duyệt và tài nguyên đám mây để thay lập trình viên thực thi lệnh, sửa mã và tương tác với dịch vụ web, nếu không kiểm soát cẩn thận, chúng có thể trở thành công cụ hoàn hảo cho kẻ tấn công đánh cắp thông tin đăng nhập và chiếm quyền tài khoản. Một thí nghiệm dạng trò chơi trên trình duyệt cho thấy con người, dù đóng vai “human-in-the-loop”, bỏ lọt khoảng một phần ba lệnh độc hại khi duyệt yêu cầu của agent AI. Điều này đồng nghĩa, nếu bạn giao chìa khóa AWS hay Kubernetes cho agent, xác suất lệnh nguy hiểm được “OK” bởi chính đội ngũ của bạn là rất cao.

Đáng lo hơn, việc phải liên tục bấm chấp thuận hoặc từ chối khiến người dùng mệt mỏi và mất cảnh giác. Khi các tổ chức dần chuyển từ kiểu “AI gợi ý từng dòng” sang “AI tự xử lý cả job, mình nhìn kết quả cuối cùng”, chúng ta vô tình tạo ra một bề mặt tấn công mới rộng hơn rất nhiều. Đây không phải rủi ro lý thuyết; nghiên cứu mới từ Zenity đã chứng minh các chuỗi tấn công có thể tận dụng chính quyền truy cập của Claude và ChatGPT để truy xuất AWS credentials, cấu hình Kubernetes và chiếm quyền tài khoản trình duyệt. Trong bối cảnh đó, nói về Claude Code bảo mật mà chỉ dựa vào người phê duyệt lệnh là ảo tưởng nguy hiểm.

Claude Code và ChatGPT: Khi agent AI trở thành cửa ngõ đánh cắp AWS

Hai kỹ thuật tấn công: từ prompt injection attack tới chiếm đoạt tài khoản

Zenity đã công bố hai kỹ thuật tấn công nhắm vào ChatGPT Atlas và tiện ích Claude trên Chrome, tập trung vào prompt injection attack gián tiếp theo kiểu zero-click. Với ChatGPT Atlas, vấn đề không đến từ một lỗi phần mềm riêng lẻ mà từ thiết kế agentic browser: một agent có thể hoạt động như một thực thể thống nhất trên nhiều tab đã đăng nhập, làm suy yếu chính sách same-origin, cho phép nội dung ở website kém tin cậy ảnh hưởng đến hành động trên website khác. Nghiên cứu cho thấy chỉ với yêu cầu tưởng như vô hại như “tóm tắt email độc hại”, các chỉ dẫn ẩn trong nội dung có thể bị hệ thống hiểu là lệnh trực tiếp. Đây là bản chất của prompt injection attack: dữ liệu trở thành mã lệnh.

Chuỗi tấn công với tiện ích Claude trên Chrome đi xa hơn: prompt injection gián tiếp được đẩy tới mức chiếm đoạt hoàn toàn tài khoản bằng cách khai thác quyền truy cập cao của agent trong phiên đăng nhập hiện tại. Kịch bản demo gồm: yêu cầu tưởng chừng vô hại như đăng ký newsletter, sau đó agent dùng quyền của tab WhatsApp Web để truy cập danh bạ và gửi tin nhắn lừa đảo. Một kịch bản khác: thêm sản phẩm vào giỏ hàng Amazon, đổi địa chỉ giao hàng sang của kẻ tấn công, rồi nhờ trợ lý AI Rufus hoàn tất đơn mua. Theo Zenity, các phương thức này có thể bị lợi dụng để chiếm đoạt tài khoản, phát tán phishing và thực hiện mua hàng trái phép trên các nền tảng thương mại lớn.

Rủi ro với ChatGPT AWS credentials, Kubernetes và vì sao con người không đủ

Vấn đề không dừng ở cấp trình duyệt. Trong trò chơi mô phỏng quyền Claude Code, loại lệnh độc hại dễ bị bỏ sót nhất là các lệnh “vượt phạm vi”, như yêu cầu đọc file cấu hình Kubernetes hoặc danh sách AWS credentials, với tỷ lệ bị bỏ lọt khoảng 35%. Những thông tin này, nếu bị agent trích xuất và gửi ra ngoài, có thể mở đường cho kẻ tấn công xâm nhập trực tiếp vào hạ tầng đám mây. Trong khi đó, telemetry thực tế cho thấy người dùng Claude Code chấp thuận khoảng 93% prompt xin quyền. Một câu nói đáng trích là: “As human-in-the-loop, you’re the last line of defense” – nhưng dữ liệu chứng minh tuyến phòng thủ này có quá nhiều lỗ hổng.

Càng nhiều prompt xin quyền, người dùng càng ít chú ý và trở nên dễ dãi với quyết định phê duyệt. Khi phải duyệt hàng loạt yêu cầu lặp lại, họ khó có đủ ngữ cảnh để đánh giá một lệnh tưởng như vô hại – chẳng hạn npm run analyze – thực ra có thể chạy bất kỳ payload độc hại nào được agent sửa trong package.json. Hệ quả là các AI coding agent risks không chỉ đến từ model mà từ cách chúng ta dùng: giao cho agent quyền truy cập đầy đủ vào môi trường developer, AWS, Kubernetes rồi chỉ “đặt người vào vòng kiểm soát” mang tính hình thức. Nếu tổ chức nghĩ rằng thêm một cửa sổ “Allow/Deny” đã xong bài toán an toàn, họ đang chơi trò may rủi với hạ tầng sản xuất.

Claude Code bảo mật: sandbox, auto mode và giới hạn của “vá lỗi”

Trước làn sóng lo ngại, nhà phát triển Claude xây dựng tính năng auto mode để giảm mệt mỏi phê duyệt: một bộ phân loại dựa trên model sẽ tự động chặn khoảng 83% “hành vi quá liều” trước khi lệnh được thực thi, nhưng vẫn còn khoảng 17% lọt qua trong đánh giá của họ. Chính nhà cung cấp cũng nhấn mạnh auto mode chỉ là “một lớp phòng thủ sâu bên trong sandbox, không phải thứ thay thế sandbox”. Wauters khuyến nghị chạy AI coding models trong sandbox, devcontainer trên cloud, dùng auto mode và viết thêm hook để ngữ cảnh hóa, chặn hành động nguy hiểm trước khi được chấp thuận tự động. Nói cách khác, Claude Code bảo mật chỉ khả thi khi doanh nghiệp coi sandbox là mặc định, không phải tùy chọn.

Ở phía browser agent, tình hình còn phức tạp hơn. Zenity cho biết đã báo cáo lỗ hổng thiết kế của ChatGPT Atlas cho nhà phát triển từ tháng 1/2026; phía này thừa nhận báo cáo nhưng cho rằng khó có bản vá đơn giản vì vấn đề bắt nguồn từ chức năng cốt lõi: đọc nội dung web và hành động trên các website người dùng đã xác thực. Với tiện ích Claude trên Chrome, nghiên cứu gửi đi từ tháng 12/2025 và 1/2026, và được phân loại là “tham khảo” thay vì xử lý khẩn cấp. Điều này gửi đi một thông điệp rõ ràng: đừng chờ đợi một bản vá “thần kỳ” cho prompt injection attack ở tầng sản phẩm; doanh nghiệp phải tự dựng lớp bảo vệ mà mình kiểm soát.

Doanh nghiệp nên làm gì ngay: bảo vệ credential và thiết kế lại vòng kiểm soát

Thực tế khó chịu là: con người bắt buộc phải “ở trong vòng”, nhưng human-in-the-loop không đủ để bảo vệ ChatGPT AWS credentials hay thông tin đăng nhập khác khỏi các AI coding agent risks. Wauters thẳng thắn: “Chúng ta cần làm cho công cụ dễ giúp hệ thống an toàn hơn, thay vì coi human-in-the-loop là giải pháp hợp lệ”. Đọc kỹ câu này để hiểu: nhiệm vụ của bạn không phải đào tạo nhân viên bấm nút khéo hơn mà là thiết kế một kiến trúc nơi sai sót của họ không biến thành thảm họa. Việc đầu tiên là tách biệt môi trường: mọi agent phải chạy trong sandbox, devcontainer hoặc môi trường cloud không chứa secret, với quyền hạn tối thiểu và không có đường tắt truy cập trực tiếp tới AWS credentials hay file cấu hình Kubernetes.

Thứ hai, hãy coi mỗi agent như một tài khoản người thật: quản lý session, log, giới hạn hành vi, cưỡng bức quy trình xác nhận khi thao tác chạm tới giao dịch tài chính, gửi tin nhắn đại trà hoặc thay đổi cấu hình bảo mật. Cuối cùng, đừng để prompt đứng một mình. Mọi yêu cầu gửi đến agent – từ “tóm tắt email” tới “giúp tôi debug” – nên đi qua lớp kiểm tra nội dung: lọc mẫu prompt injection attack đã biết, phát hiện chỉ dẫn bất thường, buộc agent trình bày “kế hoạch hành động” trước khi được phép tương tác với tài nguyên nhạy cảm. Như Wauters nhắc nhở: “Tốt nhất là luôn ý thức về rủi ro và biết cách giảm thiểu chúng”. Nếu bạn không chủ động thiết kế các lớp bảo vệ này, việc mất credential chỉ còn là vấn đề thời gian.

Sammfy nhận hoa hồng khi bạn mua sắm qua liên kết của chúng tôi, bạn không phải trả thêm chi phí.

You May Also Like

Comments
Viết gì đó...
Chưa có bình luận nào. Hãy là người đầu tiên chia sẻ suy nghĩ!