ภาพประกอบเชิงเทคนิคแบบนามธรรมบนพื้นสีกรมท่าเข้ม ระนาบขอบเขตโปร่งแสงทรงสูงตั้งอยู่ที่ขอบด้านซ้าย วาดเป็นเส้นโครงร่างบางสีอ่อนพร้อมพื้นผิวแบบฝ้า เส้นสีขาวเส้นเดียวพาดผ่านระนาบนั้นและวิ่งไปทางขวาผ่านโมดูลเรืองแสงสีฟ้าไซแอนที่เหมือนกันสี่โมดูลซึ่งจัดเรียงเป็นส่วนโค้งตื้น ๆ โดยแต่ละโมดูลมีป้ายหกเหลี่ยมสีขาวเหมือนกันลอยอยู่ด้านบน โมดูลที่สามเลื่อนไปทางซ้ายครึ่งก้าว เหลือโครงร่างเงาจางสีอ่อนตรงตำแหน่งเดิม และป้ายหกเหลี่ยมด้านบนเรืองแสงสีอำพัน ไม่มีข้อความ บุคคล หรือโลโก้องค์กรปรากฏอยู่ โลโก้ OrcaRouter ถูกนำมาซ้อนประกอบไว้ที่มุมขวาล่าง
AI Safety Incidents

Plugin4Shell: AI Coding Agents สี่ตัวเชื่อใจ PIN ที่พวกเขาไม่เคยตรวจสอบ

ผู้เขียน

Alistair Wren

วันที่เผยแพร่

โมเดลล่าสุด · 20ดูโมเดลทั้งหมด →
เบนช์มาร์ก: Artificial Analysis · อัปเดตทุกวัน
กลับไปยังโพสต์ทั้งหมด

เมื่อวันที่ 17 กันยายน 2026 AIR Security สตาร์ทอัพที่สร้างเครื่องมือด้านความปลอดภัยสำหรับเอเจนต์ AI ระดับองค์กร ได้เผยแพร่งานวิจัยที่อธิบายถึง Plugin4Shell ซึ่งเป็นช่องโหว่การรันโค้ดจากระยะไกลแบบ zero-click ใน AI coding agent สี่ตัว ได้แก่ Claude Code ของ Anthropic, Codex ของ OpenAI, GitHub Copilot และ Gemini CLI ของ Google ข้อบกพร่องนี้ไม่ได้อยู่ในโมเดลใดเลย แต่เกิดจากการ checkout ด้วย git ที่แต่ละเอเจนต์ทำเมื่อติดตั้งปลั๊กอิน และเกิดจากข้อเท็จจริงที่ว่าทั้งสี่ตัวไม่ได้ตรวจสอบว่าโค้ดที่ได้รับเป็นโค้ดที่ตนได้ pin ไว้หรือไม่ สองในสี่ตัวมีแพตช์แล้วเมื่อถึงเวลาที่งานวิจัยเผยแพร่ต่อสาธารณะ ส่วนอีกสองตัวยังไม่มี เหตุการณ์นี้เป็นหนึ่งรายการใน Orca AI Incident Archive ซึ่งบันทึกไว้เป็นช่องโหว่ในห่วงโซ่อุปทานระดับความรุนแรงสูง โดยยังไม่มีรายงานการนำไปใช้ประโยชน์

สิ่งที่เอเจนต์ทำผิดจริง ๆ

เอเจนต์ที่ได้รับผลกระทบแต่ละตัวจะติดตั้งปลั๊กอินจากมาร์เก็ตเพลส และมาร์เก็ตเพลสแต่ละแห่งจะปักหมุดปลั๊กอินไว้ที่ git commit เฉพาะหนึ่ง — SHA ความยาว 40 ตัวอักษร — เมื่อปลั๊กอินนั้นผ่านการรีวิวแล้ว การปักหมุดดังกล่าวคือแบบจำลองความปลอดภัยทั้งหมด: ผู้รีวิวอนุมัติเวอร์ชันเดียวที่ไม่เปลี่ยนแปลงได้ และเอเจนต์ควรจะรันเวอร์ชันนั้นต่อไปแม้รีโพซิทอรีที่อยู่เบื้องหลังจะเปลี่ยนในภายหลัง AIR อธิบายข้อบกพร่องนี้ว่าเป็นการข้ามการปักหมุด SHA ของปลั๊กอิน เอเจนต์เช็กเอาต์ commit ที่แน่นอนซึ่งมาร์เก็ตเพลสปักหมุดไว้ แต่ไม่เคยตรวจสอบว่า working tree ที่ได้มานั้นเป็น commit นั้นจริง ในคำพูดของนักวิจัย เอเจนต์ "เช็กเอาต์ commit ที่แน่นอนซึ่งมาร์เก็ตเพลสปักหมุดไว้ แต่ไม่เคยตรวจสอบว่ามันไปลงเอยที่นั่นจริง ดังนั้นผู้โจมตีที่ควบคุมรีโพของปลั๊กอินทำให้การเช็กเอาต์ไปลงที่โค้ดอันตราย ในขณะที่การปักหมุดยังดูเหมือนได้รับความเคารพ"

