أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق. استهدفت Heapjack مساعد node repl المُعدّ عالمياً وذاكرة V8 المشتركة، بينما استغلت 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
كان الهدف من بيئة العزل (Sandbox) في Codex هو تقييد ما يستطيع وكيل البرمجة المعتمد على الذكاء الاصطناعي قراءته وكتابته وتشغيله. لكن بحثَي Heapjack وOverpatch من Accomplish أظهرا أن هذا الحد يمكن تجاوزه حين يشارك مكوّن موثوق سراً مع شيفرة غير موثوقة، أو حين يستمد امتيازاته من مدخلات يتحكم بها المهاجم. وقد أُبلغ عن الثغرتين باعتبارهما مُصححتين. 4
8
أثرت Heapjack في تكامل node_repl الذي يثبته Codex Desktop. ووفق الباحثين، وضع تطبيق سطح المكتب إعداد خادم MCP في الملف العام ~/.codex/config.toml، ما يعني أن جلسات سطر الأوامر التي تستخدم هذا الإعداد المشترك قد ترث المساعد أيضاً. 8
9
كان موضع الإخفاق في الفصل داخل بيئة JavaScript الخاصة بالمساعد:
ولأن العملية الأم كانت تعمل خارج بيئة العزل، فقد يفضي ذلك إلى إجراءات على مستوى الجهاز المضيف، بما فيها تنفيذ أوامر، حتى عندما يكون Codex ظاهرياً في وضع القراءة فقط. لا تكمن المشكلة في تشغيل JavaScript بحد ذاته، بل في أن الاعتماد الذي يميز العمل الموثوق من غير الموثوق كان موجوداً في ذاكرة متاحة للطرف غير الموثوق. 8
15
كانت Overpatch ثغرة في Codex CLI ضمن أداة apply_patch عند استخدام وضع الكتابة داخل مساحة العمل. يفترض أن تحصر الأداة التعديلات داخل مساحة العمل، لكن منطق التفويض فيها منح نطاق الكتابة وفق المجلدات الأب للمسارات الواردة في الرقعة نفسها. 4
وهذا جعل مسارات الرقعة مدخلات حساسة أمنياً. وقد وصفت Accomplish نموذج إثبات مفهوم يؤدي فيه مسار غير مؤثر في الأصل، مثل /tmp، إلى اتساع الإذن حتى جذر نظام الملفات. ثم اتبع تعديل آخر في الرقعة رابطاً رمزياً يتحكم فيه المستودع لتغيير ملف خارج مساحة العمل، بما يشمل ملف بدء صدفة الأوامر في مجلد المستخدم الرئيسي. 4
9
كان الأثر الأمني مؤجلاً لكنه مهم: فالشيفرة الموضوعة في ملف بدء صدفة الأوامر يمكن تنفيذها خارج عزل الوكيل عند فتح المطور طرفية لاحقاً. ولم يتطلب هذا التجاوز مطالبة الموافقة المعتادة للإجراء الناتج على الجهاز المضيف. 4
7
سلكت Heapjack وOverpatch مسارين تقنيين مختلفين، لكنهما تكشفان المشكلة التصميمية نفسها: آلية الإنفاذ وثقت ببيانات يمكن للطرف غير الموثوق الوصول إليها أو التأثير فيها.
| الثغرة | ما الذي مُنح الثقة؟ | لماذا فشل الحد الأمني؟ |
|---|---|---|
| Heapjack | رمز تفويض داخل كومة V8 مشتركة | استطاعت شيفرة غير موثوقة استرجاع السر المستخدم للتمييز بين الطلبات الموثوقة وغيرها. |
| Overpatch | مسارات مقدمة في رقعة يتحكم بها الوكيل | أثرت هذه المسارات في نطاق صلاحيات الكتابة بدلاً من أن تصف التعديل المقصود فقط. |
هذه حالة من نمط النائب الملتبس (Confused Deputy): مكوّن أو وسيط أعلى امتيازاً ينفذ إجراءً نيابة عن مدخلات أقل موثوقية، من دون تحقق آمن من السلطة أو الهدف النهائي. لذلك لا يكفي عزل صدفة أوامر الوكيل وحدها إذا بقيت المساعدات والرموز والإعدادات والعمليات الفرعية المنسِّقة ذات امتيازات أعلى، أو قابلة للتأثر بمحتوى المستودع.
كانت اكتشافات أخرى في عام 2026 لهروب وكلاء البرمجة من العزل مختلفة تقنياً، لكنها متشابهة معمارياً. وصفت تقارير Accomplish المسماة Beltdown وBeltdown2 صدفة وكيل معزولة، بينما كانت أوامر Git الداخلية التي ينفذها إطار التشغيل المحيط تعمل خارج العزل. ويمكن لملف .git/config في المستودع استخدام إعداد Git المسمى core.fsmonitor ليجعل Git يشغّل مساعداً محدداً عند فحص شجرة العمل. 17
18
وأطلقت Manifold Security على هذه الفئة الأوسع اسم GitSpawn: إذ قد يدفع إعداد Git يتحكم فيه المستودع إلى تنفيذ شيفرة يختارها المهاجم بمجرد أن يفحص الوكيل المشروع، وربما قبل قرار موافقة أو ثقة فعلي. 20
21
والخلاصة ليست أن كل مستودع خطر تلقائياً في كل سير عمل، بل وجوب التعامل مع المستودعات كمدخلات قد تكون نشطة عند فحص البيانات الوصفية أو حل الروابط الرمزية أو تطبيق الرقع أو تشغيل الخطافات أو إطلاق العمليات المساعدة. فحد الثقة في منتج وكيل البرمجة يشمل كل هذه المسارات، لا أداة الأوامر الظاهرة فقط.
الإصدارات الدنيا المُبلغ عنها كإصدارات مُصححة هي:
وقالت Accomplish إنها أبلغت OpenAI بالثغرتين في 12 أغسطس 2026، وإن الإصلاحات وصلت خلال ثمانية أيام. 9
.git الوصفية؛ فالاستنساخ المعتاد لا ينقل عادةً ملف .git/config المحلي الخاص بالمستودع البعيد. الخلاصة العملية: ثبّت تحديثات مكوّنات Codex المتأثرة، لكن لا تعتمد على عزل داخل العملية بوصفه الحاجز الوحيد بين مستودع غير مألوف وجهاز المطور.
Studio Global AI
تتضمن هذه الصفحة إجابة مدعومة بالمصدر يمكنك المتابعة داخل Studio Global.
أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق.
أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق. استهدفت Heapjack مساعد node repl المُعدّ عالمياً وذاكرة V8 المشتركة، بينما استغلت Overpatch صلاحيات apply patch المحسوبة من مسارات رقعة يتحكم بها المهاجم وروابط رمزية.
تختلف حالات الهروب الأخرى المرتبطة بإعدادات Git تقنياً، لكنها تكشف الخلل المعماري نفسه: مسار تنسيق أو تشغيل غير معزول يثق بمدخلات يتحكم بها المستودع.
أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق. استهدفت Heapjack مساعد node repl المُعدّ عالمياً وذاكرة V8 المشتركة، بينما استغلت 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
كان الهدف من بيئة العزل (Sandbox) في Codex هو تقييد ما يستطيع وكيل البرمجة المعتمد على الذكاء الاصطناعي قراءته وكتابته وتشغيله. لكن بحثَي Heapjack وOverpatch من Accomplish أظهرا أن هذا الحد يمكن تجاوزه حين يشارك مكوّن موثوق سراً مع شيفرة غير موثوقة، أو حين يستمد امتيازاته من مدخلات يتحكم بها المهاجم. وقد أُبلغ عن الثغرتين باعتبارهما مُصححتين. 4
8
أثرت Heapjack في تكامل node_repl الذي يثبته Codex Desktop. ووفق الباحثين، وضع تطبيق سطح المكتب إعداد خادم MCP في الملف العام ~/.codex/config.toml، ما يعني أن جلسات سطر الأوامر التي تستخدم هذا الإعداد المشترك قد ترث المساعد أيضاً. 8
9
كان موضع الإخفاق في الفصل داخل بيئة JavaScript الخاصة بالمساعد:
ولأن العملية الأم كانت تعمل خارج بيئة العزل، فقد يفضي ذلك إلى إجراءات على مستوى الجهاز المضيف، بما فيها تنفيذ أوامر، حتى عندما يكون Codex ظاهرياً في وضع القراءة فقط. لا تكمن المشكلة في تشغيل JavaScript بحد ذاته، بل في أن الاعتماد الذي يميز العمل الموثوق من غير الموثوق كان موجوداً في ذاكرة متاحة للطرف غير الموثوق. 8
15
كانت Overpatch ثغرة في Codex CLI ضمن أداة apply_patch عند استخدام وضع الكتابة داخل مساحة العمل. يفترض أن تحصر الأداة التعديلات داخل مساحة العمل، لكن منطق التفويض فيها منح نطاق الكتابة وفق المجلدات الأب للمسارات الواردة في الرقعة نفسها. 4
وهذا جعل مسارات الرقعة مدخلات حساسة أمنياً. وقد وصفت Accomplish نموذج إثبات مفهوم يؤدي فيه مسار غير مؤثر في الأصل، مثل /tmp، إلى اتساع الإذن حتى جذر نظام الملفات. ثم اتبع تعديل آخر في الرقعة رابطاً رمزياً يتحكم فيه المستودع لتغيير ملف خارج مساحة العمل، بما يشمل ملف بدء صدفة الأوامر في مجلد المستخدم الرئيسي. 4
9
كان الأثر الأمني مؤجلاً لكنه مهم: فالشيفرة الموضوعة في ملف بدء صدفة الأوامر يمكن تنفيذها خارج عزل الوكيل عند فتح المطور طرفية لاحقاً. ولم يتطلب هذا التجاوز مطالبة الموافقة المعتادة للإجراء الناتج على الجهاز المضيف. 4
7
سلكت Heapjack وOverpatch مسارين تقنيين مختلفين، لكنهما تكشفان المشكلة التصميمية نفسها: آلية الإنفاذ وثقت ببيانات يمكن للطرف غير الموثوق الوصول إليها أو التأثير فيها.
| الثغرة | ما الذي مُنح الثقة؟ | لماذا فشل الحد الأمني؟ |
|---|---|---|
| Heapjack | رمز تفويض داخل كومة V8 مشتركة | استطاعت شيفرة غير موثوقة استرجاع السر المستخدم للتمييز بين الطلبات الموثوقة وغيرها. |
| Overpatch | مسارات مقدمة في رقعة يتحكم بها الوكيل | أثرت هذه المسارات في نطاق صلاحيات الكتابة بدلاً من أن تصف التعديل المقصود فقط. |
هذه حالة من نمط النائب الملتبس (Confused Deputy): مكوّن أو وسيط أعلى امتيازاً ينفذ إجراءً نيابة عن مدخلات أقل موثوقية، من دون تحقق آمن من السلطة أو الهدف النهائي. لذلك لا يكفي عزل صدفة أوامر الوكيل وحدها إذا بقيت المساعدات والرموز والإعدادات والعمليات الفرعية المنسِّقة ذات امتيازات أعلى، أو قابلة للتأثر بمحتوى المستودع.
كانت اكتشافات أخرى في عام 2026 لهروب وكلاء البرمجة من العزل مختلفة تقنياً، لكنها متشابهة معمارياً. وصفت تقارير Accomplish المسماة Beltdown وBeltdown2 صدفة وكيل معزولة، بينما كانت أوامر Git الداخلية التي ينفذها إطار التشغيل المحيط تعمل خارج العزل. ويمكن لملف .git/config في المستودع استخدام إعداد Git المسمى core.fsmonitor ليجعل Git يشغّل مساعداً محدداً عند فحص شجرة العمل. 17
18
وأطلقت Manifold Security على هذه الفئة الأوسع اسم GitSpawn: إذ قد يدفع إعداد Git يتحكم فيه المستودع إلى تنفيذ شيفرة يختارها المهاجم بمجرد أن يفحص الوكيل المشروع، وربما قبل قرار موافقة أو ثقة فعلي. 20
21
والخلاصة ليست أن كل مستودع خطر تلقائياً في كل سير عمل، بل وجوب التعامل مع المستودعات كمدخلات قد تكون نشطة عند فحص البيانات الوصفية أو حل الروابط الرمزية أو تطبيق الرقع أو تشغيل الخطافات أو إطلاق العمليات المساعدة. فحد الثقة في منتج وكيل البرمجة يشمل كل هذه المسارات، لا أداة الأوامر الظاهرة فقط.
الإصدارات الدنيا المُبلغ عنها كإصدارات مُصححة هي:
وقالت Accomplish إنها أبلغت OpenAI بالثغرتين في 12 أغسطس 2026، وإن الإصلاحات وصلت خلال ثمانية أيام. 9
.git الوصفية؛ فالاستنساخ المعتاد لا ينقل عادةً ملف .git/config المحلي الخاص بالمستودع البعيد. الخلاصة العملية: ثبّت تحديثات مكوّنات Codex المتأثرة، لكن لا تعتمد على عزل داخل العملية بوصفه الحاجز الوحيد بين مستودع غير مألوف وجهاز المطور.
Studio Global AI
تتضمن هذه الصفحة إجابة مدعومة بالمصدر يمكنك المتابعة داخل Studio Global.
أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق.
أتاحت Heapjack وOverpatch تجاوز حدود Codex المقصودة، بما قد يؤدي إلى إجراءات على الجهاز المضيف انطلاقاً من مستودع غير موثوق. استهدفت Heapjack مساعد node repl المُعدّ عالمياً وذاكرة V8 المشتركة، بينما استغلت Overpatch صلاحيات apply patch المحسوبة من مسارات رقعة يتحكم بها المهاجم وروابط رمزية.
تختلف حالات الهروب الأخرى المرتبطة بإعدادات Git تقنياً، لكنها تكشف الخلل المعماري نفسه: مسار تنسيق أو تشغيل غير معزول يثق بمدخلات يتحكم بها المستودع.