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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
chain-bench — يدقق الامتثال الأمني لسلسلة توريد البرامج وفقًا لمعيار CIS، حيث يفحص إعدادات SCM، وحماية الفروع، والتبعيات، وخطوط أنابيب CI/CD بحثًا عن المخاطر. | Kitploit
أدوات/GitHubGitHub/aquasecurity/chain-bench
ماسحات الثغرات الأمنيةتدقيق التكوينDevSecOpsأمن سلسلة التوريد
GitHubaquasecurity/chain-bench

chain-bench

يدقق الامتثال الأمني لسلسلة توريد البرامج وفقًا لمعيار CIS، حيث يفحص إعدادات SCM، وحماية الفروع، والتبعيات، وخطوط أنابيب CI/CD بحثًا عن المخاطر.

عرض المستودع
7746351منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

شعار chain-bench

📖 الوثائق

Chain-bench هي أداة مفتوحة المصدر لتدقيق مكدس سلسلة التوريد البرمجية الخاصة بك للتحقق من الامتثال الأمني استنادًا إلى معيار CIS لسلسلة التوريد البرمجية الجديد. يركز التدقيق على عملية دورة حياة تطوير البرمجيات (SDLC) بأكملها، حيث يمكنه الكشف عن المخاطر من وقت كتابة الكود إلى وقت النشر. للفوز بسباق المتسللين وحماية بياناتك الحساسة وثقة عملائك، تحتاج إلى ضمان أن كودك متوافق مع سياسات مؤسستك.

اقرأ المزيد في وثائق Chain-bench

Go Reference GitHub Release Downloads DockerHub Pulls

Build Status
License
go-report-card
عرض توضيحي

المحتويات

  • المحتويات
  • مقدمة
  • بداية سريعة
    • التثبيت
    • الاستخدام
      • باستخدام docker
      • باستخدام GitHub Actions
      • باستخدام Gitlab CI (beta)
  • المتطلبات
  • الموفرون المدعومون
  • يرجى الملاحظة
  • المساهمة
  • خريطة الطريق

مقدمة

Chain-bench هي أداة مفتوحة المصدر لتدقيق مكدس سلسلة التوريد البرمجية الخاصة بك للتحقق من الامتثال الأمني استنادًا إلى معيار CIS لسلسلة التوريد البرمجية الجديد. يركز التدقيق على عملية دورة حياة تطوير البرمجيات (SDLC) بأكملها، حيث يمكنه الكشف عن المخاطر من وقت كتابة الكود إلى وقت النشر.

بداية سريعة

الطريقة الأساسية لتشغيل chain-bench هي كأداة سطر أوامر مستقلة. يتطلب رمز وصول لحسابك وعنوان المستودع للوصول إلى نظام إدارة الشيفرة المصدرية (SCM).

التثبيت

احصل على Chain-bench عبر طريقة التثبيت المفضلة لديك. راجع قسم التثبيت في الوثائق للحصول على التفاصيل. على سبيل المثال:

  • brew install chain-bench
  • nix-env --install -A nixpkgs.chain-bench
  • docker run aquasec/chain-bench
  • قم بتنزيل الثنائي من https://github.com/aquasecurity/chain-bench/releases/latest/

الاستخدام

root@kitploit:~
chain-bench scan --repository-url <REPOSITORY_URL> --access-token <TOKEN> -o <OUTPUT_PATH>

باستخدام منصات SCM ذاتية الاستضافة أو المخصصة (مع نطاقات مخصصة)

root@kitploit:~
chain-bench scan --repository-url <REPOSITORY_URL> --scm-platform <SCM_PLATFORM> --access-token <TOKEN> -o <OUTPUT_PATH>

الخيارات المدعومة لـ scm-platform هي "github" و "gitlab" (إصدار تجريبي)

باستخدام docker

root@kitploit:~
docker run aquasec/chain-bench scan --repository-url <REPOSITORY_URL> --access-token <TOKEN>

باستخدام GitHub Actions

راجع المستودع على https://github.com/aquasecurity/chain-bench-action

مثال على الإخراج
root@kitploit:~
2022-06-13 15:22:18 INF 🚩	Fetch Starting
2022-06-13 15:22:19 INF 🏢	Fetching Organization Settings Finished
2022-06-13 15:22:29 INF 🛢️	Fetching Repository Settings Finished
2022-06-13 15:22:29 INF 🌱	Fetching Branch Protection Settings Finished
2022-06-13 15:22:29 INF 👫	Fetching Members Finished
2022-06-13 15:22:31 INF 🔧	Fetching Pipelines Finished
2022-06-13 15:22:31 INF 🏁	Fetch succeeded
   ID                                                 Name                                                Result                  Reason
