Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป Heapjack เกี่ยวข้องกับ helper node repl ที่ตั้งค่าแบบ global และการแชร์ V8 heap ส่วน Overpatch ใช้สิทธิ์ apply patch ที่คำนวณจา...
เผยแพร่โดยแก้ไขด้วย GPT-5.6 Terraรูปภาพสร้างด้วย GPT Image 2
คำตอบการวิจัย

Create a landscape editorial hero image for this Studio Global article: How did Accomplish AI researchers’ Heapjack and Overpatch vulnerabilities enable sandbox escapes and host-command execution in OpenAI’s Code. Article summary: Accomplish’s two findings bypassed Codex’s intended workspace/read-only boundaries by making a trusted enforcement component rely on attacker-influenced state. Both could turn an untrusted repository into host-level code. Topic tags: general, general web. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clic
Codex ใช้ sandbox เพื่อจำกัดสิ่งที่ AI coding agent อ่าน เขียน และรันได้ แต่รายงานของ Accomplish AI ชื่อ Heapjack และ Overpatch แสดงให้เห็นว่าแนวกั้นดังกล่าวอาจถูกข้ามได้ หากคอมโพเนนต์ที่มีสิทธิ์สูงเก็บความลับร่วมกับโค้ดที่ไม่น่าไว้ใจ หรือขยายสิทธิ์โดยอิงข้อมูลที่ผู้โจมตีควบคุมได้ ทั้งสองประเด็นได้รับการแก้ไขแล้ว 4
8
Heapjack กระทบ integration ชื่อ node_repl ซึ่ง Codex Desktop ติดตั้งไว้ โดยแอปเดสก์ท็อปเขียนการตั้งค่า MCP server ลงใน ~/.codex/config.toml ซึ่งเป็นไฟล์ global ทำให้เซสชัน Codex CLI ที่ใช้การตั้งค่าชุดเดียวกันอาจได้รับ helper นี้ไปด้วย 8
9
จุดที่การแยกสิทธิ์ล้มเหลวอยู่ภายใน JavaScript runtime ของ helper:
เพราะ parent process ทำงานอยู่นอก sandbox ผลลัพธ์อาจนำไปสู่การกระทำบนเครื่องโฮสต์ รวมถึงการรันคำสั่ง แม้ Codex จะถูกตั้งไว้เป็นโหมดอ่านอย่างเดียวก็ตาม ประเด็นไม่ใช่เพียงการรัน JavaScript แต่คือ credential ที่ใช้แยกงานเชื่อถือได้ออกจากงานที่ไม่เชื่อถือได้ ถูกเก็บไว้ในหน่วยความจำที่ฝั่งหลังเข้าถึงได้ 8
15
Overpatch เป็นปัญหาใน Codex CLI ที่เครื่องมือ apply_patch เมื่อใช้งานโหมด workspace-write เดิมทีเครื่องมือนี้ควรแก้ไขไฟล์ได้เฉพาะภายใน workspace แต่ตรรกะอนุญาตสิทธิ์กลับขยายขอบเขตการเขียนตามไดเรกทอรีแม่ของพาธที่ระบุอยู่ในแพตช์เอง 4
นั่นทำให้พาธในแพตช์กลายเป็นข้อมูลที่มีผลต่อความปลอดภัย Accomplish สาธิตว่า การใส่พาธที่แทบไม่มีผลอย่าง /tmp อาจทำให้สิทธิ์ขยายไปถึงรากของระบบไฟล์ได้ จากนั้นการเปลี่ยนแปลงอีกส่วนในแพตช์สามารถตาม symlink ที่รีโพซิทอรีควบคุมไปแก้ไฟล์นอก workspace ได้ รวมถึงไฟล์เริ่มต้นของ shell ในโฮมไดเรกทอรีผู้ใช้ 4
9
ผลกระทบอาจเกิดขึ้นภายหลัง แต่มีนัยสำคัญ: โค้ดที่ถูกฝังในไฟล์เริ่มต้นของ shell สามารถทำงานนอก sandbox ของ agent เมื่อผู้พัฒนาเปิดเทอร์มินัลในครั้งถัดไป และการกระทำบนโฮสต์ที่ตามมาไม่ต้องผ่านหน้าต่างขออนุมัติแบบปกติ 4
7
แม้ Heapjack และ Overpatch ใช้เทคนิคต่างกัน แต่เผยจุดบกพร่องด้านการออกแบบเดียวกัน คือกลไกบังคับใช้นโยบายเชื่อข้อมูลที่ฝั่งไม่ไว้วางใจเข้าถึงหรือควบคุมได้
| ประเด็น | สิ่งที่ถูกเชื่อถือ | เหตุที่ขอบเขตล้มเหลว |
|---|---|---|
| Heapjack | authorization token ใน V8 heap ที่แชร์ร่วมกัน | โค้ดที่ไม่น่าไว้ใจดึงความลับที่ใช้แยกคำขอที่เชื่อถือได้ออกมาได้ |
| Overpatch | พาธที่ agent ควบคุมได้ในแพตช์ | พาธเหล่านี้ถูกนำไปกำหนดขอบเขตสิทธิ์เขียน แทนที่จะเป็นเพียงคำบรรยายของไฟล์ที่ตั้งใจจะแก้ |
นี่เป็นลักษณะของปัญหา confused deputy: helper หรือ harness ที่มีสิทธิ์สูงลงมือทำบางอย่างตามอินพุตที่มีความน่าเชื่อถือต่ำ โดยไม่ได้ตรวจสอบอำนาจหรือเป้าหมายสุดท้ายอย่างรัดกุม ดังนั้น การ sandbox เฉพาะ shell ของ agent จึงไม่พอ หาก helper, token, การตั้งค่า หรือ subprocess ที่ใช้ควบคุมงานยังมีสิทธิ์สูง หรือยังถูกชักนำได้ด้วยเนื้อหาในรีโพซิทอรี
ช่องโหว่ของ coding agent อื่นในปี 2026 มีรายละเอียดทางเทคนิคต่างกัน แต่ใกล้เคียงกันในระดับสถาปัตยกรรม รายงาน Beltdown และ Beltdown2 ของ Accomplish ระบุว่า shell ของ agent ถูก sandbox ขณะที่คำสั่ง Git ภายในซึ่ง harness เรียกใช้นั้นทำงานนอก sandbox รีโพซิทอรีสามารถใช้การตั้งค่า core.fsmonitor ใน .git/config เพื่อให้ Git รัน helper ที่กำหนดไว้ระหว่างตรวจสถานะ working tree ได้ 17
18
Manifold Security เรียกช่องโหว่กลุ่มกว้างนี้ว่า GitSpawn: Git configuration ที่รีโพซิทอรีควบคุมได้อาจทำให้โค้ดที่ผู้โจมตีเลือกทำงานทันทีเมื่อ agent ตรวจดูโปรเจกต์ และอาจเกิดก่อนมีการอนุมัติหรือการตัดสินใจไว้วางใจที่มีความหมาย 20
21
ข้อสรุปไม่ใช่ว่าทุกรีโพซิทอรีจะอันตรายโดยอัตโนมัติในทุกขั้นตอนการทำงาน แต่คือควรมองรีโพซิทอรีเป็นอินพุตที่อาจมีพฤติกรรมเชิงรุกได้ เมื่อเครื่องมืออ่าน metadata, แก้ symlink, ใช้แพตช์, รัน hook หรือเปิด helper process ขอบเขตความไว้ใจของผลิตภัณฑ์ agent จึงรวมทุกเส้นทางเหล่านี้ ไม่ได้จำกัดแค่เครื่องมือรันคำสั่งที่ผู้ใช้มองเห็น
เวอร์ชันขั้นต่ำที่มีรายงานว่าแก้ไขแล้วคือ
Accomplish ระบุว่าได้รายงานทั้งสองปัญหาให้ OpenAI ทราบเมื่อวันที่ 12 สิงหาคม 2026 และมีการออกวิธีแก้ภายในแปดวัน 9
.git metadata ไว้ เพราะการ clone ตามปกติจะไม่ถ่ายโอน .git/config ในเครื่องของรีโมตมาด้วย ข้อควรจำที่นำไปใช้ได้ทันทีคือ: อัปเดต Codex ในส่วนที่ได้รับผลกระทบให้เรียบร้อย แต่ไม่ควรพึ่ง sandbox ภายในโปรเซสเป็นปราการชั้นเดียวระหว่างรีโพซิทอรีที่ไม่คุ้นเคยกับเครื่องทำงานของผู้พัฒนา
Studio Global AI
หน้านี้รวมคำตอบที่ได้รับการสนับสนุนจากแหล่งที่มาซึ่งคุณสามารถดำเนินการต่อภายใน Studio Global
Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป
Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป Heapjack เกี่ยวข้องกับ helper node repl ที่ตั้งค่าแบบ global และการแชร์ V8 heap ส่วน Overpatch ใช้สิทธิ์ apply patch ที่คำนวณจากพาธในแพตช์ซึ่งผู้โจมตีควบคุมได้
กรณีหลุด sandbox ของเอเจนต์เขียนโค้ดที่เกี่ยวกับ Git ในปี 2026 มีกลไกต่างกัน แต่ชี้ไปยังจุดอ่อนเชิงสถาปัตยกรรมเดียวกัน: เส้นทาง orchestration ที่อยู่นอก sandbox เชื่อข้อมูลจากรีโพซิทอรี
Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป Heapjack เกี่ยวข้องกับ helper node repl ที่ตั้งค่าแบบ global และการแชร์ V8 heap ส่วน Overpatch ใช้สิทธิ์ apply patch ที่คำนวณจา...
เผยแพร่โดยแก้ไขด้วย GPT-5.6 Terraรูปภาพสร้างด้วย GPT Image 2
คำตอบการวิจัย

