خيار في Claude Code يترك 2,539 سراً مكشوفة على غيت هاب العام
أبيرو تجد كلمات مرور ومفاتيح محفوظة نصاً صريحاً في 1,122 ملف إعدادات لـClaude Code على غيت هاب العام.
· آخر تحقق: 8 نوفمبر 2026 (أبيرو)

الملخص
- أبيرو تجد كلمات مرور ومفاتيح محفوظة نصاً صريحاً في 1,122 ملف إعدادات لـClaude Code على غيت هاب العام.
- الخيار يحفظ الأمر المعتمد حرفياً بما فيه من أسرار، ولا تضيف الأداة الملف إلى .gitignore الخاص بالمشروع.
- فرق التطوير مطالبة بتدوير كل سرّ مرّ بالملف، فأداتا فحص شائعتان فاتهما 215 ملفاً مكشوفاً.
خبر
تحفظ أداة البرمجة Claude Code من أنثروبيك كلمات المرور والمفاتيح المكتوبة داخل الأوامر نصاً صريحاً في ملف داخل المشروع حين يختار المطوّر عدم السؤال مجدداً، وانتهى كثير من هذه الملفات في مستودعات عامة. أحصى باحثون من أبيرو 2,539 سراً في 1,994 مستودعاً على غيت هاب. وأكدت إحدى الشركات التي أُبلغت أن مفتاحها المكشوف كان صالحاً للاستخدام.
تفصيل
- الآلية: عند اختيار خيار عدم السؤال مجدداً تنشئ الأداة قاعدة سماح، قد تكون نمطاً عاماً مثل npm test أو أمراً بعينه حرفياً. في الحالة الثانية تُحفظ أي كلمة مرور أو رمز داخل الأمر في الملف .claude/settings.local.json داخل مجلد المشروع، فيُرفع مع الكود إن لم يُستبعد.
- الحماية الناقصة: تضيف الأداة الملف إلى قائمة الاستبعاد العامة لـgit على جهاز المستخدم عند أول كتابة. هذه الحماية تبقى على ذلك الجهاز وحده، ولا تشمل ملفات رُفعت قبلها، ولا تُضاف إلى ملف .gitignore الخاص بالمشروع، فيرفعه أي زميل يعمل على المستودع نفسه.
- حجم العيّنة: جمع الباحثان شمولِك كوهين وماتان غلعادي البيانات من غيت هاب العام بين 1 و3 نوفمبر، فوجدا 104,185 نسخة من الملف في 103,617 مستودعاً. منها 1,122 نسخة، نحو 1.1%، فيها سرّ واحد على الأقل، بمجموع 1,379 سراً مختلفاً تعود إلى 63 مؤسسة معظمها شركات برمجيات.
- نوع الأسرار: أكثر من ثلث الأسرار يفتح قواعد بيانات مباشرة، منها 379 كلمة مرور لقواعد بيانات. وتضم القائمة 43 بيانات دخول SSH، و42 رمزاً لمنصات غيت هاب وغيت لاب وnpm، و23 مفتاحاً لخدمات أمازون السحابية، ولم تختبر أبيرو أياً منها للتأكد من صلاحيته.
- مدة الانكشاف: كل ملف يحمل سراً كان لا يزال على الفرع الافتراضي لمستودعه، ونصف هذه الملفات بقي هناك 217 يوماً على الأقل. وتحمل النسخ الأقدم من الملفات 734 سراً إضافياً في 509 مستودعات، فيما تنقل 211 تفريعة من 74 مستودعاً الأسرار نفسها.
- دور الوكيل: في 539 من 1,105 مستودعات تتبّعها الباحثون، عدّل الملف التزامٌ يذكر Claude مؤلفاً مشاركاً، ورجّح الباحثون أن الوكيل نفسه يرفع الملف في حالات كثيرة. ومن 16 وكيل برمجة قارنها البحث، Claude Code الوحيد المؤكد أنه يحفظ الأمر المعتمد كاملاً في ملف المشروع افتراضياً.
- أدوات الفحص: رصدت أداة Gitleaks 564 ملفاً من 1,122، ورصدت TruffleHog 643، وفات الأداتين معاً 215 ملفاً. السبب أن كلمات المرور المكتوبة داخل الأوامر، بعد PGPASSWORD أو sshpass أو mysql، تبدو لهذه الأدوات نصاً عادياً لا مفتاحاً بصيغة معروفة.
- البلاغات السابقة: بلاغ خطأ قُدّم في 11 أغسطس 2025 يصف السلوك نفسه أغلقه روبوت آلي في 3 يناير بعد 60 يوماً بلا نشاط، بوصف "not planned". وأُغلقت البلاغات الأربعة المرتبطة به آلياً بلا رد، ولم تعلّق أنثروبيك على البحث حتى الآن.
- المطلوب من الفرق: توصي أبيرو بالبحث عن الملفين وسجلهما في كل المستودعات، وتدوير كل سرّ حواه الملف قبل التنظيف، وإيقاف تتبع الملف المحلي وإضافته إلى .gitignore. وتنصح باستدعاء الأسرار متغيرات من مدير أسرار، واعتماد أنماط بدل أوامر مفردة، وفحص مجلدات الوكلاء قبل كل التزام.
المصدر: أبيرو