-------- ----------------------------------------------------------------------------------------------- -------- ---------------------------------------
 1.1.3    Ensure any change to code receives approval of two strongly authenticated users                 Passed
 1.1.4    Ensure previous approvals are dismissed when updates are introduced to a code change proposal   Failed
 1.1.5    Ensure that there are restrictions on who can dismiss code change reviews                       Failed
 1.1.6    Ensure code owners are set for extra sensitive code or configuration                            Failed
 1.1.8    Ensure inactive branches are reviewed and removed periodically                                  Failed   20 inactive branches
 1.1.9    Ensure all checks have passed before the merge of new code                                      Passed
 1.1.10   Ensure open git branches are up to date before they can be merged into codebase                 Passed
 1.1.11   Ensure all open comments are resolved before allowing to merge code changes                     Passed
 1.1.12   Ensure verifying signed commits of new changes before merging                                   Failed
 1.1.13   Ensure linear history is required                                                               Passed
 1.1.14   Ensure branch protection rules are enforced on administrators                                   Failed
 1.1.15   Ensure pushing of new code is restricted to specific individuals or teams                       Passed
 1.1.16   Ensure force pushes code to branches is denied                                                  Failed
 1.1.17   Ensure branch deletions are denied                                                              Failed
 1.2.1    Ensure all public repositories contain a SECURITY.md file                                       Failed
 1.2.2    Ensure repository creation is limited to specific members                                       Failed
 1.2.3    Ensure repository deletion is limited to specific members                                       Passed
 1.2.4    Ensure issue deletion is limited to specific members                                            Passed
 1.3.1    Ensure inactive users are reviewed and removed periodically                                     Failed   22 inactive users
 1.3.3    Ensure minimum admins are set for the organization                                              Passed
 1.3.5    Ensure the organization is requiring members to use MFA                                         Passed
 1.3.7    Ensure 2 admins are set for each repository                                                     Failed
 1.3.8    Ensure strict base permissions are set for repositories                                         Passed
 1.3.9    Ensure an organization's identity is confirmed with a Verified badge                            Failed
 2.3.1    Ensure all build steps are defined as code                                                      Failed   No build job was found in pipelines
 2.3.5    Ensure access to the build process's triggering is minimized                                    Passed
 2.3.7    Ensure pipelines are automatically scanned for vulnerabilities                                  Passed
 2.3.8    Ensure scanners are in place to identify and prevent sensitive data in pipeline files           Failed   Repository is not scanned for secrets
 2.4.2    Ensure all external dependencies used in the build process are locked                           Failed   16 task(s) are not pinned
 2.4.6    Ensure pipeline steps produce an SBOM                                                           Passed
 3.1.7    Ensure dependencies are pinned to a specific, verified version                                  Failed   16 dependencies are not pinned
 3.2.2    Ensure packages are automatically scanned for known vulnerabilities                             Passed
 3.2.3    Ensure packages are automatically scanned for license implications                              Passed
 4.2.3    Ensure user's access to the package registry utilizes MFA                                       Passed
 4.2.5    Ensure anonymous access to artifacts is revoked                                                 Passed
 4.3.4    Ensure webhooks of the package registry are secured                                             Passed
-------- ----------------------------------------------------------------------------------------------- -------- ---------------------------------------
 Total Passed Rules: 19 out of 36
2022-06-13 15:22:31 INF Scan completed: 13.108s

باستخدام Gitlab CI (إصدار تجريبي)

يمكنك دمج نتائج chain-bench في تقرير الثغرات في Gitlab عن طريق إضافة خطوة جديدة في تعريف CI الخاص بك:

root@kitploit:~
chain-bench-scanning:
  stage: test
  image:
    name: docker.io/aquasec/chain-bench
    entrypoint: [""]
  script:
    - chain-bench scan --repository-url $CI_PROJECT_URL --access-token $CHAIN_BENCH_TOKEN --scm-platform gitlab -o results.json --template @/templates/gitlab_security_scanner.tpl
  artifacts:
    reports:
      container_scanning: results.json
  • يجب عليك إنشاء رمز جديد بدور Maintainer لديه صلاحيات read_api و read_repository واستخدامه كمتغير بيئة (مثل $CHAIN_BENCH_TOKEN)

المتطلبات

مطلوب توفير رمز وصول لديه صلاحية للنطاقات التالية: repo(الكل)، read:repo_hook، admin:org_hook، read:org

الموفرون المدعومون

ندعم حالياً أنظمة SCM من Github و Gitlab، مع مصادقة PAT.

يرجى الملاحظة

يقوم Chain-bench بتطبيق معيار CIS لسلسلة التوريد البرمجية بأكبر قدر ممكن من الدقة. يمكنك العثور على الفحوصات الحالية المنفذة تحت AVD - Software Supply Chain CIS - 1.0 والتي يتم تحديثها كل ليلة بناءً على ملفات metadata.json الخاصة بـ chain-bench. يرجى رفع المشكلات هنا إذا كان chain-bench لا ينفذ الاختبار بشكل صحيح كما هو موصوف في المعيار. للإبلاغ عن مشكلات في المعيار نفسه (على سبيل المثال، اختبارات تعتقد أنها غير مناسبة)، يرجى الانضمام إلى مجتمع CIS.

المساهمة

يرجى قراءة المساهمة قبل المساهمة. نرحب بطلبات السحب (PRs) وتقارير المشكلات.

خريطة الطريق

بالمضي قدمًا، نخطط لإصدار تحديثات لـ chain-bench لزيادة تغطية المعيار بمزيد من الفحوصات ودعم المزيد من المنصات. chain-bench هو مشروع مفتوح المصدر من Aqua Security وجزء من عائلة Trivy.

تنزيل الأداة