بحث

اكتشفت OpenAI ثغرة في Brotli قابلة للاستغلال عن بُعد، ويفتح Claude Code 2.1.310 أداة Monitor أمام Bedrock، ويحتسب Copilot أدوات الأطراف الثالثة

مقال من إنشاء الذكاء الاصطناعي
اكتشفت OpenAI ثغرة في Brotli قابلة للاستغلال عن بُعد، ويفتح Claude Code 2.1.310 أداة Monitor أمام Bedrock، ويحتسب Copilot أدوات الأطراف الثالثة

ai-powered-markdown-translator

مقال مترجم من الفرنسية إلى العربية باستخدام gpt-6.1-sol.

عرض المشروع على GitHub ↗

خلال اختبار عزل بيئة التدريب الخاصة بها، اكتشفت OpenAI في Brotli، مكتبة الضغط المضمّنة في Node.js وBun وEnvoy، ثغرة تتيح تنفيذ تعليمات برمجية عن بُعد دون مصادقة، تحمل المعرّف CVE-2026-111497 وقد أُصلحت الآن: اكتشاف لم تذكره تدوينتها المنشورة في اليوم السابق. وفي مجال وكلاء البرمجة، يفتح Claude Code 2.1.310 أداة Monitor أمام Bedrock وVertex وFoundry، وتضيف النسخة الليلية من Gemini CLI إمكانية سرد نماذجها بصيغة JSON، وينتقل Qwen Code إلى v0.26.1. وأخيرًا، باتت GitHub تحتسب ضمن واجهة API لمقاييس Copilot طلبات أدوات الأطراف الثالثة مثل OpenCode وClaude Code وCodex.


اكتشفت OpenAI في Brotli ثغرة لتنفيذ تعليمات برمجية عن بُعد دون مصادقة، وأُصلحت في Node.js وBun وEnvoy

23 أكتوبر — في مساء نشر تدوينتها عن تأمين بيئة تدريب نماذجها المتقدمة، التي تناولناها هنا أمس، أضافت OpenAI على X معلومة لم ترد فيها. فخلال حملة الهجوم المحاكى نفسها (red teaming)، اكتشفت الشركة ثغرة لتنفيذ تعليمات برمجية عن بُعد دون مصادقة في Brotli، وهي مكتبة ضغط مدمجة في برامج كثيرة. تكفي بيانات مضغوطة خبيثة، دون إنشاء حساب، ويمكن تنفيذ الهجوم في الاتجاهين.

That is, an unpatched server that accepts compressed input could be taken over by a malicious client, and an unpatched client that accepts compressed input (such as “curl —compressed”) could be taken over by a malicious server.

🇸🇦 بعبارة أخرى، يمكن لعميل خبيث السيطرة على خادم لم يُصحَّح ويقبل بيانات مضغوطة، كما يمكن لخادم خبيث السيطرة على عميل لم يُصحَّح ويقبل بيانات مضغوطة (مثل « curl —compressed »). — @OpenAI على X

كان السبب الجذري قد أُصلح في الشيفرة المصدرية لـBrotli منذ فبراير، من دون أن يتعرف إليه أحد بوصفه ثغرة، ولم يصدر أي إصدار منذ ذلك الحين. أبلغت OpenAI مشروع Brotli ومشاريع تعتمد عليه مثل Node.js؛ فنشر Brotli إصدارات جديدة والثغرة ذات المعرّف CVE-2026-111497. وبحسب الصفحة التي خصصها Patch the Planet للثغرة، ينسب التنبيه الأمني لـNode.js الإبلاغ عنها إلى فريق Codex Security في OpenAI. ولا يتأثر Envoy وIstio إلا إذا ضُبطا لفك ضغط Brotli؛ وقد تؤدي الثغرة أيضًا إلى تعطل عملية أو كشف محتويات الذاكرة، ولا تعرض الصفحة أي درجة CVSS.

البرنامج المتأثرالإصدارات المصححة
Node.js22.23.4, 24.22.1 و26.12.1
Bun1.4.4 (مع Brotli 1.2.1)
Envoy Proxy1.40.0, 1.39.3, 1.38.6 و1.37.8
Istio1.29.9 (فرع انتهى دعمه), 1.30.6 و1.31.2
Google Brotli (المشروع المصدر)1.0.10, 1.1.1 و1.2.1

