นักวิจัยสาธิต "เวิร์ม" ที่แพร่ตัวเองผ่านเอกสาร Word ด้วย Copilot — Microsoft แก้ 4 เดือนยังทำซ้ำได้
Håkon Måløy เผยแพร่ตอนที่ 3 ของงานวิจัยชุด “Context Collapse” เมื่อวันที่ 28 กรกฎาคม 2026 และมันขึ้นหน้าแรก Hacker News วันถัดมา สิ่งที่เขาสาธิตคือสิ่งที่วงการความปลอดภัยกลัวมานานตั้งแต่ผู้ช่วย AI เริ่มอ่านไฟล์ในองค์กรของเราได้: มัลแวร์ที่ไม่มีโค้ดเลย มีแต่ข้อความ และแพร่ตัวเองผ่านเอกสารที่พนักงานสร้างขึ้นเองตามงานปกติ
ช่องทางคือ Cross-Domain Prompt Injection Attack (XPIA) ใน Microsoft Copilot for Word คำสั่งที่ฝังไว้ในเอกสารด้วยข้อความสีขาวบนพื้นขาว ขนาดฟอนต์ 8 — มองไม่เห็นด้วยตาเปล่า แต่ Copilot อ่านครบ — จะทำงานทันทีที่ผู้ใช้ลากไฟล์นั้นเข้าไปเป็นเอกสารอ้างอิงในการร่างงาน
กลไกการแพร่: สองขั้น ไม่ต้องมีผู้โจมตีอยู่ในลูป
ขั้นที่ 1 ผู้โจมตีสร้างเอกสารที่มีคำสั่งซ่อนอยู่ เมื่อผู้ใช้เอาไฟล์นี้ไปใช้เป็น reference ตอนให้ Copilot ช่วยร่างเอกสาร คำสั่งซ่อนจะทำสองอย่างพร้อมกัน: (ก) แก้ผลลัพธ์ที่ Copilot สร้าง — ใน PoC คือหารตัวเลขทุกตัวในรายงานการเงินลงครึ่งหนึ่ง และ (ข) คัดลอกคำสั่งโจมตีทั้งชุดไปต่อท้ายเอกสารใหม่ ด้วยการซ่อนแบบเดิม
ขั้นที่ 2 เอกสารที่เพิ่งถูกสร้างขึ้นนั้นกลายเป็นพาหะรอบใหม่ เมื่อเพื่อนร่วมงานหยิบเอกสาร “ที่ทำขึ้นในบริษัทเราเอง” ไปใช้อ้างอิงในงานของตัวเอง คำสั่งทำงานอีกครั้ง แก้เอกสารของคนนั้น และคัดลอกตัวเองต่อไป
จุดที่ทำให้นี่เป็น “เวิร์ม” ไม่ใช่แค่ช่องโหว่ prompt injection ธรรมดา คือประโยคที่ผู้วิจัยเน้นไว้ว่าการโจมตี “ดำเนินต่อไปได้โดยไม่ต้องมีเว็บไซต์ที่ถูกยึดหรือเอกสารต้นทางที่เป็นอันตรายเข้ามาเกี่ยวข้องอีก” — พาหะดั้งเดิมถูกลบไปแล้วก็ยังแพร่ต่อ เพราะตัวแพร่เชื้อคือเอกสารภายในที่ทุกคนไว้ใจที่สุด และช่องทางแพร่คือ workflow ปกติของออฟฟิศ ไม่ใช่ไฟล์แนบจากคนแปลกหน้า
ผลกระทบเชิงธุรกิจร้ายกว่าการรั่วข้อมูล เพราะเป็นการบิดเบือนความถูกต้องของข้อมูล (integrity) อย่างเงียบ ๆ ตัวเลขในรายงานการเงินที่ถูกหารครึ่งโดยไม่มีใครรู้ ผ่านหลายมือ หลายเวอร์ชัน จนไม่มีใครบอกได้ว่าเลขที่ถูกอยู่ตรงไหน
ไทม์ไลน์ 144 วัน และการแก้ที่ปิดได้แค่ payload
ลำดับเหตุการณ์ที่ผู้วิจัยเปิดเผย:
| วันที่ | เหตุการณ์ |
|---|---|
| 6 มี.ค. 2026 | ส่งรายงานพร้อมขั้นตอนทำซ้ำให้ Microsoft |
| 31 มี.ค. 2026 | Microsoft ยืนยันพฤติกรรมดังกล่าว |
| 3 เม.ย. 2026 | ปล่อยประสบการณ์ “Edit with Copilot” ซึ่งกันคำสั่งโจมตีชุดเดิมได้ |
| 14 ก.ค. 2026 | อัปเกรดโมเดลเป็น GPT-5.5 เป็นการแก้ในวงกว้างกว่า |
| 28 ก.ค. 2026 | เปิดเผยสาธารณะ — ยังทำซ้ำได้ด้วย GPT-5.6 |
ระยะเวลาประสานงานยืดจาก 90 วันเป็น 144 วัน (ขยายสองครั้ง) Microsoft ยืนยันปัญหา ร่วมมือ และปล่อยการแก้หลายรอบจริง แต่ผลลัพธ์คือสิ่งที่คนทำ AI security รู้จักดี: การแก้แต่ละครั้งปิด payload เฉพาะชุด ไม่ได้ปิดคลาสของช่องโหว่ ผู้วิจัยเพียงปรับถ้อยคำในคำสั่งซ่อนก็ทำซ้ำได้ทั้งบน GPT-5.5 และ GPT-5.6 กล่าวคือการอัปเกรดโมเดลไม่ได้แก้ปัญหาเชิงสถาปัตยกรรมที่ว่า ข้อความในเอกสารที่ถูกดึงมาเป็นบริบท ถูกปฏิบัติเหมือนเป็นคำสั่งได้
ณ วันเผยแพร่ ยังไม่มีการอ้าง CVE และผู้วิจัยระบุว่าไม่มีมาตรการป้องกันที่แข็งแรงพอในผลิตภัณฑ์ประเภทเดียวกัน — ทั้งนี้งานชิ้นนี้ทดสอบเฉพาะผลิตภัณฑ์ Microsoft และไม่ได้อ้างว่าเจ้าอื่นมีช่องโหว่เดียวกันนี้ (ตอนที่ 1 ของชุดคือ “Poisoning Copilot Memory” และตอนที่ 2 คือ “When Emails Instruct” ว่าด้วย XPIA ผ่านอีเมล)
มุมมอง AI Curator
สิ่งที่ควรเก็บกลับไปจากงานชิ้นนี้ไม่ใช่ “Copilot ไม่ปลอดภัย” แต่เป็นข้อสรุปทางสถาปัตยกรรมที่ใช้ได้กับทุกระบบที่เราสร้างเอง: ทันทีที่ agent อ่านเนื้อหาที่ผู้อื่นเขียนได้ และเขียนเนื้อหาที่ผู้อื่นจะอ่านต่อได้ เราสร้างเงื่อนไขของการแพร่กระจายขึ้นแล้ว ไม่ต้องมีโค้ด ไม่ต้องมี exploit ในความหมายเดิม แค่ข้อความที่รอดผ่านช่องทางอ่าน-เขียนนั้นก็พอ ใครที่กำลังต่อ RAG เข้ากับคลัง SharePoint/Google Drive ของบริษัท หรือให้ agent สรุปเอกสารแล้วเขียนไฟล์ใหม่กลับลงคลังเดิม กำลังสร้างวงจรเดียวกันนี้อยู่ — และการที่ Microsoft ที่มีทรัพยากรระดับนั้นใช้ 144 วันแล้วยังปิดไม่ได้ ควรเป็นการปรับคาดหวังว่าเราจะปิดได้เองด้วย prompt ที่เขียนดีกว่า
ในทางปฏิบัติ การป้องกันที่พอมีความหวังคือระดับ pipeline ไม่ใช่ระดับโมเดล: ทำ sanitize เนื้อหาก่อนเข้า context (ถอดข้อความที่มองไม่เห็น — สีเดียวกับพื้น ฟอนต์เล็กผิดปกติ ข้อความซ่อน ข้อมูลใน metadata และ comment), แยกสิทธิ์อ่านออกจากสิทธิ์เขียน ไม่ให้ agent ตัวเดียวทั้งอ่านคลังและเขียนกลับคลังโดยไม่มีคนอนุมัติ, และตรวจ diff ของสิ่งที่โมเดลแก้ โดยเฉพาะตัวเลข — PoC นี้หารตัวเลขลงครึ่ง ซึ่งเป็นการเปลี่ยนแปลงที่ diff จับได้ง่ายมากถ้ามีใครดู แต่จับไม่ได้เลยถ้าไม่มี
สำหรับองค์กรไทย ความเสี่ยงนี้มาถึงเร็วกว่าที่หลายคนคิด เพราะการใช้งาน Microsoft 365 Copilot ในองค์กรขนาดกลางถึงใหญ่ที่นี่กำลังโตเร็ว และวัฒนธรรมการทำงานที่นี่พึ่งพา “เทมเพลตของบริษัท” อย่างหนัก — ไฟล์รายงาน ใบเสนอราคา และเอกสารมาตรฐานถูกส่งต่อ ก็อปปี้ และดัดแปลงกันในทีมและระหว่างแผนกเป็นปกติ ซึ่งเป็นเงื่อนไขการแพร่ที่เหมาะกับเวิร์มแบบนี้ที่สุด ยิ่งไปกว่านั้นข้อความซ่อนภาษาไทยตรวจจับด้วยเครื่องมือทั่วไปยากกว่าภาษาอังกฤษ และการที่ผลกระทบเป็นการแก้ตัวเลขในเอกสารการเงินหมายความว่ามันเข้าข่ายประเด็นความถูกต้องของข้อมูลตาม PDPA และมาตรฐานการควบคุมภายในทางบัญชีโดยตรง ไม่ใช่แค่เรื่องไอที ฝ่าย IT ที่กำลังเปิด Copilot ให้ทั้งองค์กรควรมีคำตอบสำหรับคำถามข้อเดียวนี้ก่อน: ถ้ามีเอกสารภายในของเราที่พาคำสั่งซ่อนอยู่ตอนนี้ เราจะรู้ได้อย่างไร
แหล่งข่าว
อ่านเพิ่มในหมวด งานวิจัย
Anthropic ให้ Claude สร้างชุดข้อมูลที่ดูไร้พิษภัยแต่ทำโมเดลเบี้ยว ซ่อนในเรื่องเลี้ยงผึ้งและมวยปล้ำ จนผ่านระบบตรวจที่คล้ายของจริง
ทีม Alignment ของ Anthropic ให้ Claude ปีนหาชุดข้อมูล fine-tune ที่หลบ monitor ได้ ผลคือซ่อนพฤติกรรมในงานเขียนแนวบทบาทสมมติ และโมเดลที่เทรนแล้วนำไปใช้ในบุคลิกตัวเอง ผลซ้ำได้บน Qwen 3.6 27B แต่การทดลองเอื้อฝ่ายโจมตีมากและไม่ได้สะท้อนโมเดลที่ใช้งานจริง
Memdoor ทำซ้ำ GVS5H ได้: ทีม Qwen3.8-27B ห้าตัวตามทัน Fable 5 บนโจทย์ LiveCodeBench Hard แต่ผู้ทำบอกเองว่า 'เท่า' ไม่ใช่ 'ชนะ'
Memdoor ปล่อย workflow team-solve ที่เขียนวิธี GVS5H เป็น YAML ล้วนและทำคะแนน 9.8/10 บน LiveCodeBench Hard 10 ข้อ เทียบกับ 8.0 ของ Fable 5 แบบเรียกครั้งเดียว แต่ตัวอย่างเล็กและมีข้อจำกัด ส่วนงานวิจัยต้นฉบับชี้ว่าวิธีนี้ไม่ได้ช่วยทุกโมเดล
QwenPU รัน LLM ซ้อนใน LLM ด้วยหน่วยเวกเตอร์ที่คอมไพล์ลงในน้ำหนัก Qwen3.5-4B ส่วน bootgpt ทำให้เครื่อง 386 บูตเข้าโมเดลภาษาโดยไม่มี OS
ผู้สร้าง Qwenputer ปล่อย QwenPU เมื่อ 31 ต.ค. รัน stories260K ของ Karpathy บนหน่วยเวกเตอร์ที่คอมไพล์ลงในน้ำหนัก Qwen3.5-4B ลดเหลือ 53,000 trace token ต่อหนึ่ง token เรื่องเล่า วันเดียวกัน bootgpt ใส่โมเดล int8 ขนาด 11.5KB ให้บูตบนเครื่อง 386 โดยไม่มี OS