Git เติมช่องว่างนี้ เมื่อชื่อหนึ่งเป็นทั้ง branch ที่ถูกต้องและ commit object git จะเลือก branch ก่อนและเพียงพิมพ์คำเตือนเรื่องความกำกวม ผู้โจมตีที่ควบคุม repository ของ plugin จะสร้าง branch ที่มีชื่อเป็น SHA แบบ 40 hex ที่ pin ไว้พอดี ชี้ไปที่โค้ดอันตราย และทำให้มันเป็น default branch ของ repository การ clone แบบธรรมดาจะดึง branch นั้นลงมาในเครื่องภายใต้ชื่อที่ดูเหมือน SHA และ checkout ที่ตามมาจะ resolve ไปยัง branch นั้น commit ที่ pin ไว้เองสามารถคงอยู่โดยไม่ถูกแตะต้อง ดังนั้นจึงไม่มีอะไรเกี่ยวกับเวอร์ชันที่ตรวจสอบแล้วดูผิดปกติ ตาม AIR ต้องมีเงื่อนไขสองข้อ: branch ที่ชื่อเป็น SHA ต้องเป็น default branch เพราะ branch ที่ไม่ใช่ default จะถูก fetch เพียงเป็น remote-tracking ref และ checkout จะ fallback ไปยัง commit จริง; และ git host ต้องยอมรับชื่อ branch แบบ 40 hex GitHub ปฏิเสธชื่อเหล่านั้นโดยตรง ส่วน Bitbucket และเซิร์ฟเวอร์ git ที่โฮสต์เองไม่ปฏิเสธ

Gemini CLI ล้มเหลวผ่านอีกเส้นทางหนึ่ง โดยมันดึงคอมมิตที่ปักหมุดไว้ บันทึกไว้ในไฟล์ FETCH_HEAD ของรีโพซิทอรี แล้วจึงรันการเช็กเอาต์ของ FETCH_HEAD — ซึ่งเป็นการเช็กเอาต์ที่ไม่จำเป็นต้องอ่านไฟล์ดังกล่าว รีโพซิทอรีที่แบรนช์เริ่มต้นมีชื่อว่า FETCH_HEAD เสียเอง จะเปลี่ยนเส้นทางการเช็กเอาต์ไปยังเนื้อหาที่ผู้โจมตีควบคุม และทิ้งคอมมิตที่ดึงมาโดยไม่แจ้งให้ทราบ คำอธิบายกลไกของ Cybersecurity News ตรงกับของ AIR รวมถึงความแตกต่างระหว่างสองรูปแบบย่อย

ทำไมไม่มีใครต้องคลิกอะไรเลย

checkout เดียวกันจะทำงานซ้ำอีกครั้งระหว่างการอัปเดตปลั๊กอินอัตโนมัติในเบื้องหลัง ซึ่งเป็นค่าเริ่มต้นใน Claude Code และ Codex นี่คือสิ่งที่ทำให้การโจมตีเป็นแบบ zero-click ไม่ใช่แค่เงียบ: เมื่อมาร์เก็ตเพลสเลื่อน SHA ที่ปักหมุดไว้ไปเป็นเวอร์ชันใหม่ตามปกติ เอเจนต์ทุกตัวที่ติดตั้งปลั๊กอินนั้นไว้แล้วจะรัน checkout ซ้ำโดยไม่มีพรอมป์และไม่มีการกระทำจากผู้ใช้ ประเด็นของ AIR คือเหยื่อไม่จำเป็นต้องติดตั้งอะไรอย่างประมาท พวกเขาเพียงต้องติดตั้งปลั๊กอินหนึ่งตัว จากมาร์เก็ตเพลสที่พวกเขาไว้วางใจ ซึ่งได้รับการตรวจสอบและปักหมุดไว้ตรงตามที่การออกแบบตั้งใจไว้

