
أداة لتحديد أفضل الآليات للإفصاح عن ثغرة أمنية بشكل خاص لحزمة/مشروع.
Disclosure Check هي أداة لتحديد آليات الإفصاح عن الثغرات الأمنية لمشاريع المصادر المفتوحة.

تحذير لا يزال هذا المشروع قيد التطوير وقد لا يعمل بشكل صحيح مع العديد من المشاريع المختلفة. إذا واجهت خطأً، يُرجى فتح تذكرة وسنبذل قصارى جهدنا لمعالجته. طلبات السحب مرحّب بها!
تستخدم معظم مشاريع المصادر المفتوحة متتبع تذاكر عامًا للطلبات الواردة وتقارير الأخطاء وما إلى ذلك. وبما أن هذا غير مناسب للإبلاغ عن ثغرات جديدة، فإن العديد من المشاريع لديها آليات أخرى ليتمكن المستخدمون من إرسال تقارير حساسة.
للأسف، لا توجد طريقة شائعة الاستخدام وقابلة للقراءة آليًا لاكتشاف ذلك لمشروع معين. بدلاً من ذلك، قد يحتاج الشخص إلى البحث عن ملف SECURITY.md (وقراءته بالكامل)، ومراجعة README.md، والتحقق مما إذا كانت هناك آلية خاصة للإبلاغ عن الثغرات متاحة عبر مستودع المصدر، والتحقق مما إذا كان هناك عنوان بريد إلكتروني مرتبط بالحزمة المنشورة، وما إلى ذلك.
هذا الأمر يستغرق وقتًا طويلاً لمشروع واحد، وأكثر بكثير عند القيام به على نطاق واسع.
الغرض من Disclosure Check هو أتمتة ما يفعله الشخص عند محاولة اكتشاف أفضل طريقة للإبلاغ عن ثغرة لمشروع ما. استخدامها متعامد مع هدف آليات الإبلاغ الأكثر توحيدًا؛ وإذا أصبح هذا الأخير حقيقة، فلن تكون هذه الأداة مفيدة بعد ذلك.
Disclosure Check متاحة عبر PyPI و Docker Hub. إذا قمت بالتثبيت عبر PyPI، فستحتاج أيضًا إلى تثبيت OSS Gadget، وهو مطلوب لتنزيل محتويات الحزمة للتحليل. تأكد من أن oss-download موجود في مسارك.
ستحتاج أيضًا إلى رمز GitHub للسماح لـ Disclosure Check باستخدام GitHub API لأشياء مثل البحث في الكود. لا يتطلب الرمز أي أذونات خاصة، وستعمل الأداة بدونه، وإن كانت بوظائف محدودة.
راجع صفحة OSS Gadget للحصول على أحدث تعليمات التثبيت.
يمكنك بعد ذلك تثبيت Disclosure Check من PyPI:
pip install disclosurecheck
يجب عليك دائمًا تثبيت حزم كهذه في بيئة افتراضية لأن التثبيت سيتضمن تبعيات أخرى.
يمكنك سحب أحدث صورة Docker من GitHub Container Registry:
docker pull ghcr.io/scovetta/disclosurecheck:latest
لتشغيل Disclosure Check:
disclosurecheck --help
usage: OpenSSF Vulnerability Disclosure Mechanism Detector [-h] [--verbose] [--json] package_url
positional arguments:
package_url Package URL for the project/package you want to analyze.
options:
-h, --help show this help message and exit
--verbose Show extra logging.
--json Output as JSON.
أو إذا كنت تستخدم صورة Docker:
docker run -e GITHUB_TOKEN=<YOUR GITHUB TOKEN> --rm -t ghcr.io/scovetta/disclosurecheck:latest pkg:npm/left-pad
تعمل Disclosure Check من خلال البحث عن معلومات الاتصال (البريد الإلكتروني، عناوين URL، إلخ) في الأماكن التالية:
تحاول الأداة تقييم هذه بناءً على الأولوية (حيث 0 هي الأعلى أولوية و100 هي الأدنى).