يسعدنا أن نعلن عن شراكتنا وتكاملنا مع Truffle Security، حيث نقدم ميزات المسح السري القوية من TruffleHog إلى منصتنا كجزء من التزامنا المستمر بالأمن.

TruffleHog هي أداة مفتوحة المصدر تكتشف التسريبات السرية في التعليمات البرمجية وتتحقق منها. مع مجموعة واسعة من أدوات الكشف لموفري SaaS وموفري الخدمات السحابية المشهورين، فإنه يقوم بفحص الملفات والمستودعات بحثًا عن معلومات حساسة مثل بيانات الاعتماد والرموز المميزة ومفاتيح التشفير.
يمكن أن يؤدي ارتكاب الأسرار عن طريق الخطأ إلى مستودعات التعليمات البرمجية إلى عواقب وخيمة. من خلال فحص المستودعات بحثًا عن الأسرار، يساعد TruffleHog المطورين في التقاط هذه المعلومات الحساسة وإزالتها قبل أن تصبح مشكلة، مما يؤدي إلى حماية البيانات ومنع الحوادث الأمنية المكلفة.
لمكافحة التسرب السري في المستودعات العامة والخاصة، عملنا مع فريق TruffleHog على مبادرتين مختلفتين: تعزيز مسار المسح الآلي الخاص بنا باستخدام TruffleHog، إنشاء ماسح ضوئي أصلي للوجه في TruffleHog
تعزيز مسار المسح الآلي الخاص بنا باستخدام TruffleHog
في Hugging Face، نحن ملتزمون بحماية المعلومات الحساسة لمستخدمينا. ولهذا السبب قمنا بتنفيذ مسار فحص أمني تلقائي يقوم بفحص جميع عمليات إعادة الشراء والالتزامات. لقد قمنا بتوسيع مسار المسح الآلي الخاص بنا ليشمل TruffleHog، مما يعني أن هناك الآن ثلاثة أنواع من عمليات الفحص:
- فحص البرامج الضارة: يقوم بفحص توقيعات البرامج الضارة المعروفة باستخدام ClamAV
- مسح المخلل: يقوم بمسح ملفات المخلل بحثًا عن تعليمات برمجية ضارة قابلة للتنفيذ باستخدام Picklescan
- المسح السري: يقوم بمسح كلمات المرور والرموز المميزة ومفاتيح API باستخدام TruffleHog
نقوم بتشغيل trufflehog filesystem الأمر على كل ملف جديد أو معدل في كل دفعة إلى المستودع، والمسح بحثًا عن الأسرار المحتملة. إذا تم اكتشاف سر تم التحقق منه، فإننا نقوم بإعلام المستخدم عبر البريد الإلكتروني، وتمكينه من اتخاذ الإجراءات التصحيحية.
الأسرار التي تم التحقق منها هي تلك التي تم التأكد من أنها تعمل من أجل المصادقة ضد مقدمي الخدمة المعنيين. ومع ذلك، لاحظ أن الأسرار التي لم يتم التحقق منها ليست بالضرورة ضارة أو غير صالحة: قد يفشل التحقق لأسباب فنية، كما هو الحال في حالة التوقف عن العمل من الموفر.
سيكون من المفيد دائمًا تشغيل trufflehog على مستودعاتك بنفسك، حتى عندما نقوم بذلك نيابةً عنك. على سبيل المثال، كان من الممكن أن تقوم بتدوير الأسرار التي تم تسريبها وتريد التأكد من ظهورها على أنها “لم يتم التحقق منها”، أو ترغب في التحقق يدويًا مما إذا كانت الأسرار التي لم يتم التحقق منها لا تزال تشكل تهديدًا.
سوف نهاجر في النهاية إلى trufflehog huggingface الأمر، الماسح الضوئي الأصلي Hugging Face، بمجرد دعم أراضي LFS.