มีสองวิธีที่จะไปถึงตำแหน่งนั้น และไม่มีวิธีใดต้องควบคุมมาร์เก็ตเพลสเลย วิธีแรก ผู้โจมตีเผยแพร่ปลั๊กอินที่ปลอดภัยจริง ผ่านการตรวจสอบ สร้างฐานผู้ติดตั้ง ออกอัปเดตปกติ แล้วจึงสร้างสาขาที่ตั้งชื่อแบบเป็นอันตรายในภายหลัง วิธีที่สอง ผู้โจมตีเข้ายึดรีโพซิทอรีเบื้องหลังปลั๊กอินที่คนอื่นเขียนและที่มาร์เก็ตเพลสไว้วางใจอยู่แล้ว จากนั้นผลักเวอร์ชันอันตรายออกไปยังทุกคนที่ติดตั้งปลั๊กอินนั้นไว้

ตัวเลขเบื้องหลังสองเส้นทางนั้นมาจากงานก่อนหน้าของ AIR ไม่ได้มาจาก Plugin4Shell ในแคมเปญที่บริษัทเรียกว่า The Story of Skills ระบุว่าปลั๊กอินที่บริษัทสร้างขึ้นแพร่ไปยังเอเจนต์มากกว่า 26,000 รายก่อนถูกถอดออก ใน SkillJacking รายงานว่าสกิล 925 รายการที่ใช้งานอยู่แล้วถูกยึดจากผู้ดูแลเดิม โดยเข้าถึงเอเจนต์ 134,000 ราย พาดหัวของ AIR สำหรับโพสต์ Plugin4Shell อ้างว่า "เอเจนต์หลายล้านรายได้รับผลกระทบ" งานวิจัยไม่ได้ระบุจำนวนการติดตั้งที่ได้รับผลกระทบ และไม่มีบุคคลที่สามรายใดเผยแพร่จำนวนดังกล่าว

ไทม์ไลน์ และจุดที่มีการนำการแก้ไขไปใช้

HTML card headed 'Six weeks from proof of concept to public' with kicker 'Plugin4Shell · AIR Security · disclosure sequence'. A vertical timeline in cyan lists six dated entries: May 2026, working proof-of-concept against all four agents; June 2026, coordinated disclosure to Anthropic, OpenAI, Google and Microsoft; 17 June 2026, Anthropic confirms the fix in Claude Code 2.1.179; 4 August 2026, Google confirms no fix will ship because Gemini CLI is being deprecated; 12 August 2026, Codex 0.146.0 verified fixed; 17 September 2026, AIR Security publishes the research. A seventh entry in amber marks 18 September 2026, when The Register, Help Net Security, InfoWorld and Cybersecurity News reported it. An amber box headed 'Still open at publication' records that no CVE identifier had been assigned, no vendor security advisory had been published, and no source answers whether updating an affected agent removes a plugin that has already been swapped. A footer cites the AIR Security disclosure timeline and the outlets that reported it. The OrcaRouter logo is composited in the bottom-right corner.

AIR กล่าวว่าพบช่องโหว่ดังกล่าวในเดือนพฤษภาคม 2026 พร้อม Proof-of-Concept Exploit ที่ใช้งานได้กับเอเจนต์ทั้งสี่ตัว และได้เปิดเผยให้ผู้จำหน่ายแต่ละรายทราบในเดือนถัดไปภายใต้กระบวนการเปิดเผยแบบประสานงาน Anthropic ยืนยันการแก้ไขใน Claude Code 2.1.179 เมื่อวันที่ 17 มิถุนายน Google แจ้ง AIR เมื่อวันที่ 4 สิงหาคมว่าจะไม่มีการปล่อยการแก้ไข เนื่องจาก Gemini CLI กำลังจะถูกยกเลิก Codex 0.146.0 ได้รับการยืนยันว่าแก้ไขแล้วเมื่อวันที่ 12 สิงหาคม Microsoft ยังไม่ได้ปล่อยการแก้ไขสำหรับ GitHub Copilot