إذا تعذّر التحديث الفوري، توصي الصفحة بتعطيل فك ترميز Brotli للبيانات غير الموثوقة مع الإبقاء على gzip أو deflate: رفض طلبات Content-Encoding: br قبل أي فك ضغط، وتعطيل فك الضغط التلقائي لدى عملاء HTTP ومرشحات Brotli في Envoy وIstio. ولا يكفي تعطيل ضغط Brotli للاستجابات على شبكة CDN. وقد وردت هذه الثغرة هنا بالفعل ضمن ثغرات Node.js التي تستهدفها إضافة Cognition (22 أكتوبر)، ثم في رد Replit (23 أكتوبر)، من دون ذكر OpenAI بوصفها الجهة التي اكتشفتها.

🔗 صفحة Patch the Planet عن ثغرة Brotli


وكلاء البرمجة: Claude Code 2.1.310 وGemini CLI وQwen Code 0.26.1

يصدر ثلاثة وكلاء برمجة يعملون من سطر الأوامر إصدارات خلال أقل من أربع وعشرين ساعة: دعم مزوّدي الأطراف الثالثة في Claude Code، والتحكم في الوكيل في Gemini CLI، وخدمة الخلفية والمهام المجدولة في Qwen Code.

يفتح Claude Code 2.1.310 أداة Monitor أمام Bedrock وVertex وFoundry ويصلح 14 مشكلة

23 أكتوبر — يصل Claude Code 2.1.310 إلى npm في الساعة 21:20 UTC، ثم يصدر على GitHub في الساعة 23:39 UTC، مع 26 بندًا منها 14 إصلاحًا. كانت أداة Monitor، التي تشغّل أمرًا في الخلفية وترسل كل سطر من مخرجاته إلى Claude ليستجيب لسجل أو لتغيير في ملف، موجودة منذ أبريل: وهي تعمل الآن على Amazon Bedrock وVertex وMicrosoft Foundry، شأنها شأن مراقبات الإضافات (plugin monitors)، وكذلك عند تعطيل بيانات القياس عن بُعد أو حركة البيانات غير الضرورية. وعند العمل عبر بعض البوابات التي ترفض القيمة التجريبية effort-2025-11-24 أو رسائل النظام أثناء المحادثة، يعيد Claude Code المحاولة الآن من دونها، كما أن ضغط السياق الذي يلي خطأ Prompt is too long لم يعد يحتفظ بقدر مفرط من النص الكثيف (base64 وSVG). وعلى Windows، يعالج أحد الإصلاحات مسألة أمنية: كانت خطافات PreToolUse وPermissionRequest تسمح بمرور استدعاء أداة عند غياب Git Bash واقتصار أمر الخطاف على سلاسل بين علامات اقتباس. وعلى Linux، يحدد /sandbox قيد AppArmor في Ubuntu الذي يمنع bubblewrap من البدء، مع توضيح طريقة رفعه. وتُضاف أذونات الجلسات السحابية وRemote Control إلى الأدوار المخصصة في Enterprise، ويتلقى Claude Tag ثلاثة إصلاحات، وتتوافق حزمتا SDK Agent بإصداري TypeScript 0.3.310 وPython 0.2.174 مع هذا الإصدار.

🔗 ملاحظات إصدار Claude Code 2.1.310

Gemini CLI: النسخة الليلية ليوم 24 أكتوبر تسرد النماذج بصيغة JSON وتحترم الإلغاء بمفتاح الهروب

