إصدار Claude Code 2.1.251 يصلح خمس ثغرات أمنية كلها في التعامل مع المسارات
من يشغّل agent على مستودع لم يكتبه لا يثق في الكود وحده، بل في ملفات الإعدادات أيضًا، فهي كانت جزءًا من سطح الهجوم.
وسم
من يشغّل agent على مستودع لم يكتبه لا يثق في الكود وحده، بل في ملفات الإعدادات أيضًا، فهي كانت جزءًا من سطح الهجوم.
نشر الإصلاح على إصدارات قديمة في اليوم نفسه تقدير من الفريق لخطورته، وأي تطبيق Angular يعمل بـ SSR معني به مباشرة لا في موعد التحديث القادم.
مكتبة لا يحدّثها أحد يدويًا تصل إلى الخوادم عبر الـ base image، فالفرق بين فريق محمي وآخر مكشوف يصبح موعد آخر إعادة بناء لا موعد قراءة الخبر.
مساحة الهجوم في أي مشروع تشمل قرارات لم يتخذها صاحبه؛ فالمطور اختار Next.js، واختار Next.js مكتبة sharp، واختارت sharp مكتبة libheif التي وقعت فيها الثغرة.
تشغيل النموذج محليًا لا يعني أنه معزول؛ فالخادم المحلي بلا طبقة تصاريح، والمتصفح المفتوح بجواره قد يكون أقرب طريق إليه، والتعليمات المزروعة تبقى داخل النموذج نفسه.
صلاحية الكتابة على مستودع واحد، التي تُمنح عادة دون تفكير، تساوي على الخوادم غير المحدثة تنفيذ أوامر على الجهاز الذي يحمل الـ CI ومفاتيح النشر.
الخطر لا يكمن في الكود الحديث، بل في طبقة الـ proxy القديمة التي يمر بها كل طلب، في أنظمة يحتاج تحديثها إلى موافقات ونافذة صيانة.
الإضافة التي تُثبَّت لتلوين ملف أو تنسيقه تعمل في المحرر نفسه الذي يفتح كود العمل وملفات .env ومفاتيح الـ API، والـ sandbox هو الحاجز الوحيد بينهما.
الاستضافة الذاتية لنظام الهوية قرار صائب في حالات كثيرة، لكن ثمنه أن التحديث الأمني لا يصل وحده، وحين يكون Keycloak أمام كل الأنظمة يصبح الحساب الواحد مفتاحًا لها جميعًا.
خطة الطوارئ المعتادة، تغيير كلمة المرور وإنهاء الجلسات، لا تصل إلى ذاكرة المساعد الذكي، وهي مكان جديد يمكن أن تستقر فيه تعليمات لم يكتبها المستخدم.
الفاصل بين نشر الثغرة واستغلالها صار يومين، وهو أقصر من دورة الترقيع في أغلب الفرق، وتزوير سجل الدمج أخطر من الحذف لأنه قد يمر دون أن يُكتشف.
المكون الذي وظيفته مراقبة الخادم هو الذي فتح الباب، والاستقلال عن Microsoft وGoogle في البريد يأتي بفاتورة اسمها مسؤولية الترقيع.
مكتبة تفك الصور تلقائيًا قبل أي نقرة من المستخدم تجعل الصورة نفسها سطح هجوم، وأي كود يحسب حجم الذاكرة من أرقام داخل ملف خارجي معرض للخطأ نفسه.
أي أداة تطوير تعمل محليًا دون مصادقة معرضة لأي صفحة مفتوحة في المتصفح، لأن ما يكتبه المتصفح في الطلب يستطيع المهاجم أن يكتبه أيضًا.
إصلاح ثغرة في هاتف يحمله الملايين يتوقف على شركة لم ترد على الباحثين، وشريحة الهاتف نفسها تبقى خارج أي نقاش عن الاستقلال التقني.
الاختراق هنا لم يأت من كود جديد بل من خيار قديم فُعّل مرة ونُسي، والإعدادات المنسية على الأجهزة هي أرخص سطح هجوم على المهاجم.
نشر تفاصيل الإصلاح صار هو نفسه إشارة بدء السباق، والمهلة التي كانت تسمح بتأجيل التحديث أسبوعين لم تعد موجودة.
حين يكون الـ VPN الباب الوحيد لفريق يعمل عن بعد، فإن إسقاط الجهاز لا يسرق بيانات لكنه يوقف الفريق كله، وهذا خطر نادرًا ما يدخل في حساب المخاطر.
تشغيل النماذج محليًا خيار صحيح للاستقلال، لكنه لا يعني الأمان تلقائيًا، فالخادم المحلي المكشوف على الإنترنت برنامج C++ يحتاج إلى التحديث والحماية مثل أي خادم آخر.
الدالة التي وُضعت لمنع حقن الأوامر أصبحت موضع الحقن نفسه، لأن تنظيف النصوص يدويًا يطالب المدافع بتوقع كل الحالات بينما يكفي المهاجم أن يجد حالة واحدة منسية.
ثغرتا محرك regex والبحث النصي الكامل لا تحتاجان وصولًا إلى الخادم، بل يكفي أن يمرر التطبيق نص المستخدم إلى الاستعلام، كما أن PostgreSQL 14 يتوقف عن تلقي الإصلاحات في نوفمبر.
تاريخ النشرة الأمنية ليس بداية الأمان بل بداية السباق، والتحديث المتأخر يغلق الباب الذي دخل منه المهاجم لا الباب الذي فتحه بعد دخوله.
حين يُبنى exploit عامل في أقل من يوم بمساعدة نماذج متاحة للجميع، تتقلص المسافة بين الإعلان عن الثغرة والهجوم بها، وتضيق معها نافذة التحديث التي كانت الفرق تعدّها أسبوعًا.
ترتيب التحديثات حسب درجة الخطورة وحدها يؤخر بالضبط الثغرة المستخدمة في الهجمات اليوم، لأن مقياس CVSS يصف الثغرة منفردة لا موقعها في سلسلة الهجوم.
في منظومات الهوية الرقمية لا تكمن النقطة الحرجة في التشفير ولا في البطاقة، بل في شرط واحد: أن يتأكد البرنامج المحلي من هوية من يخاطبه.
أي منتج يعرض HTML قادمًا من الخارج، من تذاكر الدعم إلى صناديق الرسائل داخل التطبيقات، يقوم على افتراض أن التنسيق لا يخرج من حدوده، وهو افتراض لم يعد آمنًا.
الثغرة لم تنشأ من أداة تنقية فاشلة، بل من أداتين تقرآن النص نفسه بقاعدتين مختلفتين، والفرق بين القراءتين هو الثغرة.
صلاحية المدير في أداة التحليلات تكشف بيانات الاتصال بكل قاعدة بيانات موصولة بها، فاختراق أداة تقرأ فقط قد يكشف قواعد بيانات لم يكن لها شأن بها.
خط الدفاع الحقيقي عند تشغيل agent ليس الـ sandbox وحده، بل كل أداة على الجهاز تقرأ من مجلد المشروع وتنفّذ ما فيه خارج العزل.
هذا النوع من الثغرات لا يعيش في كود التطبيق، بل في المسافة بين الـ CDN والخادم، وهي منطقة لا تصلها مراجعة الكود المعتادة.