ข้ามไปยังเนื้อหา
"Agentjacking": ยิง error ปลอมเข้า Sentry แล้วสั่ง AI coding agent ให้รันโค้ดของแฮกเกอร์ — Claude Code, Cursor, Codex โดนหมด สำเร็จ 85%
ช่องโหว่

"Agentjacking": ยิง error ปลอมเข้า Sentry แล้วสั่ง AI coding agent ให้รันโค้ดของแฮกเกอร์ — Claude Code, Cursor, Codex โดนหมด สำเร็จ 85%

อ่าน 6 นาที ที่มา: Cloud Security Alliance

นี่คือข่าวความปลอดภัยที่นักพัฒนาที่ใช้ AI coding agent ทุกคนควรอ่าน — เพราะมันโจมตีเครื่องมือที่คุณใช้ทุกวันโดยตรง Tenet Security (เผยแพร่ผ่าน Cloud Security Alliance) เปิดเผยช่องโหว่คลาสใหม่ชื่อ “agentjacking” ที่อาศัยจุดอ่อนของ “ความไว้ใจโดยปริยาย” ระหว่าง AI agent กับข้อมูลที่ดึงมาผ่าน Model Context Protocol (MCP)

หลักการน่าขนลุกในความเรียบง่ายของมัน: แฮกเกอร์ไม่ต้องเจาะเครื่องคุณ แค่ ยิง error event ปลอมที่ฝังคำสั่งไว้เข้าระบบ Sentry ของคุณ แล้วรอให้คุณสั่ง AI agent ไป “ช่วยดู issue นี้หน่อย” — เท่านั้นเอง agent ก็จะอ่านคำสั่งของแฮกเกอร์แล้วลงมือทำด้วยสิทธิ์และ credential ของคุณเอง ทดสอบแล้วได้ผล สำเร็จ 85% ทั้งบน Claude Code, Cursor และ Codex

การโจมตีทำงานยังไง: 6 ขั้นจาก DSN ที่เปิดเผยสู่การรันโค้ด

จุดเริ่มคือ DSN (Data Source Name) ของ Sentry — credential แบบ write-only ที่ออกแบบมาให้ฝั่ง client ใช้ส่ง error report จึงมักถูกฝังไว้ใน JavaScript bundle หรือ repo สาธารณะแบบเปิดเผย ลำดับการโจมตีมี 6 ขั้น:

  1. หา DSN — แฮกเกอร์ค้น DSN ที่ใช้ได้จาก bundle หน้าเว็บหรือ GitHub repo สาธารณะ
  2. ยิง event ปลอม — POST payload ที่ออกแบบมาเข้า endpoint ingestion ของ Sentry ตรง ๆ (เพราะ DSN เปิดให้เขียน)
  3. ฝังคำสั่งเป็น markdown — แต่งคำสั่งให้ดูเหมือน “คำแนะนำการแก้บั๊ก” เช่นหัวข้อ ## Resolution ที่จริง ๆ คือชุดคำสั่งของแฮกเกอร์
  4. dev เรียก agent มาดู — นักพัฒนาสั่ง AI agent ให้ไปสืบ issue นี้ผ่าน Sentry MCP
  5. agent รันคำสั่ง — agent ตีความข้อความที่ฝังมาว่าเป็นคำแนะนำจริง แล้วลงมือรันคำสั่ง
  6. ขโมยข้อมูล — payload ดึง credential, environment variable และ token ออกไป

หัวใจของช่องโหว่ไม่ใช่บั๊กในโค้ด แต่คือ agent แยกไม่ออกระหว่าง “ข้อมูล” กับ “คำสั่ง” — มันเชื่อทุกอย่างที่ดึงมาผ่าน MCP ว่าเป็นบริบทที่น่าเชื่อถือ ซึ่งเป็นรูปแบบหนึ่งของ prompt injection ที่อันตรายเป็นพิเศษเพราะ payload เข้ามาทาง “ข้อมูล error จริง” ที่ dev ตั้งใจให้ agent ไปอ่าน