ماسح الوجه الأصلي من TruffleHog
الهدف من إنشاء ماسح ضوئي أصلي لـ Hugging Face في TruffleHog هو تمكين مستخدمينا (وفرق الأمان التي تحميهم) من فحص بيانات حساباتهم بشكل استباقي بحثًا عن الأسرار المسربة.
يمكن لتكامل Hugging Face الجديد مفتوح المصدر من TruffleHog فحص النماذج ومجموعات البيانات والمساحات، بالإضافة إلى أي علاقات عامة أو مناقشات ذات صلة. القيد الوحيد هو أن TruffleHog لن يقوم حاليًا بفحص الملفات المخزنة في LFS. يتطلع فريقهم إلى معالجة هذا الأمر لجميع أفرادهم git المصادر قريبا.
لفحص جميع نماذج Hugging Face ومجموعات البيانات والمساحات الخاصة بك أو بمؤسستك بحثًا عن الأسرار باستخدام TruffleHog، قم بتشغيل الأمر (الأوامر) التالية:
trufflehog huggingface --user <username>
trufflehog huggingface --org <orgname>
trufflehog huggingface --user <username> --org <orgname>
يمكنك اختياريًا تضمين (--include-discussions) والعلاقات العامة (--include-prs) أعلام لمسح مناقشة Hugging Face وتعليقات العلاقات العامة.
إذا كنت ترغب في مسح نموذج أو مجموعة بيانات أو مساحة واحدة فقط، فإن TruffleHog لديه علامات محددة لكل منها.
trufflehog huggingface --model <model_id>
trufflehog huggingface --dataset <dataset_id>
trufflehog huggingface --space <space_id>
إذا كنت بحاجة إلى تمرير رمز مميز للمصادقة، فيمكنك القيام بذلك باستخدام علامة –token أو عن طريق تعيين متغير بيئة HUGGINGFACE_TOKEN.
فيما يلي مثال لمخرجات TruffleHog عند تشغيلها على mcpotato/42-eicar-street:
trufflehog huggingface --model mcpotato/42-eicar-street
🐷🔑🐷 TruffleHog. Unearth your secrets. 🐷🔑🐷
2024-09-02T16:39:30+02:00 info-0 trufflehog running source {"source_manager_worker_id": "3KRwu", "with_units": false, "target_count": 0, "source_manager_units_configurable": true}
2024-09-02T16:39:30+02:00 info-0 trufflehog Completed enumeration {"num_models": 1, "num_spaces": 0, "num_datasets": 0}
2024-09-02T16:39:32+02:00 info-0 trufflehog scanning repo {"source_manager_worker_id": "3KRwu", "model": "https://huggingface.co/mcpotato/42-eicar-street.git", "repo": "https://huggingface.co/mcpotato/42-eicar-street.git"}
Found unverified result 🐷🔑❓
Detector Type: HuggingFace
Decoder Type: PLAIN
Raw result: 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
Commit: 9cb322a7c2b4ec7c9f18045f0fa05015b831f256
Email: Luc Georges <luc.sydney.georges@gmail.com>
File: token_leak.yml
Line: 1
Link: https://huggingface.co/mcpotato/42-eicar-street/blob/9cb322a7c2b4ec7c9f18045f0fa05015b831f256/token_leak.yml#L1
Repository: https://huggingface.co/mcpotato/42-eicar-street.git
Resource_type: model
Timestamp: 2024-06-17 13:11:50 +0000
2024-09-02T16:39:32+02:00 info-0 trufflehog finished scanning {"chunks": 19, "bytes": 2933, "verified_secrets": 0, "unverified_secrets": 1, "scan_duration": "2.176551292s", "trufflehog_version": "3.81.10"}
مجد لفريق TruffleHog لتقديم مثل هذه الأداة الرائعة لجعل مجتمعنا آمنًا! ترقبوا المزيد من الميزات بينما نواصل التعاون لجعل Hub أكثر أمانًا للجميع.