เวอร์ชันแพตช์เป็นสิ่งยืนยันต่อสาธารณะเพียงอย่างเดียวว่าช่องโหว่นั้นมีอยู่จริงในผลิตภัณฑ์ทั้งสองที่แก้ไขมัน บันทึกการเปลี่ยนแปลงที่ Anthropic เผยแพร่สำหรับ 2.1.179 ระบุถึงการจัดการการตัดการเชื่อมต่อ การเลื่อนหน้าจอใน WSL2 การแก้ไข glob ในแซนด์บ็อกซ์และอินเทอร์เฟซ และไม่ได้กล่าวถึงการปักหมุด การตรวจสอบปลั๊กอิน หรือการแก้ไขด้านความปลอดภัยใด ๆ Hacker News ให้ข้อสังเกตเดียวกัน ตามรายงานของ The Next Web ณ เวลาที่เผยแพร่งานวิจัย ยังไม่มีการกำหนดตัวระบุ CVE และบันทึกการวิจัยของ Cloud Security Alliance เกี่ยวกับช่องโหว่นี้ย้ำว่าไม่มีตัวระบุดังกล่าวอยู่สามเดือนหลังจากที่แจ้งผู้จำหน่ายแล้ว

ผู้ขายสี่ราย คำตอบที่แตกต่างกันสามแบบ

HTML card headed 'One flaw, four agents, two patches' with kicker 'Plugin4Shell · vendor status at disclosure · 17 September 2026'. A four-row table gives agent, vendor, status and mechanism variant: Claude Code from Anthropic, fixed in 2.1.179 on 17 June 2026, branch named as the pinned SHA; Codex from OpenAI, fixed in 0.146.0 and verified on 12 August 2026, same branch variant; GitHub Copilot from Microsoft, no fix shipped at disclosure, same branch variant; Gemini CLI from Google, no fix and the product deprecated as of 4 August 2026, separate FETCH_HEAD variant. A note beneath reads that the branch-named-as-a-hash variant needs a git host that accepts a 40-character branch name, which GitHub does not and Bitbucket and self-hosted git do, that background auto-update is on by default only for Claude Code and Codex, and that Antigravity, the replacement Google points to, has no marketplace plugin SHA pinning to bypass. A footer cites AIR Security, The Register and Help Net Security. The OrcaRouter logo is composited in the bottom-right corner.

Google ไปไกลกว่าการปฏิเสธที่จะแพตช์ โดยเลิกใช้ Gemini CLI ซึ่งหมายความว่าการติดตั้งที่มีอยู่ยังคงมีความเสี่ยงตราบใดที่ผู้คนยังคงใช้งานอยู่ คำแนะนำของบริษัทคือให้ย้ายไปยัง Antigravity ซึ่งเป็นสภาพแวดล้อมการพัฒนาแบบ agentic ที่ใหม่กว่า โดย AIR กล่าวว่าการโจมตีดังกล่าวไม่ส่งผลถึง Antigravity เพราะไม่มี marketplace plugin SHA pinning ให้ถูกเลี่ยงข้ามได้

จุดยืนของ GitHub ต่างออกไปอีกครั้ง โฆษกของ GitHub กล่าวกับ The Register ว่าแพลตฟอร์มไม่อนุญาตให้ผู้ใช้สร้างชื่อแบรนช์หรือแท็กที่คล้ายกับ commit SHA และกล่าวว่า "มาตรการบรรเทานี้ทำให้ช่องโหว่ที่รายงานไม่สามารถถูกใช้ประโยชน์บน GitHub ได้" AIR โต้แย้งขอบเขตของมาตรการบรรเทาดังกล่าวมากกว่าตัวมาตรการที่มีอยู่ โดยนักวิจัยกล่าวกับ The Register ว่ามาร์เก็ตเพลสสามารถโฮสต์บนแพลตฟอร์มอื่น เช่น Bitbucket ได้ และ GitHub Copilot ยังคงรองรับมาร์เก็ตเพลสจากแพลตฟอร์มเหล่านั้น ดังนั้นรูปแบบที่ใช้ชื่อแบรนช์จึงยังเข้าถึงได้สำหรับผู้ใช้ Copilot AIR ยังกล่าวอีกว่าเอกสารของ Anthropic เองระบุว่า Bitbucket และ git ที่โฮสต์เองเป็นแบ็กเอนด์มาร์เก็ตเพลสที่ใช้ได้ เอกสารมาร์เก็ตเพลสปัจจุบันของ Anthropic อธิบายการเพิ่มมาร์เก็ตเพลสจาก URL ของ git repository ไม่ใช่เฉพาะจาก GitHub Microsoft ไม่ตอบกลับคำขอความเห็นของ The Register และ AIR กล่าวว่าไม่ได้รับการตอบกลับจาก Microsoft นับตั้งแต่รายงานปัญหานี้ในเดือนมิถุนายน โดยอ้างถึงปริมาณการเปิดเผยข้อมูลที่บริษัทกำลังจัดการอยู่

