Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
criticality_score — يحسب درجة حرجة للمشاريع مفتوحة المصدر من مقاييس المستودع والمساهمين والتبعيات لتحديد أولويات التحسينات الأمنية. | Kitploit
أدوات/GitHubGitHub/ossf/criticality_score
جمع المعلوماتالأدوات والمكوناتأمن سلسلة التوريد
GitHubossf/criticality_score

criticality_score

يحسب درجة حرجة للمشاريع مفتوحة المصدر من مقاييس المستودع والمساهمين والتبعيات لتحديد أولويات التحسينات الأمنية.

عرض المستودع
1.5k141منذ 8 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

درجة الحرجية للمشاريع مفتوحة المصدر (نسخة تجريبية)

OpenSSF Scorecard

تتم صيانة هذا المشروع من قبل أعضاء الفريق العامل لتأمين المشاريع الحرجة.

الأهداف

  1. توليد درجة حرجية لكل مشروع مفتوح المصدر.

  2. إنشاء قائمة بالمشاريع الحرجة التي يعتمد عليها مجتمع المصادر المفتوحة.

  3. استخدام هذه البيانات لتحسين الوضع الأمني لهذه المشاريع الحرجة بشكل استباقي.

درجة الحرجية

تحدد درجة الحرجية للمشروع مدى تأثيره وأهميته. وهي رقم يتراوح بين 0 (الأقل حرجية) و1 (الأكثر حرجية). وهي مبنية على الخوارزمية التالية من إعداد روب بايك:

نستخدم المعاملات الافتراضية التالية لاستخلاص درجة الحرجية لمشروع مفتوح المصدر:

المعامل (Si)الوزن (αi)الحد الأقصى (Ti)الوصفالمبرر
created_since1120الوقت المنقضي منذ إنشاء المشروع (بالأشهر)المشروع الأقدم لديه احتمالية أعلى لكونه مستخدمًا على نطاق واسع أو معتمدًا عليه.
updated_since-1120الوقت المنقضي منذ آخر تحديث للمشروع (بالأشهر)المشاريع غير المُصانة التي لا تحتوي على التزامات (commits) حديثة لديها احتمالية أعلى لكونها أقل اعتمادًا عليها.
contributor_count25000عدد المساهمين في المشروع (من لديهم commits)مشاركة مساهمين مختلفين تشير إلى أهمية المشروع.
org_count110عدد المؤسسات الفريدة التي ينتمي إليها المساهمونيشير إلى الاعتماد عبر المؤسسات.
commit_frequency11000متوسط عدد الالتزامات (commits) أسبوعيًا خلال العام الماضيارتفاع معدل تغيير الكود (code churn) يشير بشكل طفيف إلى أهمية المشروع. كما أنه يزيد من قابلية التعرض للثغرات الأمنية.
recent_releases_count0.526عدد الإصدارات (releases) خلال العام الماضيالإصدارات المتكررة تشير إلى اعتماد المستخدمين عليها. الوزن أقل لأن هذا لا يُستخدم دائمًا.
closed_issues_count0.55000عدد المشكلات (issues) التي أُغلقت خلال آخر 90 يومًايشير إلى مشاركة عالية من المساهمين وتركيزًا على إغلاق مشكلات المستخدمين. الوزن أقل لأنه يعتمد على مساهمي المشروع.
updated_issues_count0.55000عدد المشكلات (issues) التي حُدّثت خلال آخر 90 يومًايشير إلى مشاركة عالية من المساهمين. الوزن أقل لأنه يعتمد على مساهمي المشروع.
comment_frequency115متوسط عدد التعليقات لكل مشكلة (issue) خلال آخر 90 يومًايشير إلى نشاط واعتماد مرتفع من المستخدمين.
dependents_count2500000عدد مرات ذكر المشروع في رسائل الالتزامات (commit messages)يشير إلى استخدام المستودع، عادةً في ترقيات الإصدارات. يعمل هذا المعامل عبر جميع اللغات، بما في ذلك C/C++ التي لا تحتوي على رسوم بيانية لتبعيات الحزم (على الرغم من أن الطريقة ترقيعية إلى حد ما). نخطط لإضافة أشجار تبعيات الحزم في المستقبل القريب.

ملاحظة:

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

الاستخدام

root@kitploit:~
$ go install github.com/ossf/criticality_score/v2/cmd/criticality_score@latest

$ export GITHUB_TOKEN=...         # requires a GitHub token to work
$ gcloud auth login --update-adc  # optional, add -depsdev-disable to skip

