สรุปสั้น
นักวิจัยด้านความปลอดภัยจากบริษัท Tenet Security เปิดเผยการโจมตีรูปแบบใหม่ที่เรียกว่า Agentjacking ซึ่งใช้ประโยชน์จากจุดอ่อนเชิงสถาปัตยกรรมระหว่างระบบ Sentry (แพลตฟอร์มติดตามข้อผิดพลาดแบบโอเพนซอร์ส) กับ AI coding agent ที่เชื่อมต่อผ่าน Model Context Protocol (MCP) ผู้โจมตีสามารถฉีดคำสั่งอันตรายเข้าไปใน Sentry error event ปลอม แล้วหลอกให้ AI agent อย่าง Claude Code หรือ Cursor ตีความว่าเป็นคำแนะนำในการแก้ไขปัญหาที่ถูกต้อง จากนั้นจึงรันโค้ดมุ่งร้ายด้วยสิทธิ์เต็มของนักพัฒนาบนเครื่องของเหยื่อ
การทดสอบแบบควบคุมกับกว่า 100 องค์กรพบอัตราสำเร็จสูงถึง 85% และยังค้นพบว่ามีอย่างน้อย 2,388 องค์กรที่เปิดเผย DSN ที่สามารถถูกใช้โจมตีได้ การโจมตีนี้ไม่ต้องเจาะระบบเหยื่อ ไม่ถูกตรวจจับโดย EDR, WAF, IAM, VPN หรือ Firewall เพราะทุกการกระทำในห่วงโซ่การโจมตีเป็นการดำเนินการที่ได้รับอนุญาตตามปกติ Sentry ยอมรับปัญหาดังกล่าวแต่ระบุว่า “ไม่สามารถป้องกันได้ในเชิงเทคนิค” และเปิดใช้ content filter ระดับ global เพื่อบล็อก payload string เฉพาะเจาะจงเป็นการชั่วคราว
รายละเอียดข่าว
เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 12 มิถุนายน พ.ศ. 2569 ว่านักวิจัย 3 คนจากบริษัท Tenet Security ได้แก่ นาย Ron Bobrov นาย Barak Sternberg และนาย Nevo Poran ค้นพบการโจมตีประเภทใหม่ที่เรียกว่า Agentjacking ซึ่งใช้ประโยชน์จากช่องว่างเชิงสถาปัตยกรรมระหว่างระบบ event ingestion ของ Sentry (ที่รับ payload จากใครก็ได้ที่มี DSN) กับ Sentry MCP server (ที่ส่งข้อมูลกลับไปยัง AI agent ในฐานะ system output ที่เชื่อถือได้)
ปัญหาหลักอยู่ที่ implicit trust ที่เกิดจากการเชื่อมต่อกับบริการภายนอกผ่าน Model Context Protocol เนื่องจาก AI agent ไม่สามารถแยกแยะได้ว่า error event เกิดจากแอปพลิเคชันขัดข้องจริง หรือถูกฉีดเข้ามาโดยผู้โจมตี จึงเปิดทางให้เกิดการรันโค้ดตามอำเภอใจเมื่อ agent ประมวลผล response ดังกล่าว นักวิจัยระบุว่าพบ DSN ที่สามารถถูกฉีด payload ได้อย่างน้อย 2,388 องค์กร และทดสอบการโจมตีแบบควบคุมกับกว่า 100 องค์กร โดยมีอัตราสำเร็จ 85% กับ AI coding assistant ที่ใช้กันแพร่หลาย
วิธีการโจมตี
ห่วงโซ่การโจมตี Agentjacking มีขั้นตอนดังนี้ ขั้นแรก ผู้โจมตีค้นหา Sentry Data Source Name (DSN) ของเป้าหมาย ซึ่งเป็น credential แบบ write-only ที่เปิดเผยอยู่ในเว็บไซต์ จากนั้นส่ง error event อันตรายไปยัง Sentry ingest endpoint ผ่าน POST request โดยใช้ DSN ที่ค้นพบ
event ที่ถูกฉีดจะมี markdown ที่จัดรูปแบบมาอย่างดีในฟิลด์ message และ context key names เมื่อ Sentry MCP server ส่ง event นี้กลับไปยัง AI agent จะถูกแสดงผลเป็น structured content ที่มีลักษณะเหมือน system template ของ Sentry อย่างเป๊ะ เมื่อนักพัฒนาสั่ง AI coding agent ให้ “fix unresolved Sentry issues” agent จะดึงข้อมูลจาก Sentry ผ่าน MCP แล้วรับ event อันตราย จากนั้นรันโค้ดที่ผู้โจมตีกำหนดด้วยสิทธิ์เต็มของนักพัฒนา
การโจมตีนี้สามารถเข้าถึงข้อมูลสำคัญได้แก่ environment variables, Git credentials, private repository URLs และข้อมูลระบุตัวตนของนักพัฒนา โดยไม่ต้องอาศัยฟิชชิงหรือเจาะเซิร์ฟเวอร์ล่วงหน้า และหลบผ่าน EDR, WAF, IAM, VPN รวมถึง Firewall ได้ทั้งหมดเพราะทุกการกระทำถูกอนุญาตตามปกติ
ผลกระทบต่อไทย
องค์กรไทยที่ใช้ Sentry สำหรับตรวจจับข้อผิดพลาดในแอปพลิเคชัน ร่วมกับ AI coding agent อย่าง Claude Code หรือ Cursor อาจตกเป็นเป้าหมายของ Agentjacking ได้โดยตรง โดยเฉพาะทีมพัฒนาซอฟต์แวร์ที่เชื่อมต่อ Sentry กับ MCP server และใช้ AI agent ในกระบวนการทำงานประจำ เนื่องจาก DSN เปิดเผยอยู่ในโค้ด frontend ของเว็บไซต์ ผู้โจมตีสามารถค้นหา DSN ขององค์กรไทยได้ง่ายและเปิดโจมตีโดยไม่ต้องเจาะเข้าระบบ
คำแนะนำ
- ตรวจสอบว่า Sentry DSN ขององค์กรไม่ได้เปิดเผยในโค้ด frontend ที่เข้าถึงได้จากภายนอก และจำกัดการเข้าถึง DSN ให้เฉพาะระบบที่จำเป็น
- หากใช้ AI coding agent ร่วมกับ Sentry MCP server ให้ตรวจสอบ error event ด้วยตนเองก่อนสั่งให้ agent ดำเนินการแก้ไข
- พิจารณาเพิ่มขั้นตอนยืนยันจากมนุษย์ (human-in-the-loop) ก่อนที่ AI agent จะรันคำสั่งที่ได้จากแหล่งข้อมูลภายนอก
- ติดตามการอัปเดตจาก Sentry เกี่ยวกับมาตรการป้องกันเพิ่มเติม