นี่เป็นความเห็นที่ไม่ตรงกันเกี่ยวกับขอบเขตของความเสี่ยงที่ได้รับผลกระทบ ไม่ใช่เกี่ยวกับว่าบั๊กนั้นมีอยู่จริงหรือไม่ มาตรการบรรเทาผลกระทบของ GitHub เป็นการจำกัดในระดับโฮสต์ ส่วนสิ่งที่ AIR ค้นพบคือ การตรวจสอบต้องเกิดขึ้นภายในเอเจนต์ เนื่องจาก pin ถูก resolve ที่ฝั่งไคลเอนต์

สิ่งที่ได้รับการยืนยันแล้ว และสิ่งที่ยังไม่ได้รับการยืนยัน

• ยืนยันแล้ว: กลไกนี้ บทความของ AIR ให้คำสั่ง git ที่แน่ชัด กฎการ resolve แบบ ref-over-object เงื่อนไขสองข้อที่เทคนิค branch ต้องใช้ และตัวแปร FETCH_HEAD แยกต่างหากสำหรับ Gemini CLI ทั้ง The Register, Help Net Security, Cybersecurity News, InfoWorld และ The Next Web ต่างรายงานไปในทางเดียวกัน

• ยืนยันแล้ว: สองเวอร์ชันที่ได้รับการแพตช์แล้ว Anthropic ยืนยัน Claude Code 2.1.179 เมื่อวันที่ 17 มิถุนายน 2026 และตรวจสอบแล้วว่า Codex 0.146.0 ของ OpenAI ได้รับการแก้ไขเมื่อวันที่ 12 สิงหาคม 2026 ตามไทม์ไลน์การเปิดเผยข้อมูลของ AIR

• ยืนยันแล้ว:ผลิตภัณฑ์สองรายการไม่มีแพตช์ ณ เวลาที่เปิดเผย Google จะไม่แพตช์ Gemini CLI และกำลังปลดระวางผลิตภัณฑ์นี้ ส่วน Microsoft ยังไม่ได้ส่งแพตช์แก้ไขสำหรับ Copilot

• ยังไม่ได้รับการยืนยัน: การทำซ้ำอย่างอิสระ ทุกเรื่องราวที่เผยแพร่ล้วนสืบย้อนกลับไปยังโพสต์บล็อกของ AIR เอง และบันทึกการวิจัยของ Cloud Security Alliance ระบุอย่างชัดเจนว่าไม่ได้กล่าวถึงการตรวจสอบทางเทคนิคโดยบุคคลที่สามหรือการทำซ้ำช่องโหว่นี้อย่างอิสระ คลังข้อมูลจึงให้ระดับความเชื่อมั่นของบันทึกนี้ที่ B ด้วยเหตุผลดังกล่าว

• ยังไม่ได้รับการยืนยัน:มีจำนวนการติดตั้งเท่าใดที่ได้รับผลกระทบจริง "หลายล้าน" เป็นการระบุลักษณะโดย AIR ในพาดหัวข่าว ไม่ใช่ตัวเลขที่วัดได้

• ยังไม่เป็นที่แน่ชัด:ว่าการอัปเดตเอเจนต์ที่ได้รับผลกระทบจะลบปลั๊กอินที่ถูกสลับไปแล้ว หรือเพียงป้องกันการสลับครั้งถัดไป ไม่มีแหล่งข้อมูลที่เผยแพร่ใดให้คำตอบเรื่องนี้ได้

• ยังไม่เป็นที่ยืนยัน:การใช้งานในโลกจริงใด ๆ ไม่มีแหล่งข้อมูลใดในบันทึกที่รายงานถึงการโจมตีโดยใช้ช่องโหว่ การโพรบ หรือโครงสร้างพื้นฐานของผู้โจมตี และคลังเก็บถาวรบันทึกว่าความเสียหายที่เกิดขึ้นจริงนั้นเป็นเท็จ นั่นคือการไม่มีรายงาน ไม่ใช่หลักฐานว่าไม่มีอะไรเกิดขึ้น