24 أكتوبر — نُشرت النسخة الليلية v0.67.0 ليوم 24 أكتوبر في الساعة 01:15 UTC، وتضم خمسة طلبات PR دُمجت في اليوم السابق. وإضافتها الجديدة الوحيدة، gemini models (أو الخيار --list-models)، تسرد النماذج المتاحة للإعداد الحالي مع معرّفاتها وأسمائها وأوصافها وحدود السياق فيها؛ ومع -o json، تُرجع مصفوفة يمكن معالجتها ببرنامج نصي، دون سجلات مصادقة على المخرج القياسي، بحيث يمكن وصلها بـjq. وهي تلبي طلبًا فُتح في 11 يونيو. ويخص إصلاحان التحكم في الوكيل: كان الإلغاء بمفتاح الهروب مباشرة بعد مجموعة من استدعاءات الأدوات يعرض Request cancelled، لكن الوكيل كان يستأنف العمل ويشغّل أوامر shell جديدة (PR 29868)؛ وفي بيئة IDE مفتوحة على عدة مجلدات جذر أو على مجلد أب، تُحل المسارات النسبية الآن بالاستناد إلى مساحة عمل الملف النشط، بعدما كانت CLI قد تكتب في مستودع مجاور (PR 29838). وأخيرًا، يحوّل gemini hooks migrate --from-claude مهل خطافات Claude Code من ثوانٍ إلى مللي ثانية: كان الخطاف المضبوط على 30 ثانية يُوقف بعد 30 مللي ثانية. ويظل الإصدار المستقر v0.65.0 والإصدار التجريبي v0.66.0-preview.0 دون تغيير.

🔗 Gemini CLI v0.67.0-nightly.20261024 على GitHub

يحتفظ Qwen Code v0.26.1 برمز خدمة الخلفية ويجعل المهام المجدولة مشروطة بأمر shell

24 أكتوبر — بعد ثلاثة أيام من v0.26.0، ينتقل Qwen Code إلى الإصدار المستقر v0.26.1 مع 41 ميزة و63 إصلاحًا وتغيير واحد فقط يكسر التوافق، يقتصر على قناة QQ Bot. وعند الطلب، يحتفظ qwen daemon start --save-token برمز الوصول لخدمة الخلفية في ملف لا يستطيع قراءته إلا مالكه، ويمكن لمهمة مجدولة أن تعتمد على أمر shell يُنفّذ خارج النموذج، ما يوفّر أساسًا لمجسّات تراقب طلبات السحب ولأمر /autofix-pr. ويحصل Managed Agent على ضغط يدوي للسياق وإدارة خوادم MCP دون إعادة إنشاء الجلسات؛ وينتقل الدعم الرسمي لـDeepSeek إلى deepseek-flash.

🔗 Qwen Code v0.26.1 على GitHub


تحتسب واجهة API لمقاييس استخدام Copilot طلبات OpenCode وClaude Code وCodex وغيرها من أدوات الأطراف الثالثة

23 أكتوبر — تقيس واجهة API لمقاييس استخدام GitHub Copilot الآن طلبات النماذج التي ترسلها أدوات خارج المحرر عبر Copilot، مثل OpenCode وClaude Code وCodex أو Zed. وغالبًا لا ترسل هذه الأدوات بيانات قياس من المحرر، لذلك كان استخدامها يغيب عن totals_by_ide؛ ويجري الاحتساب الآن على جانب الخادم، ضمن مصفوفة جديدة باسم totals_by_client في تقارير المؤسسة والمنظمة ولكل مستخدم، لفترتي 1 يوم و28 يومًا.

حقل في totals_by_clientما يقيسه
clientالأداة المُرسِلة: opencode, claude_code, codex, zed, copilot_cli, vscode, jetbrains… (الأدوات غير المعروفة ضمن other)
request_countطلبات النماذج الناجحة
session_countالجلسات المتميزة
token_usageرموز الموجّه والمخرجات، مع المتوسط لكل طلب
totals_by_modelالمقاييس نفسها لكل نموذج، مع نمط الاختيار: user_selected أو auto أو product_selected

توضح GitHub نفسها القيود: قد يؤدي موجّه واحد إلى عدة استدعاءات للنموذج، لذلك لا يمكن مقارنة request_count بعدد الموجّهات؛ ويُتعرّف إلى العميل بأفضل جهد ممكن (best-effort) عبر معرّف التكامل (integration ID) الذي ترسله الأداة، دون التحقق من الهوية؛ وتبلّغ خدمة Copilot code review والوكيل السحابي عن نموذج يختاره المنتج. ويختلف هذا القياس عن تتبّع تطبيقات الوكلاء (agent apps)، الذي يحتسب المهام التي يطلقها Claude أو Codex على GitHub. وهو موجّه إلى المالكين ومديري الفوترة، أو أي دور يملك إذن View Copilot Metrics، ويأتي امتدادًا لإضافة أسماء المهارات والوكلاء وخوادم MCP في 22 أكتوبر. ولم تُنشر أي أرقام للاستخدام.