Create a landscape editorial hero image for this Studio Global article: How did Accomplish AI researchers’ Heapjack and Overpatch vulnerabilities enable sandbox escapes and host-command execution in OpenAI’s Code. Article summary: Accomplish’s two findings bypassed Codex’s intended workspace/read-only boundaries by making a trusted enforcement component rely on attacker-influenced state. Both could turn an untrusted repository into host-level code. Topic tags: general, general web. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clic
Codex ใช้ sandbox เพื่อจำกัดสิ่งที่ AI coding agent อ่าน เขียน และรันได้ แต่รายงานของ Accomplish AI ชื่อ Heapjack และ Overpatch แสดงให้เห็นว่าแนวกั้นดังกล่าวอาจถูกข้ามได้ หากคอมโพเนนต์ที่มีสิทธิ์สูงเก็บความลับร่วมกับโค้ดที่ไม่น่าไว้ใจ หรือขยายสิทธิ์โดยอิงข้อมูลที่ผู้โจมตีควบคุมได้ ทั้งสองประเด็นได้รับการแก้ไขแล้ว 4
8
Heapjack กระทบ integration ชื่อ node_repl ซึ่ง Codex Desktop ติดตั้งไว้ โดยแอปเดสก์ท็อปเขียนการตั้งค่า MCP server ลงใน ~/.codex/config.toml ซึ่งเป็นไฟล์ global ทำให้เซสชัน Codex CLI ที่ใช้การตั้งค่าชุดเดียวกันอาจได้รับ helper นี้ไปด้วย 8
9
จุดที่การแยกสิทธิ์ล้มเหลวอยู่ภายใน JavaScript runtime ของ helper:
เพราะ parent process ทำงานอยู่นอก sandbox ผลลัพธ์อาจนำไปสู่การกระทำบนเครื่องโฮสต์ รวมถึงการรันคำสั่ง แม้ Codex จะถูกตั้งไว้เป็นโหมดอ่านอย่างเดียวก็ตาม ประเด็นไม่ใช่เพียงการรัน JavaScript แต่คือ credential ที่ใช้แยกงานเชื่อถือได้ออกจากงานที่ไม่เชื่อถือได้ ถูกเก็บไว้ในหน่วยความจำที่ฝั่งหลังเข้าถึงได้ 8
15
Overpatch เป็นปัญหาใน Codex CLI ที่เครื่องมือ apply_patch เมื่อใช้งานโหมด workspace-write เดิมทีเครื่องมือนี้ควรแก้ไขไฟล์ได้เฉพาะภายใน workspace แต่ตรรกะอนุญาตสิทธิ์กลับขยายขอบเขตการเขียนตามไดเรกทอรีแม่ของพาธที่ระบุอยู่ในแพตช์เอง 4
นั่นทำให้พาธในแพตช์กลายเป็นข้อมูลที่มีผลต่อความปลอดภัย Accomplish สาธิตว่า การใส่พาธที่แทบไม่มีผลอย่าง /tmp อาจทำให้สิทธิ์ขยายไปถึงรากของระบบไฟล์ได้ จากนั้นการเปลี่ยนแปลงอีกส่วนในแพตช์สามารถตาม symlink ที่รีโพซิทอรีควบคุมไปแก้ไฟล์นอก workspace ได้ รวมถึงไฟล์เริ่มต้นของ shell ในโฮมไดเรกทอรีผู้ใช้ 4
9
ผลกระทบอาจเกิดขึ้นภายหลัง แต่มีนัยสำคัญ: โค้ดที่ถูกฝังในไฟล์เริ่มต้นของ shell สามารถทำงานนอก sandbox ของ agent เมื่อผู้พัฒนาเปิดเทอร์มินัลในครั้งถัดไป และการกระทำบนโฮสต์ที่ตามมาไม่ต้องผ่านหน้าต่างขออนุมัติแบบปกติ 4
7
แม้ Heapjack และ Overpatch ใช้เทคนิคต่างกัน แต่เผยจุดบกพร่องด้านการออกแบบเดียวกัน คือกลไกบังคับใช้นโยบายเชื่อข้อมูลที่ฝั่งไม่ไว้วางใจเข้าถึงหรือควบคุมได้
| ประเด็น | สิ่งที่ถูกเชื่อถือ | เหตุที่ขอบเขตล้มเหลว |
|---|---|---|
| Heapjack | authorization token ใน V8 heap ที่แชร์ร่วมกัน | โค้ดที่ไม่น่าไว้ใจดึงความลับที่ใช้แยกคำขอที่เชื่อถือได้ออกมาได้ |
| Overpatch | พาธที่ agent ควบคุมได้ในแพตช์ | พาธเหล่านี้ถูกนำไปกำหนดขอบเขตสิทธิ์เขียน แทนที่จะเป็นเพียงคำบรรยายของไฟล์ที่ตั้งใจจะแก้ |
นี่เป็นลักษณะของปัญหา confused deputy: helper หรือ harness ที่มีสิทธิ์สูงลงมือทำบางอย่างตามอินพุตที่มีความน่าเชื่อถือต่ำ โดยไม่ได้ตรวจสอบอำนาจหรือเป้าหมายสุดท้ายอย่างรัดกุม ดังนั้น การ sandbox เฉพาะ shell ของ agent จึงไม่พอ หาก helper, token, การตั้งค่า หรือ subprocess ที่ใช้ควบคุมงานยังมีสิทธิ์สูง หรือยังถูกชักนำได้ด้วยเนื้อหาในรีโพซิทอรี
ช่องโหว่ของ coding agent อื่นในปี 2026 มีรายละเอียดทางเทคนิคต่างกัน แต่ใกล้เคียงกันในระดับสถาปัตยกรรม รายงาน Beltdown และ Beltdown2 ของ Accomplish ระบุว่า shell ของ agent ถูก sandbox ขณะที่คำสั่ง Git ภายในซึ่ง harness เรียกใช้นั้นทำงานนอก sandbox รีโพซิทอรีสามารถใช้การตั้งค่า core.fsmonitor ใน .git/config เพื่อให้ Git รัน helper ที่กำหนดไว้ระหว่างตรวจสถานะ working tree ได้ 17
18
Manifold Security เรียกช่องโหว่กลุ่มกว้างนี้ว่า GitSpawn: Git configuration ที่รีโพซิทอรีควบคุมได้อาจทำให้โค้ดที่ผู้โจมตีเลือกทำงานทันทีเมื่อ agent ตรวจดูโปรเจกต์ และอาจเกิดก่อนมีการอนุมัติหรือการตัดสินใจไว้วางใจที่มีความหมาย 20
21
ข้อสรุปไม่ใช่ว่าทุกรีโพซิทอรีจะอันตรายโดยอัตโนมัติในทุกขั้นตอนการทำงาน แต่คือควรมองรีโพซิทอรีเป็นอินพุตที่อาจมีพฤติกรรมเชิงรุกได้ เมื่อเครื่องมืออ่าน metadata, แก้ symlink, ใช้แพตช์, รัน hook หรือเปิด helper process ขอบเขตความไว้ใจของผลิตภัณฑ์ agent จึงรวมทุกเส้นทางเหล่านี้ ไม่ได้จำกัดแค่เครื่องมือรันคำสั่งที่ผู้ใช้มองเห็น
เวอร์ชันขั้นต่ำที่มีรายงานว่าแก้ไขแล้วคือ
Accomplish ระบุว่าได้รายงานทั้งสองปัญหาให้ OpenAI ทราบเมื่อวันที่ 12 สิงหาคม 2026 และมีการออกวิธีแก้ภายในแปดวัน 9
.git metadata ไว้ เพราะการ clone ตามปกติจะไม่ถ่ายโอน .git/config ในเครื่องของรีโมตมาด้วย ข้อควรจำที่นำไปใช้ได้ทันทีคือ: อัปเดต Codex ในส่วนที่ได้รับผลกระทบให้เรียบร้อย แต่ไม่ควรพึ่ง sandbox ภายในโปรเซสเป็นปราการชั้นเดียวระหว่างรีโพซิทอรีที่ไม่คุ้นเคยกับเครื่องทำงานของผู้พัฒนา
Studio Global AI
หน้านี้รวมคำตอบที่ได้รับการสนับสนุนจากแหล่งที่มาซึ่งคุณสามารถดำเนินการต่อภายใน Studio Global
Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป
Heapjack และ Overpatch เปิดทางให้ข้ามขอบเขตความปลอดภัยของ Codex จนกระทบเครื่องโฮสต์ได้ ผู้ใช้ควรอัปเดต Codex Desktop เป็น build 26.818.21641 ขึ้นไป และ Codex CLI เป็นเวอร์ชัน 0.149.0 ขึ้นไป Heapjack เกี่ยวข้องกับ helper node repl ที่ตั้งค่าแบบ global และการแชร์ V8 heap ส่วน Overpatch ใช้สิทธิ์ apply patch ที่คำนวณจากพาธในแพตช์ซึ่งผู้โจมตีควบคุมได้
กรณีหลุด sandbox ของเอเจนต์เขียนโค้ดที่เกี่ยวกับ Git ในปี 2026 มีกลไกต่างกัน แต่ชี้ไปยังจุดอ่อนเชิงสถาปัตยกรรมเดียวกัน: เส้นทาง orchestration ที่อยู่นอก sandbox เชื่อข้อมูลจากรีโพซิทอรี