การตรวจสอบจากบุคคลที่สามรายหนึ่งช่วยทำให้ภาพในทางปฏิบัติแคบลงจริง ๆ The Next Web ซึ่งสรุปผลการตรวจสอบของ The Hacker News รายงานว่า ปลั๊กอินในแคตตาล็อกชุมชนของ Anthropic และในแคตตาล็อกเริ่มต้นของ Claude Code และ Copilot ชี้ไปยังรีโพซิทอรี GitHub และการอัปเดตอัตโนมัติเปิดเป็นค่าเริ่มต้นโดยหลักสำหรับมาร์เก็ตเพลสในตัวเหล่านั้น เนื่องจาก GitHub ปฏิเสธชื่อแบรนช์ที่อยู่ในรูป SHA ความแปรผันแบบใช้ชื่อแบรนช์จึงเข้าถึงได้ยากขึ้นสำหรับผู้ใช้ที่อยู่ในแคตตาล็อกเริ่มต้น เหตุผลนั้นไม่ครอบคลุมความแปรผันแบบ FETCH_HEAD ของ Gemini CLI ซึ่งไม่ขึ้นอยู่กับวิธีที่โฮสต์ตั้งชื่อแบรนช์

การแก้ไขต้องมีลักษณะอย่างไร

Abstract technical illustration on a dark navy field: a white hexagonal badge floats at the top centre, and from it a single white line descends through three translucent horizontal planes, passing through the middle of each. At the lowest plane the line passes a small hollow white ring, then splits — one branch continues straight down to a filled white dot on the plane, the other turns amber and runs off to the left, ending at a small dark unlit block that sits outside the stack. A faint pale outline of that block is drawn on the plane where it should have sat. No text, people or organisation logos appear. The OrcaRouter logo is composited in the bottom-right corner.

ข้อเสนอการแก้ไขของ AIR คือการยืนยันเพียงครั้งเดียว: หลังจาก checkout ให้ resolve commit ที่มีอยู่จริงในเวิร์กกิงทรี แล้วยกเลิกการทำงาน เว้นแต่จะตรงกับ SHA ที่ปักหมุดไว้ นักวิจัยเน้นย้ำว่าต้องตรวจสอบ HEAD ที่ resolve แล้ว ไม่ใช่ ref ที่ถูกร้องขอ เพราะความแตกต่างนี้เองคือช่องที่ตัวแปร Gemini CLI ลอดผ่านไปได้ และต้องรันอยู่ภายใน agent เพราะ pin ถูก resolve ที่ฝั่งไคลเอนต์ และไม่มีมาร์เก็ตเพลสใดสามารถบังคับใช้การรับประกันที่มันโฆษณาไว้ได้

คำแนะนำที่นำไปใช้ได้จริงสำหรับทีมที่ใช้งานเอเจนต์เหล่านี้ โดยรวบรวมจาก AIR, Cybersecurity News และบทวิเคราะห์จากนักวิเคราะห์ใน InfoWorld:

• อัปเดต Claude Code เป็น 2.1.179 หรือใหม่กว่า และ Codex เป็น 0.146.0 หรือใหม่กว่า การอัปเดตเป็นมาตรการบรรเทาผลกระทบอย่างสมบูรณ์เพียงวิธีเดียวในกรณีที่มีแพตช์ให้ใช้งาน

• ปิดใช้งานการอัปเดตปลั๊กอินอัตโนมัติบนเอเจนต์ใดก็ตามที่ยังไม่มีแพตช์ ซึ่งจะช่วยลดช่องโหว่จากการถูกโจมตีแบบ zero-click ให้เหลือเพียงการติดตั้งใหม่ด้วยตนเอง ซึ่งเป็นการลดความเสี่ยงที่ต้องเผชิญมากกว่าจะเป็นการแก้ไขอย่างแท้จริง

• ย้ายออกจาก Gemini CLI แทนที่จะรอแพตช์ที่ Google ระบุว่าจะไม่มีออกมา

