أصدرت الأنثروبيك كلود الأمن البرنامج المساعد لكلود كود في مرحلة تجريبية. يقوم البرنامج الإضافي بتشغيل فحص الثغرات الأمنية متعدد العوامل للمستودع من داخل جلسة Claude Code الموجودة، ثم يحول النتائج التي تحددها إلى ملفات تصحيح تقوم بمراجعتها وتطبيقها بنفسك. أكدت Anthropic على تعدد استخدامات الأداة عند الإعلان عنها، وسلطت الضوء على قدرتها على إجراء فحص شامل عبر قاعدة التعليمات البرمجية الكاملة أو فحص التغييرات من الجهاز قبل الالتزام مباشرة.

ما يضيف البرنامج المساعد

يضيف المكون الإضافي أمرًا واحدًا، / claude-security، الذي يفتح قائمة من ثلاث وظائف، وفقًا للوثائق الرسمية:

  • مسح قاعدة التعليمات البرمجية – المستودع بأكمله أو مجموعة فرعية منه
  • مسح التغييرات – فرق الفرع، أو فرق طلب السحب، أو التزام واحد
  • أقترح بقع – تحويل نتائج التقرير إلى ملفات التصحيح

التثبيت عبارة عن أمرين من السوق الأنثروبي الرسمي:

/plugin install claude-security@claude-plugins-official
/reload-plugins

إذا لم يتم العثور على السوق، فقم بتشغيل /plugin marketplace بإضافة anthropics/clude-plugins-official أولاً. مصدر البرنامج المساعد عام في مستودع claude-plugins-official، حاليًا في الإصدار 0.10.0.

كيف يتم تنظيم خط أنابيب المسح

يتم تنفيذ الفحص باعتباره سير عمل ديناميكي — وهو برنامج نصي لتنسيق JavaScript يعمل عليه المعجبون عبر الوكلاء الفرعيين. يعلن البرنامج النصي عن ست مراحل:

  1. جرد: تقسيم المستودع إلى مكونات. يجب فحص كل دليل ذو مستوى أعلى أو تخطيه بشكل صريح مع سبب.
  2. نموذج التهديد: مصمم واحد لكل مكون، وينتج نقاط الدخول، والمصارف، وحدود الثقة، والملفات التي يجب على الباحث قراءتها بالكامل.
  3. بحث: باحث واحد لكل مكون × خلية الفئة.
  4. اكتساح: ملء الفجوة على ما لم تغطيه المصفوفة.
  5. لوحة: التحقق من الخصومة بثلاث عدسات، ناخب واحد لكل عدسة.
  6. عدائية: الحد الأقصى من الجهد فقط: أعد تجميع العناصر الهامشية، ثم قم بتشكيل فريق أحمر لكل ناجٍ.

يجري البحث ضمن أربع فئات ثابتة: الحقن والإدخال، والمصادقة والوصول، والذاكرة وغير الآمنة، والتشفير والأسرار. يتم إسقاط عدسة الذاكرة وغير الآمنة للمكونات المكتوبة بالكامل بلغات آمنة للذاكرة، لذلك يحصل مكون Python أو TypeScript الخالص على ثلاث عدسات بدلاً من أربع.

يتم تحديد النطاق التشغيلي للتشغيل من خلال أربعة مستويات مختلفة من الجهد: منخفض، ومتوسط، ومرتفع، والحد الأقصى. اعتمادًا على الطبقة المحددة، يتم فرض حدود معينة: الحد الأقصى لعدد المكونات هو 12 للطبقات المنخفضة والمتوسطة، ويمتد إلى 24 للطبقات العالية والحد الأقصى؛ يتم تعيين باحث واحد لخلايا المصفوفة، وهو ما يزيد إلى 2 في المستويات العليا والقصوى؛ ويتراوح عدد عمليات مسح ملء الفجوات من 0 عند المستوى المنخفض، إلى 1 عند المستوى المتوسط، وحتى 2 عند المستوى العالي والحد الأقصى. عند التعامل مع نطاق محدود أو اختلاف صغير، تتكثف العملية في تكوين باحث واحد بدلاً من نشر المصفوفة بأكملها. وهذا يضمن أن يظل التقييم متناسبًا تمامًا مع الهدف مع الحفاظ على معيار التحقق المطابق.

يستخدم النظام وكلاء على مستويات نموذجية: يعمل المنسق على Opus، بينما يعمل رسام خرائط المستودع ومستكشف الكود للقراءة فقط على Sonnet. علاوة على ذلك، يتم توارث نموذج الجلسة من قبل الباحثين والمتحققين، ويقتصر وكلاء المسح حصريًا على أدوات القراءة فقط.

كيف تكتسب النتيجة مكانها في التقرير

هذا هو الجزء الذي يستحق الفهم عن كثب. لا تدخل نتائج المرشح في التقرير لأن الباحث وجدها. لا يدخل إلا بعد نجاته من اللوحة.

يتم تسليم كل مرشح إلى ثلاثة مدققين مستقلين، واحد لكل عدسة: إمكانية الوصول, تأثير، و الدفاعات. يُرجع كل منها حكمًا منظمًا بقيمة TRUE_POSITIVE أو FALSE_POSITIVE مع سطر واحد أو سطرين لتسمية الملف الحاسم: السطر. نصاب الاحتفاظ هو 2 من 3. إذا عاد أقل من ثلاثة ناخبين، لا يمكن الاحتفاظ بالمرشح على الإطلاق.

وتحدد نتيجة اللجنة أيضًا الثقة المعلنة في النتيجة. لوحة 3/3 بالإجماع تسمح بسقف ثقة مرتفع؛ النصاب القانوني 2/3 يتوج بالمتوسط. لا يمكن للنتيجة أن تطالب بثقة أكبر من التي حصل عليها التحقق منها.

والأهم من ذلك، أن هذا العدد يتم حسابه بلغة بايثون بواسطة مقدم التقرير، ولم يتم تأكيده بواسطة النموذج الذي أنتج النتائج. يتم تعيين حالة التحقق من ختم المراجعة على التحقق منها فقط عندما يثبت سجل التصويت أن اللجنة ركضت لكل نتيجة في التقرير؛ وإلا لم يتم التحقق منه لسبب معلن. وهذا يجعل من دقة التقرير الخاصة به أمرًا يمكنك التحقق منه بدلاً من كونه شيئًا تثق به.