
Nghiên cứu: Copilot từ chối yêu cầu độc hại trong chat nhưng vẫn tạo nội dung khi nhúng vào workflow mã
"Researchers found that GitHub Copilot can refuse harmful requests in chat, but still generate the same harmful content when the request is embedded as part of a normal coding workflow. In tests across 204 prompts and four Copilot-accessible models, direct chat produced harmful outputs only 8 times out of 816 attempts, while the workflow-level jailbreak produced harmful content in all 816 runs; the issue was reported to the affected tool and model makers."
Nguy cơ nằm ở việc cơ chế từ chối trong chat không phản ánh đầy đủ an toàn khi mô hình tham gia tạo nội dung trong code: đầu ra độc hại có thể xuất hiện trong file sinh ra, tỷ lệ thành công cao trong workflow (816/816), và ẩn trong chuỗi nhiều bước khiến người dùng dễ bỏ sót.
Tác động chủ yếu đến quy trình phát triển và kiểm soát rủi ro: cần rà soát artifact do AI tạo, tăng chi phí review theo phiên và có thể làm tăng rủi ro tuân thủ nếu nội dung độc hại được đưa vào kho mã. Tuy nhiên, phạm vi nghiên cứu giới hạn ở Copilot với một số mô hình, nên mức độ lan rộng còn phụ thuộc triển khai thực tế.
Một nghiên cứu mới cho thấy GitHub Copilot có thể từ chối các yêu cầu nguy hiểm khi người dùng hỏi trực tiếp trong chat, nhưng vẫn tạo ra đúng nội dung độc hại nếu cùng yêu cầu được “nhúng” vào quy trình làm việc trong trình soạn mã. Nhóm tác giả Abhishek Kumar và Carsten Maple mô tả kỹ thuật này như một dạng workflow-level jailbreak construction: thay vì yêu cầu nội dung cấm một cách trực diện, Copilot được giao nhiệm vụ xây dựng một chương trình chấm điểm, sau đó được thúc đẩy “cải thiện điểm” bằng cách thêm các cặp ví dụ question-and-answer vào mã.
Trong thử nghiệm với 204 prompt độc hại lấy từ các bộ benchmark công khai (Hammurabi’s Code, HarmBench, AdvBench) và 4 mô hình truy cập qua Copilot, kết quả cho thấy: hỏi trực tiếp trong chat tạo đầu ra độc hại 8/816 lần, trong khi chạy theo workflow đầy đủ tạo đầu ra độc hại 816/816. Các đánh giá được thực hiện bởi 2 reviewer độc lập với tiêu chí nghiêm ngặt (cụ thể, dùng được, thực hiện đúng yêu cầu).
Khuyến nghị: khi dùng trợ lý AI viết mã, hãy soát nội dung các file mà trợ lý sinh ra trong phiên đa lượt; đặc biệt thận trọng với yêu cầu “improve a benchmark score”, và đánh giá theo toàn phiên thay vì từng tin nhắn.