สรุปสั้น
หากสั่งให้ AI agent สรุปรีวิวบนหน้าสินค้า รีวิวที่ถูกวางยาเพียงชิ้นเดียวสามารถทำให้ agent กดปุ่ม “Buy Now” แทนได้ หรือหากสั่งให้ผู้ช่วยเขียนโค้ดนำแพตช์ของผู้ดูแลโปรเจกต์จากเธรด GitHub มาใช้ คอมเมนต์ปลอมสามารถหลอกให้ agent รันคำสั่งของคนแปลกหน้าบนเครื่องได้ ทั้งสองกรณีไม่ได้จี้เอาภารกิจของ agent ไป แต่เพียงบิดเบือนข้อเท็จจริงที่ agent เชื่อถือ แล้วปล่อยให้มันทำงานที่ถูกสั่งต่อไปบนข้อมูลที่ผู้โจมตีวางไว้ นี่คือรูปแบบของการโจมตีคลาสใหม่ที่ถูกอธิบายไว้ในเอกสารวิจัยซึ่งเผยแพร่เมื่อวันที่ 6 กรกฎาคม โดยนักวิจัยจาก Seoul National University, University of Illinois Urbana-Champaign และบริษัท Largosoft
นักวิจัยเรียกเทคนิคนี้ว่า Agent Data Injection หรือ ADI โดยอินพุตของผู้โจมตีจะถูกแต่งให้ดูเหมือนข้อมูลที่ agent เชื่อถืออยู่แล้ว เช่น ชื่อผู้ส่งหรือ ID ของปุ่ม จึงเล็ดลอดผ่านการป้องกันส่วนใหญ่ที่สร้างมาเพื่อหยุด prompt injection ได้ ช่องว่างเกิดจากวิธีที่ agent อ่านข้อมูล ซึ่งรับเข้ามาสองแบบคือคำสั่ง (สิ่งที่ผู้ใช้และนักพัฒนาบอกให้ทำ) และข้อมูล (ทุกอย่างที่ดึงเข้ามาระหว่างทำงาน เช่น อีเมล หน้าเว็บ หรือคอมเมนต์) การโจมตีแบบ prompt injection ดั้งเดิมจะซ่อนคำสั่งไว้ในข้อมูล ซึ่งการป้องกันสมัยใหม่ตรวจจับได้ดีแล้ว แต่ ADI ทำงานลึกลงไปอีกชั้นบนข้อเท็จจริงเล็ก ๆ ที่ agent เชื่อถืออย่างเงียบ ๆ
รายละเอียดข่าว
เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 16 กรกฎาคม พ.ศ. 2569 ว่าวิธีการเบื้องหลัง ADI คือสิ่งที่นักวิจัยเรียกว่า probabilistic delimiter injection โดย agent จะห่อข้อมูลของตนด้วยเครื่องหมายวรรคตอนที่บอกว่าส่วนหนึ่งจบตรงไหนและอีกส่วนเริ่มตรงไหน เช่น เครื่องหมายคำพูด วงเล็บปีกกา แท็ก วงเล็บ และการขึ้นบรรทัดใหม่ เครื่องหมายเหล่านี้คือสิ่งที่โมเดลใช้แยกแยะฟิลด์ที่เชื่อถือได้อย่างชื่อผู้ส่ง ออกจากเนื้อหาที่ไม่น่าเชื่อถืออย่างเนื้อความ ปัญหาคือโปรแกรมทั่วไปอ่านเครื่องหมายวรรคตอนตามกฎที่เข้มงวด แต่โมเดลภาษาอ่านด้วยการเดา ผู้โจมตีจึงสามารถโปรยอักขระที่ดูเหมือนเครื่องหมายวรรคตอนลงในฟิลด์ที่ตนควบคุม แล้วโมเดลมักจะอ่านมันเป็นโครงสร้างจริงที่ไม่เคยมีอยู่ มองเห็นเป็นอีเมลเพิ่ม ปุ่มเพิ่ม หรือผลลัพธ์จากเครื่องมือเพิ่มขึ้นมา
จุดที่ทำให้หยุดยากคือเครื่องหมายวรรคตอนปลอมไม่จำเป็นต้องถูกต้องด้วยซ้ำ ในการทดสอบ เครื่องหมายคำพูดที่ถูก escape เครื่องหมายคำพูดโค้ง หรือแม้แต่เครื่องหมายดอลลาร์ ก็ผ่านตัวจริงและหลอกโมเดลได้สำเร็จ นักวิจัยสร้างการโจมตีที่ใช้งานได้จริงสามแบบบนเครื่องมือที่วางจำหน่ายจริง ได้แก่ บน web agent (Claude in Chrome, Antigravity ของ Google และ Nanobrowser) รีวิวสินค้าที่วางยาจะนำ ID ของปุ่มจริงมาใช้ซ้ำ ทำให้ agent ตั้งใจคลิก “Read More” แต่กลับคลิก “Buy Now” สั่งซื้อสินค้าที่ผู้ใช้ไม่เคยสั่ง ส่วนบนผู้ช่วยเขียนโค้ด (Claude Code, Codex ของ OpenAI และ Gemini CLI) คอมเมนต์ GitHub จะปลอมบรรทัดผู้เขียนให้ดูเหมือนผู้ดูแลโปรเจกต์ ทำให้ agent รันคำสั่งของผู้โจมตีบนเครื่องนักพัฒนาหากนักพัฒนาอนุมัติสิ่งที่ดูเหมือนขั้นตอนปกติ และแบบที่สาม pull request อันตรายจะปลอมบันทึกการตรวจสอบที่ agent ไม่เคยรัน ทำให้ผลลัพธ์ที่ดูสะอาดปรากฏในประวัติ agent จึงตัดสินว่าโค้ดปลอดภัยและดำเนินการ merge
รายละเอียดการโจมตี
โมเดลทุกตัวที่ทดสอบพิสูจน์แล้วว่ามีช่องโหว่ ทั้ง GPT-5.2 และ GPT-5-mini ของ OpenAI, Claude Opus 4.5 และ Sonnet 4.5 ของ Anthropic ตลอดจน Gemini 3 Pro และ Flash ของ Google โดยทั้ง 6 ตัว โจมตีสำเร็จบนข้อมูลที่มีโครงสร้าง 31 ถึง 43 เปอร์เซ็นต์ และบนข้อมูลหน้าเว็บตั้งแต่หนึ่งในสามของความพยายามไปจนถึงทุกครั้ง ที่สำคัญเมื่อทดสอบกับการป้องกัน agent ที่สร้างมาเฉพาะ พบว่าการโจมตีแบบลักลอบส่งคำสั่งดั้งเดิมถูกบล็อกเกือบทั้งหมดด้วยอัตราสำเร็จเกือบศูนย์ ขณะที่ ADI ยังสำเร็จได้ถึง 50 เปอร์เซ็นต์ เพราะการป้องกันเหล่านั้นถูกสร้างมาเพื่อการโจมตีอีกแบบหนึ่ง เครื่องมือส่วนใหญ่มีการถามก่อนทำสิ่งเสี่ยง เช่น Claude in Chrome ถามก่อนคลิก และผู้ช่วยเขียนโค้ดถามก่อนรันคำสั่ง แต่ก็ช่วยได้ไม่มาก เพราะกล่องยืนยันการคลิกบอกเพียงว่า agent ต้องการคลิกองค์ประกอบ ไม่ได้บอกว่าคลิกอันไหนหรือทำไม
สิ่งที่หยุดการโจมตีได้คือเบราว์เซอร์ Atlas ของ ChatGPT ที่รอดพ้นจากการโจมตีคลิก เพราะติดป้ายแต่ละองค์ประกอบบนหน้าด้วย ID แบบสุ่มที่เดาไม่ได้ แทนที่จะเป็นตัวนับแบบเรียงลำดับ ผู้โจมตีจึงปลอมให้ตรงกันไม่ได้ นักวิจัยพบว่าแนวคิดเดียวกันคือการเพิ่มแท็กสุ่มสั้น ๆ ต่อท้ายชื่อฟิลด์ ช่วยลดการโจมตีลงราวครึ่งหนึ่ง จากประมาณ 49 เปอร์เซ็นต์เหลือ 29 เปอร์เซ็นต์ ทั้งนี้นักวิจัยระบุว่าเป็นเพียงการโจมตีเชิงพิสูจน์แนวคิด และยังไม่มีรายงานว่าถูกนำไปใช้จริง โดยได้แจ้งผู้ผลิตที่ได้รับผลกระทบก่อนเผยแพร่ ซึ่ง OpenAI, Google และ Anthropic รับทราบรายงานแล้ว ทั้งนี้การโจมตีคลาสนี้ต่อยอดจากปัญหาความเชื่อถือที่เคยปรากฏใน EchoLeak (CVE-2025-32711) ช่องโหว่ของ Microsoft 365 Copilot เมื่อเดือนมิถุนายน 2568
ผลกระทบต่อไทย
ADI เป็นความเสี่ยงที่สำคัญต่อองค์กรและนักพัฒนาไทยที่กำลังนำ AI agent มาใช้เพิ่มขึ้นอย่างรวดเร็ว ทั้งผู้ช่วยเขียนโค้ดอย่าง Claude Code, Codex, Gemini CLI และ web agent ต่าง ๆ เพราะการโจมตีนี้ไม่ได้อาศัยการลักลอบส่งคำสั่งที่ระบบป้องกันสมัยใหม่ตรวจจับได้ แต่ปลอมข้อเท็จจริงที่ agent เชื่อถืออยู่แล้ว ทำให้ระบบป้องกัน prompt injection ที่องค์กรลงทุนไปอาจไม่เพียงพอ นักพัฒนาไทยที่ใช้ AI agent ประมวลผลเนื้อหาจากแหล่งที่คนแปลกหน้าแก้ไขได้ เช่น หน้าเว็บ คอมเมนต์ GitHub หรือ pull request จึงเสี่ยงถูกหลอกให้รันคำสั่งอันตรายบนเครื่องหรือสั่งซื้อ/ทำธุรกรรมที่ไม่ตั้งใจ ยิ่งการอนุมัติของ agent ดูเหมือนขั้นตอนปกติ ผู้ใช้ก็ยิ่งแยกแยะการอนุมัติจริงจากการอนุมัติที่ถูกปลอมแปลงได้ยาก
คำแนะนำ
องค์กรและนักพัฒนาที่ใช้ AI agent ควรตระหนักว่าการป้องกัน prompt injection แบบเดิมไม่เพียงพอต่อ ADI ควรใช้เทคนิคที่ติดป้ายองค์ประกอบและฟิลด์ข้อมูลด้วย ID หรือแท็กแบบสุ่มที่เดาไม่ได้ เพื่อป้องกันการปลอมโครงสร้างข้อมูล ดังที่เบราว์เซอร์ Atlas ใช้ได้ผล ควรจำกัดสิทธิ์ให้ agent ทำงานเฉพาะในขอบเขตที่จำเป็น และเพิ่มการตรวจสอบที่แสดงรายละเอียดชัดเจนว่า agent กำลังจะทำอะไรกับอะไร ไม่ใช่เพียงถามยืนยันแบบกว้าง ๆ นักพัฒนาควรระมัดระวังเป็นพิเศษเมื่อให้ agent ประมวลผลเนื้อหาจากแหล่งที่บุคคลภายนอกแก้ไขได้ และไม่ควรอนุมัติการรันคำสั่งหรือ merge โค้ดโดยอัตโนมัติ ควรตรวจสอบแหล่งที่มาและความถูกต้องของข้อมูลที่ agent อ้างอิงก่อนอนุมัติทุกครั้ง