• ตรวจสอบรายการปลั๊กอินและจำกัดแหล่งมาร์เก็ตเพลสเมื่อทำได้ AIR ตั้งข้อสังเกตว่านักการตลาดสามารถลดทอนตัวแปรแบบใช้ชื่อแบรนช์ได้โดยอนุญาตเฉพาะโฮสต์ที่ปฏิเสธชื่อในรูปแบบ SHA ซึ่งเท่ากับจำกัดเฉพาะ GitHub แต่การทำเช่นนี้แบนโฮสต์ที่เอเจนต์รองรับอย่างเป็นทางการ และไม่ช่วยอะไรกับตัวแปร Gemini

• มองเวิร์กสเตชันเป็นขอบเขตการเปิดรับความเสี่ยง ปลั๊กอินสืบทอดสิทธิ์ของเอเจนต์ ดังนั้นการโจมตีที่สำเร็จสามารถเข้าถึงซอร์สโค้ด คีย์ SSH ข้อมูลรับรองคลาวด์ โทเค็น CI/CD และคลังเก็บโค้ดภายในด้วยสิทธิ์ของนักพัฒนาเอง Pareekh Jain นักวิเคราะห์หลักของ Pareekh Consulting กล่าวกับ InfoWorld ว่าทีมความปลอดภัยควรตรวจสอบบันทึกของ EDR, git, CI/CD, cloud IAM และการยืนยันตัวตน เพื่อหากระบวนการผิดปกติ ไฟล์ปลั๊กอินที่ไม่คาดคิด คลังเก็บโค้ดที่เปลี่ยนแปลง และกิจกรรม git ที่น่าสงสัย — และเสริมว่าขั้นตอนเหล่านี้ลดความเสี่ยงได้โดยไม่แก้ไขช่องโหว่พื้นฐาน ซึ่งเขามองว่าเกิดจากโค้ดของผู้จำหน่าย "องค์กรสามารถวางมาตรการควบคุมการใช้งานปลั๊กอินได้" เขากล่าวกับ InfoWorld "แต่ไม่สามารถแก้ไขช่องโหว่ในวิธีการที่เอเจนต์เขียนโค้ดตรวจสอบโค้ดที่มันเช็กเอาต์มาได้"

ทำไมบั๊กเกี่ยวกับการปักหมุด (pinning) ถึงเป็นตัวที่สำคัญ

การปักหมุดด้วย SHA คือคำตอบของอุตสาหกรรมต่อการยึดครองในลักษณะเดียวกับที่ AIR ได้แสดงให้เห็นแล้ว: หากที่เก็บสาธารณะถูกบุกรุก เอเจนต์จะยังคงรันแฮชที่ผ่านการตรวจสอบแล้ว แทนที่จะดึงสิ่งที่ผู้โจมตีผลักเข้ามา Plugin4Shell ไม่ได้ทำให้แฮชแตกหัก แต่แสดงให้เห็นว่าเอเจนต์ตีความค่าที่ปักหมุดไปเป็นชื่อสาขาที่เพียงแต่ดูคล้ายแฮช และไม่เคยเปรียบเทียบผลลัพธ์ที่ได้ ทุกสิ่งปลายน้ำของสมมติฐานนั้น — กระบวนการรีวิว รายการอนุญาตภายใน และความมั่นใจที่นักพัฒนามีต่อเวอร์ชันที่ปักหมุดไว้ — ล้วนสืบทอดความล้มเหลวนี้

สิ่งที่บันทึกไม่สนับสนุนคือข้อกล่าวอ้างว่ามีสิ่งใดถูกนำไป นี่คือช่องโหว่ที่ถูกค้นพบและได้รับการแก้ไขในสองจากสี่กรณี ไม่มีแหล่งข้อมูลใดในบันทึกดังกล่าวรายงานการบุกรุก และผลิตภัณฑ์ที่ยังไม่ออกแพตช์ก็ยังคงรออยู่ คำถามที่ยังไม่มีคำตอบคือข้อที่น่าพอใจน้อยที่สุด สำหรับใครก็ตามที่รันปลั๊กอินบนเอเจนต์ที่ยังไม่ได้แพตช์ ไม่มีวิธีที่เผยแพร่ต่อสาธารณะในการบอกได้ว่าโค้ดที่รันไปนั้นเป็นโค้ดที่พวกเขาอนุมัติหรือไม่

© 2026 OrcaRouter

สำหรับผู้ให้บริการ

ให้บริการแพลตฟอร์มการอนุมานอยู่หรือไม่ นำโมเดลของคุณขึ้น OrcaRouter

[email protected]

เข้าร่วมคอมมูนิตี้ของเรา

Discord[email protected]XLinkedInGitHubYouTube