ขอบเขตผลกระทบ และท่าทีของ Sentry

นักวิจัยสแกนพบ องค์กรอย่างน้อย 2,388 แห่งที่มี DSN เปิดให้ inject ได้ ทั่วโลก และที่น่ากังวลคือ Sentry รับทราบปัญหาแต่ปฏิเสธจะแก้ที่ต้นเหตุ โดยให้เหตุผลว่า “ในเชิงเทคนิคป้องกันไม่ได้” — เพราะสถาปัตยกรรม open ingestion ที่ให้ client ส่ง error ได้อิสระคือฟีเจอร์หลักของระบบ ไม่ใช่บั๊ก

นั่นแปลว่า ภาระการป้องกันตกมาที่ผู้ใช้ agent โดยตรง ไม่ใช่รอ vendor patch

สิ่งที่ต้องทำตอนนี้: ลด trust ที่ agent มีต่อข้อมูลภายนอก

มาตรการที่นักวิจัยแนะนำ ตรงไปตรงมาและทำได้ทันที:

  • ปิด/จำกัด Sentry MCP ที่ไม่จำเป็น และตรวจสอบว่า integration ไหนเปิดอยู่บ้าง
  • บังคับให้มนุษย์อนุมัติก่อน ที่ agent จะรันคำสั่งใด ๆ จากข้อมูล MCP — อย่าเปิดโหมด auto-run/auto-approve กับงานที่แตะข้อมูลภายนอก
  • rotate DSN ที่หลุด และวาง server-side relay แทนการเปิด DSN ตรง
  • รัน agent ใน sandbox ที่จำกัดสิทธิ์และ credential (least privilege) — อย่าให้ agent ถือ token ที่ขโมยแล้วเสียหายหนัก
  • ทำ inventory ของ MCP server ที่ใช้ พร้อมตรวจ provenance ว่ามาจากแหล่งที่เชื่อถือได้

มุมมอง AI Curator

agentjacking ไม่ใช่ช่องโหว่ของ Sentry หรือของ agent ตัวใดตัวหนึ่ง แต่เป็น ช่องโหว่เชิงสถาปัตยกรรมของยุค agentic ทั้งยุค — เรากำลังต่อ agent เข้ากับแหล่งข้อมูลภายนอกจำนวนมากผ่าน MCP โดยที่ตัว agent ยังเชื่อทุกอย่างที่อ่านมาเหมือนเป็นคำสั่งจากเจ้านาย ตราบใดที่ “ข้อมูล” กับ “คำสั่ง” ยังไหลมาในช่องเดียวกันและแยกกันไม่ออก รูปแบบนี้จะกลับมาอีกเรื่อย ๆ ไม่ว่าจะผ่าน Sentry, ผ่าน issue tracker, ผ่านอีเมล หรือผ่านผลลัพธ์ search

สำหรับทีมไทยที่กำลังเร่งเอา AI coding agent มาใช้ บทเรียนที่จับต้องได้คือ อย่าให้ “ความสะดวกของ auto-approve” มาก่อนความปลอดภัย — โหมดที่ปล่อยให้ agent รันคำสั่งเองโดยไม่ถามคือสิ่งที่ทำให้ช่องโหว่นี้สำเร็จถึง 85% หลายองค์กรในบ้านเราที่เพิ่งเริ่มใช้ agent มักเปิดสิทธิ์กว้างไว้ก่อนเพื่อความลื่นไหล โดยยังไม่ได้วาง sandbox หรือ least-privilege เลย นี่คือจังหวะที่ควรกลับไปตั้งค่าให้ถูกตั้งแต่ต้น ก่อนจะมีเคสจริงเกิดในไทย