🔗 واجهة API لمقاييس الاستخدام تضيف استخدام أدوات مثل OpenCode


أخبار موجزة

GitHub

  • Copilot CLI 1.0.104-1 إلى -3 — ثلاثة إصدارات أولية، ولا يزال الإصدار المستقر 1.0.104 غائبًا؛ ولا تفصّل التغييرات إلا النسخة -2: يبدأ النموذج المُدار « fusion » الجلسات على Auto مع الإعدادات fusionTier، وتنتظر جلسات Autopilot التفاعلية أو جلسات SDK مهامها الخلفية بدلًا من التوقف عند COPILOT_TASK_WAIT_TIMEOUT_SECONDS. 🔗 المصدر
  • تطبيق GitHub واحد في Teams — يصبح تطبيق GitHub notifications هو تطبيق GitHub ويضم Copilot: تؤدي الإشارة إلى @GitHub في إشعار إلى بدء التحقيق والإصلاح وإنشاء طلب سحب. وسيُعاد تسمية التطبيق القديم إلى « GitHub (deprecated) » ثم يُزال في 16 نوفمبر. 🔗 المصدر
  • استعادة حسابات EMU — من 1 إلى 13 يونيو، حُذف نحو 12 285 حسابًا من Enterprise Managed Users أُلغي توفيرها عبر SCIM بدلًا من تعليقها، من بينها 76 حسابًا كان لا يزال نشطًا، بسبب مسار جديد لإلغاء التوفير؛ وأعادتها GitHub في أكتوبر، دون الحاجة إلى أي إجراء. 🔗 المصدر
  • المراقبة العامة لفحص الأسرار — تحصل مراقبة بيانات اعتماد المؤسسة المكشوفة في المستودعات العامة على فرز للتنبيهات، والتحقق المستمر من الصلاحية، وواجهة REST API وwebhook، ولا تزال في المعاينة العامة؛ وإغلاق تنبيه لا يُبطل بيانات الاعتماد المكشوفة. 🔗 المصدر

مساعدو العمل

  • Docs Live على الأجهزة المحمولة — استدراك لخبر 21 أكتوبر: يصل Docs Live إلى تطبيق Google Docs على Android وiOS؛ يمكنك التحدث، حتى بأفكار غير مرتبة، ويبني Gemini مستندًا منظمًا بالاستعانة بـGmail وDrive وChat والويب. وهو مفعّل افتراضيًا، خصوصًا لخطط Business وEnterprise بفئتي Standard وPlus، وGoogle AI Pro وUltra. 🔗 المصدر
  • لوحة إدارة ChatGPT Enterprise وEdu — تتوزع التحليلات بين Usage وInsights، وتحل استبيانات المستخدمين محل تبويب Impact، وتمنح مساحات العمل ذات النطاق الموثّق مهلة 7 أيام، لا يستطيع المشرفون تعديلها، لنقل مساحة عمل ChatGPT شخصية. 🔗 المصدر

النماذج والبنية التحتية

  • MiniMax M3.1 Flash على Tenstorrent Cloud — تقدّم Tenstorrent النموذج منذ يوم نشر أوزانه، في مساحة تجريبية (playground) أو موصولًا ببيئة تشغيل وكيل، على شرائح Tensix الخاصة بها؛ ولم تُعلن أسعارًا أو معدل معالجة. 🔗 المصدر
  • GLM 5.3 Flash عبر واجهة API من Mistral — استدراك لخبر 22 أكتوبر: تقدّم Mistral النموذج zai-glm-5-3-flash، وهو نموذج MoE متعدد الوسائط يضم 320B معلمة منها 18B نشطة، مع سياق بطول 1M رمز، بسعر 0,15 دولار لكل مليون رمز إدخال (0,03 للرموز المخزنة مؤقتًا) و0,50 للإخراج؛ وهو ثالث نموذج من Z.ai لدى Mistral. 🔗 المصدر