$ criticality_score -gcp-project-id=[your projectID] https://github.com/kubernetes/kubernetes
repo.name: kubernetes
repo.url: https://github.com/kubernetes/kubernetes
repo.language: Go
repo.license: Apache License 2.0
legacy.created_since: 87
legacy.updated_since: 0
legacy.contributor_count: 3999
legacy.watchers_count: 79583
legacy.org_count: 5
legacy.commit_frequency: 97.2
legacy.recent_releases_count: 70
legacy.updated_issues_count: 5395
legacy.closed_issues_count: 3062
legacy.comment_frequency: 5.5
legacy.dependents_count: 454393
default_score: 0.99107

يمكن تغيير الدرجة باستخدام معامل -scoring-config وتزويد ملف إعدادات مختلف لتحديد كيفية حساب الدرجة.

بشكل افتراضي، يُستخدم إعداد original_pike.yml لحساب الدرجة. ومع ذلك، يمكن تزويد ملفات إعدادات أخرى لإنتاج درجات مختلفة. راجع config/scorer لمزيد من التفاصيل.

لا تتردد في نسخ أحد الإعدادات وتعديل الأوزان والحدود القصوى لتناسب احتياجاتك.

المصادقة

قبل تشغيل criticality score، يجب عليك:

  • بالنسبة لمستودعات GitHub، تحتاج إلى إنشاء رمز وصول إلى GitHub وتعيينه في متغير البيئة GITHUB_AUTH_TOKEN. يساعد هذا في تجنب حدود معدل طلبات واجهة برمجة التطبيقات الخاصة بـ GitHub مع الطلبات غير المصادق عليها.
root@kitploit:~
# For posix platforms, e.g. linux, mac:
export GITHUB_AUTH_TOKEN=<your access token>

# For windows:
set GITHUB_AUTH_TOKEN=<your access token>

تنسيق النتائج

توجد ثلاثة تنسيقات حاليًا: text وjson وcsv. وقد تُضاف تنسيقات أخرى في المستقبل.

يمكن تحديدها باستخدام الخيار -format.

أوامر أخرى

يحتوي مشروع criticality score أيضًا على أوامر أخرى لتوليد بيانات درجة الحرجية والتعامل معها.

  • enumerate_github: أداة لجمع مجموعة من مستودعات GitHub بدقة بحد أدنى من النجوم
  • collect_signals: عامل (worker) لجمع الإشارات الأولية على نطاق واسع من خلال الاستفادة من البنية التحتية لـ مشروع Scorecard.
  • scorer: أداة لإعادة حساب درجات الحرجية استنادًا إلى ملف CSV مُدخل.

البيانات العامة

إذا كنت مهتمًا برؤية قائمة بالمشاريع الحرجة مع درجات الحرجية الخاصة بها، فإننا ننشرها بتنسيق csv وكمجموعة بيانات BigQuery.

يتم توليد هذه البيانات باستخدام نسخة إنتاجية من مشروع criticality score يعمل على GCP. يمكن العثور على تفاصيل حول كيفية نشرها في دليل infra.

ملاحظة: حاليًا، تُشتق هذه القوائم من المشاريع المستضافة على GitHub فقط. ونخطط لتوسيعها في المستقبل القريب لتشمل المشاريع المستضافة على أنظمة التحكم بالمصادر الأخرى.

بيانات CSV

البيانات متاحة على Google Cloud Storage ويمكن تنزيلها عبر:

  • متصفح الويب: commondatastorage.googleapis.com/ossf-criticality-score/index.html
  • أداة سطر الأوامر gsutil: gsutil ls gs://ossf-criticality-score/

مجموعة بيانات BigQuery

تتوفر هذه البيانات في مجموعة بيانات BigQuery العامة.

باستخدام حساب GCP يمكنك تشغيل استعلامات عبر البيانات. على سبيل المثال، إليك استعلام يعرض أفضل 100 مستودع حسب الدرجة:

root@kitploit:~
  SELECT repo.url, default_score
    FROM `openssf.criticality_score_cron.criticality-score-v0-latest`
ORDER BY default_score DESC
   LIMIT 100;

المساهمة

إذا كنت ترغب في المشاركة أو لديك أفكار ترغب في مناقشتها، فإننا نناقش هذا المشروع في اجتماعات الفريق العامل لتأمين المشاريع الحرجة.

راجع التقويم المجتمعي للاطلاع على الجدول الزمني ودعوات الاجتماعات.

راجع وثائق المساهمة للحصول على إرشادات حول كيفية المساهمة.

تنزيل الأداة