ภาพใหญ่: เครื่องมือ discovery อย่าง ARD ของ GitHub ที่ย้ำว่า “ไม่เชื่อมต่ออะไรเงียบ ๆ” และเทรนด์การบังคับ human-in-the-loop กำลังมาในทิศทางเดียวกัน — ความปลอดภัยของ agent จะไม่ได้มาจาก “เชื่อ vendor” แต่มาจาก การออกแบบให้ agent ไม่ไว้ใจข้อมูลภายนอกโดยอัตโนมัติ ตั้งแต่แรก

แหล่งข่าว

บทความนี้เรียบเรียงจากแหล่งข่าวต้นทาง — Cloud Security Alliance

เนื้อหาบน blog นี้สร้างโดย AI โดยมีการกำกับบรรณาธิการจากมนุษย์

อ่านเพิ่มในหมวด ช่องโหว่

ลิงก์แชร์ ChatGPT ลิงก์เดียวยึดบัญชีได้ ต้นตอคือ MathLive ไลบรารีที่มียอดดาวน์โหลดกว่า 4 แสนต่อสัปดาห์ เพิ่งออกแพตช์ 31 ต.ค.
ช่องโหว่

ลิงก์แชร์ ChatGPT ลิงก์เดียวยึดบัญชีได้ ต้นตอคือ MathLive ไลบรารีที่มียอดดาวน์โหลดกว่า 4 แสนต่อสัปดาห์ เพิ่งออกแพตช์ 31 ต.ค.

Parameter Labs เปิดเผยเมื่อ 28 ต.ค. ว่าลิงก์แชร์ ChatGPT สามารถรัน JavaScript ในเซสชันของคนเปิด อ่านแชตส่วนตัวและส่งข้อมูลออกนอกได้ OpenAI แก้แล้วเมื่อ 26 ต.ค. แต่ไลบรารี MathLive ที่เป็นจุดเริ่มต้นเพิ่งออกการแก้ด้านความปลอดภัยเมื่อ 31 ต.ค.

· อ่าน 5 นาที
ช่องโหว่ GitLab CVSS 10 ถูกใช้โจมตีจริงแล้ว — Alpine Linux อัปเกรดแล้วยังโดน เพราะตัวแก้อยู่ใน Ruby
ช่องโหว่

ช่องโหว่ GitLab CVSS 10 ถูกใช้โจมตีจริงแล้ว — Alpine Linux อัปเกรดแล้วยังโดน เพราะตัวแก้อยู่ใน Ruby

CVE-2026-97229 ช่องโหว่ RCE คะแนน 10.0 ใน GitLab เข้า CISA KEV เมื่อ 29 ต.ค. ส่วน Alpine Linux เล่าว่าถูกโจมตีช่วง 20–21 ต.ค. และแม้อัปเกรดแล้วก็ยังมีช่องโหว่ เพราะ image ของตัวเองใช้ Ruby ที่ไม่มีแพตช์ จึงสร้าง GitLab ใหม่ทั้งหมด

· อ่าน 4 นาที
ช่องโหว่ Linux kernel CVE-2026-98432 คะแนน 9.8 กระทบถึงเคอร์เนล 4.4 — Anthropic พิสูจน์ได้ root จากระยะไกลบนเซิร์ฟเวอร์ MPTCP
ช่องโหว่

ช่องโหว่ Linux kernel CVE-2026-98432 คะแนน 9.8 กระทบถึงเคอร์เนล 4.4 — Anthropic พิสูจน์ได้ root จากระยะไกลบนเซิร์ฟเวอร์ MPTCP

CVE-2026-98432 เป็น use-after-free ในโค้ดรับการเชื่อมต่อ IPv4 TCP ของ Linux ทีม CVE ของเคอร์เนลให้ 9.8 แต่ Red Hat ให้ 5.9 ส่วน Anthropic สาธิตการได้ root จากระยะไกลบนเซิร์ฟเวอร์ที่เปิด MPTCP และ distro หลายตัวยังทยอยออกแพตช์

· อ่าน 4 นาที