ข้อความซ่อนใน PDF ไฟล์เดียวดูด Jira/Confluence ออกได้ — PromptArmor เปิดช่องโหว่ Rovo ของ Atlassian ที่ยังไม่มีแพตช์
บริษัทวิจัยความปลอดภัย PromptArmor เผยแพร่รายงานเมื่อ 5 สิงหาคม 2026 ว่า Rovo ผู้ช่วย AI ที่ Atlassian ฝังอยู่ใน Jira และ Confluence สามารถถูกหลอกให้ดูดข้อมูลภายในองค์กรออกไปยังเซิร์ฟเวอร์ของผู้โจมตีได้ ด้วยเทคนิคพื้นฐานที่สุดของโลก agent — indirect prompt injection ที่ซ่อนอยู่ในเอกสารธรรมดา ๆ เช่นไฟล์ PDF ที่พนักงานอัปโหลดเข้าไปให้ Rovo ช่วยสรุป
เราหยิบเรื่องนี้มาเขียนช้ากว่าต้นทาง (รายงานออก 5 ส.ค. ส่วน The Decoder เพิ่งเก็บประเด็นเมื่อ 10 ส.ค.) แต่ยังคุ้มที่จะเขียน เพราะจนถึงวันที่ต้นทางเผยแพร่ ช่องทางนี้ยังไม่ถูกแก้ และมันเป็นตัวอย่างที่สะอาดที่สุดของบั๊กประเภทที่ทีมพัฒนาไทยกำลังจะสร้างขึ้นเองในระบบ agent ของตัวเอง
กลไกการโจมตี: สั้นและน่าเบื่ออย่างน่ากลัว
ห่วงโซ่การโจมตีมีแค่สี่ขั้น และไม่ต้องอาศัยช่องโหว่ระดับโค้ดเลยสักจุด
- ผู้โจมตีฝังคำสั่งไว้ในไฟล์ — เทคนิคคลาสสิกคือตัวอักษรสีขาวบนพื้นขาว ฟอนต์เล็กจิ๋ว มนุษย์มองไม่เห็น แต่ตัวแยกข้อความของ Rovo อ่านออกครบทุกตัว
- เหยื่ออัปโหลดไฟล์นั้นให้ Rovo ช่วยงาน — จบขั้นตอนที่ต้องใช้มนุษย์แล้ว ที่เหลือ agent ทำเอง
- คำสั่งที่ฝังไว้สั่งให้ Rovo ไปค้น Jira และ Confluence ตามคีย์เวิร์ดที่ผู้โจมตีกำหนด แล้ว ต่อผลลัพธ์ที่ได้เข้าไปใน URL ของผู้โจมตี
- Rovo เปิด URL นั้น ข้อมูลไหลไปโผล่ใน access log ของผู้โจมตีเรียบร้อย
ประเด็นเทคนิคที่ควรจำคือขั้นที่ 3–4: ปัญหาไม่ได้อยู่ที่ “โมเดลถูกหลอก” แต่อยู่ที่ เครื่องมือเปิด URL ของ Rovo ไม่มีการควบคุมว่า URL นั้นมาจากไหน — URL ที่โมเดลประกอบขึ้นเองจากข้อมูลลับ ถูกปฏิบัติเหมือน URL ที่ผู้ใช้พิมพ์เอง
สวิตช์ที่แอดมินคิดว่าปิดอยู่ ไม่ได้ปิด
จุดที่ทำให้รายงานนี้เจ็บกว่าเคสอื่นคือ Atlassian มีสวิตช์ระดับองค์กรชื่อ Enable web search ที่แอดมินหลายที่ปิดไว้ด้วยความเข้าใจว่ามันตัดขาดไม่ให้ agent คุยกับอินเทอร์เน็ตภายนอก
PromptArmor พบว่ามันไม่ได้ทำอย่างนั้น — การปิด web search ตัดแค่ความสามารถในการ “ค้น” แต่ไม่ได้ถอดเครื่องมือ “เปิด” ผลลัพธ์ออก ช่องทางที่ใช้ส่งข้อมูลออกจึงยังเปิดอยู่ทั้งที่หน้าจอ setting บอกว่าปลอดภัยแล้ว นี่คือความล้มเหลวที่แย่กว่าการไม่มีสวิตช์เลย เพราะมันสร้างความมั่นใจปลอม ๆ ให้ทีม security
ขอบเขตข้อมูลที่รั่วได้คือ ทุกอย่างที่ agent เข้าถึงได้ในสิทธิ์ของผู้ใช้คนนั้น — ทั้ง Jira ticket, เอกสาร Confluence และข้อมูลที่ไหลผ่าน connector ที่ต่อไว้กับระบบอื่น ยิ่งองค์กรต่อ connector เยอะเท่าไร รัศมีความเสียหายก็กว้างขึ้นเท่านั้น
ไทม์ไลน์การเปิดเผย และเรื่องของอีกช่องโหว่หนึ่ง
- 23 พ.ค. 2026 — PromptArmor แจ้ง Atlassian
- 25 พ.ค. 2026 — Atlassian รับเรื่อง ออกเลข case ให้
- 4 มิ.ย. และ 29 ก.ค. 2026 — PromptArmor ตามเรื่องซ้ำสองรอบ
- 5 ส.ค. 2026 — เผยแพร่สู่สาธารณะ โดยยังไม่ได้รับคำยืนยันว่าแก้แล้ว
ในช่วงเวลาไล่เลี่ยกัน The Hacker News (8 ส.ค.) รายงานว่ามีอีกช่องโหว่หนึ่งใน Rovo ที่ Varonis เป็นผู้พบ ชื่อ RovoBlast ซึ่งเป็นปัญหาที่พารามิเตอร์ URL คนละแบบกับของ PromptArmor — อันนั้น Atlassian แก้ฝั่งเซิร์ฟเวอร์ไปแล้วเมื่อ 8 ก.ค. 2026 โดยลูกค้าไม่ต้องทำอะไร ทั้งสองเคสยังไม่มีการออกเลข CVE
ความต่างของสองเคสนี้บอกอะไรบางอย่าง: ช่องโหว่ที่ “เป็นบั๊กในโค้ด” ถูกแก้ในสองเดือน ส่วนช่องโหว่ที่ “เป็นพฤติกรรมของ agent” ค้างมาเกือบสามเดือนแล้วยังไม่ขยับ — เพราะการแก้อย่างหลังแปลว่าต้องยอมตัดความสามารถบางอย่างของสินค้าทิ้ง
มุมมอง AI Curator
สิ่งที่ควรเอากลับบ้านจากเคสนี้ไม่ใช่ “Atlassian ทำพลาด” แต่คือ สถาปัตยกรรมที่ทุกคนกำลังก๊อปกันอยู่นี้ผิดตั้งแต่ต้น สูตร “LLM + ข้อมูลลับขององค์กร + เครื่องมือที่ยิงออกอินเทอร์เน็ตได้” คือช่องทางรั่วโดยนิยาม ไม่ว่าโมเดลจะฉลาดแค่ไหน เพราะ agent ไม่มีทางแยกได้ว่าข้อความที่มันอ่านเจอในเอกสารเป็น “ข้อมูล” หรือ “คำสั่ง” — และการพยายามสอนให้มันแยกคือการแก้ปัญหาผิดชั้น ทางที่ได้ผลจริงคือชั้น infrastructure: allowlist โดเมนปลายทางแบบ deny-by-default, ห้ามให้ URL ที่โมเดลประกอบเองถูกเรียกโดยอัตโนมัติ, และแยก agent ที่อ่านเนื้อหาจากภายนอกออกจาก agent ที่เข้าถึงข้อมูลลับ ให้คนละตัวคนละสิทธิ์ ซึ่งเป็นเหตุผลเดียวกับที่ GitHub ออก MCP allowlist ระดับ enterprise และที่ Docker ผลัก sandbox ระดับ microVM ออกมาสัปดาห์นี้
สำหรับองค์กรไทยเรื่องนี้เร่งด่วนกว่าที่คิด เพราะ Jira และ Confluence คือมาตรฐานโดยพฤตินัยของทีม engineering ในบริษัทไทยขนาดกลางขึ้นไป และการเปิด Rovo มักเป็นการติ๊กเพิ่มในสัญญาที่มีอยู่แล้ว ไม่ผ่านกระบวนการ security review รอบใหม่ ที่แย่กว่านั้นคือเนื้อหาใน Confluence ขององค์กรไทยจำนวนมากคือสิ่งที่รั่วแล้วเจ็บที่สุด — credential ที่แปะไว้ใน runbook, สถาปัตยกรรมระบบ, ข้อมูลลูกค้าใน ticket, รายละเอียดสัญญา และภายใต้ PDPA การที่ข้อมูลส่วนบุคคลไหลออกไปเพราะพนักงานอัปโหลดไฟล์แนบจากอีเมลภายนอกไฟล์เดียว ก็ยังนับเป็นเหตุละเมิดที่ต้องแจ้งอยู่ดี คำถามที่ทีมความปลอดภัยควรถามพรุ่งนี้เช้าจึงไม่ใช่ “เราปิด web search แล้วหรือยัง” แต่คือ “ถ้าปิดแล้วมันยังยิงออกได้ เรามีอะไรอยู่ที่ชั้นเครือข่ายบ้าง” — และถ้าคำตอบคือไม่มี ก็แปลว่าสวิตช์ในหน้า setting คือระบบป้องกันเดียวที่คุณมี ซึ่งเคสนี้เพิ่งพิสูจน์แล้วว่ามันไม่ทำงาน
แหล่งข่าว
- PromptArmor — Atlassian Rovo Exfiltrates Data, Bypassing Controls (5 ส.ค. 2026)
- The Hacker News — Atlassian Rovo Can Be Tricked Into Sending Jira and Confluence Data to Attackers (8 ส.ค. 2026)
- The Decoder — Hidden text in a PDF is enough to steal sensitive data through Atlassian’s AI agent Rovo (10 ส.ค. 2026)
อ่านเพิ่มในหมวด การแฮ็ก
ลิงก์แชร์ ChatGPT ลิงก์เดียวยึดบัญชีได้ ต้นตอคือ MathLive ไลบรารีที่มียอดดาวน์โหลดกว่า 4 แสนต่อสัปดาห์ เพิ่งออกแพตช์ 31 ต.ค.
Parameter Labs เปิดเผยเมื่อ 28 ต.ค. ว่าลิงก์แชร์ ChatGPT สามารถรัน JavaScript ในเซสชันของคนเปิด อ่านแชตส่วนตัวและส่งข้อมูลออกนอกได้ OpenAI แก้แล้วเมื่อ 26 ต.ค. แต่ไลบรารี MathLive ที่เป็นจุดเริ่มต้นเพิ่งออกการแก้ด้านความปลอดภัยเมื่อ 31 ต.ค.
Talos พบมัลแวร์ VOLTA ขโมยข้อมูลแล้วส่งให้ LLM จัดอันดับว่าเหยื่อคุ้มค่าแค่ไหน พร้อมสลับโมเดลอัตโนมัติเมื่อถูกปฏิเสธ
Cisco Talos เผยแพร่รายงาน VOLTA-AUTODOXER เมื่อ 31 ต.ค. มัลแวร์ขโมยข้อมูลบน Windows ที่ส่งหลักฐานของเหยื่อผ่าน OpenRouter ให้ LLM เขียนรายงานจัดลำดับมูลค่า ถ้าโมเดลแรกปฏิเสธจะไล่ไปโมเดลถัดไป และตัวสร้างแบบแทนค่าบ่งชี้ว่าอาจถูกขายเป็นสินค้า
ส่วนขยาย Claude Code ปลอมฝังแบ็กดอร์ SSH บน Cursor Marketplace — อยู่ 11 ชั่วโมง กระทบไม่เกิน 5,000 คน ถอนส่วนขยายอย่างเดียวไม่พอ
Cursor ยืนยันว่า Anthropic.claude-code เวอร์ชัน 2.1.312 และ 2.1.313 ที่ถูกดัดแปลงอยู่ใน marketplace ราว 11 ชั่วโมงเมื่อ 29 ต.ค. พยายามเปิดแบ็กดอร์ SSH บน macOS และ Windows พนักงาน Anthropic ยืนยันว่า 2.1.313 ไม่เคยถูกเผยแพร่จากบริษัท เรื่องที่ยังไม่เปิดเผยคือคนร้ายเข้าไปวางไฟล์ได้อย่างไร