الأبحاث

  • Beetle — ينشر باحثون من كامبريدج وEleutherAI وأكسفورد 330 نموذجًا صغيرًا (285 ثنائي اللغة، بالإنجليزية وإحدى 21 لغة، و45 أحادي اللغة) مع نقاط تحقق وبيانات وشيفرة، دُرّبت على 100M و2B و24B رمزًا بحسب التدوينة، لدراسة تعلّم لغة ثانية؛ والمستودعات بلا ترخيص معلن. 🔗 المصدر
  • VocabX — استدراك لخبر 21 أكتوبر: من خلال إعادة بناء مفردات مصححها للإنشاء باللغة البرتغالية، المبني على Qwen3-4B، على أساس تكلفة كل رمز، تخفّض Dharma-AI تكلفة الاستدلال المقاسة بنسبة 77 % وترفع درجة الجودة من 0,703 إلى 0,810؛ الأرقام أولية، والورقة قيد المراجعة، ولم تُنشر أي شيفرة. 🔗 المصدر

ما الذي يعنيه ذلك

اكتملت سلسلة الخطوات من اكتشاف ثغرة إلى إصلاحها خلال أربعة أيام في هذه الصفحات: نشرت OpenAI في 21 أكتوبر حصيلة تنسيقها بشأن PHP2Shell، وأوكلت Cognition في 22 أكتوبر إلى وكيل إصلاح ثغرات PHP وNode.js وGitLab، واحتوت Replit ثغرة Brotli بقواعد جدار الحماية في 23 أكتوبر، وها هي OpenAI تكشف الآن أنها اكتشفتها. وتُظهر حالة Brotli أين تكمن الصعوبة: كان السبب الجذري قد أُصلح في الشيفرة منذ فبراير، لكن لم يتعرّف أحد فيه على ثغرة، ولم يكن أي إصدار يتضمن الإصلاح. كان لا بد من التعرّف عليها، ونشر إصدارات، ثم انتظار أن تحذو Node.js وBun وEnvoy وIstio ومستخدموها حذوها. وهكذا تنتهي حملة هجوم مُحاكاة أُجريت لحماية بيئة تدريب بإصلاح مكتبة تشغّلها خوادم وعملاء HTTP عاديون.

يتصل وكلاء البرمجة بالبنية التحتية للآخرين. يشغّل Claude Code أداة Monitor لدى Amazon وGoogle وMicrosoft، ويستورد Gemini CLI آليات hooks الخاصة بـClaude Code مع وحدة الزمن الصحيحة، ويتيح نماذجه بصيغة JSON للبرامج النصية، ويحتفظ Qwen Code عند الطلب بالرمز المميز لخدمته الخلفية. وتستهدف إصلاحات اليوم أساسًا التحكم في الوكيل: مفتاح هروب لم يكن يوقف الوكيل، ومسارات نسبية كانت تؤدي إلى الكتابة في مستودع مجاور، وآليات hooks على Windows كانت تسمح بمرور استدعاء أداة. فالمشكلة ليست في نقص الوظائف بقدر ما هي في ضوابط حماية لم تكن تؤدي دورها.

تمرّ الحوكمة عبر القياس. يعمل Copilot أيضًا مزوّدًا للنماذج لوكلاء منافسين، وباتت GitHub تحصي على جانب الخادم ما تستهلكه أدوات OpenCode أو Claude Code أو Codex، لكل نموذج على حدة، مع وضع الاختيار، وذلك بعد يوم من إضافة أسماء المهارات والوكلاء وخوادم MCP. وأصبح المسؤول يرى أخيرًا الأدوات التي تستخدم اشتراكه، ضمن القيود التي تذكرها GitHub نفسها بشأن تحديد هوية العملاء. وتسير OpenAI في الاتجاه نفسه عبر Admin Console في ChatGPT Enterprise، التي أُعيد تنظيمها حول الاستخدام والتبنّي.


المصادر