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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
bomber — يمسح قوائم مواد البرمجيات (SBOMs) للبحث عن الثغرات الأمنية. | Kitploit
أدوات/GitHubGitHub/devops-kung-fu/bomber
ماسحات الثغرات الأمنيةDevSecOpsأمن سلسلة التوريد
GitHubdevops-kung-fu/bomber

bomber

يمسح قوائم مواد البرمجيات (SBOMs) للبحث عن الثغرات الأمنية.

عرض المستودعالموقع الإلكتروني
62456منذ 6 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

bomber

GitHub release (latest by date) Go Report Card CII Best Practices codecov

bomber هو تطبيق يقوم بفحص قوائم مكونات البرمجيات (SBOMs) بحثًا عن الثغرات الأمنية.

نظرة عامة

لقد طلبت من بائع قائمة مكونات برمجيات (SBOM) لأحد منتجاته المغلقة المصدر، وقد زودك بها في ملف JSON... ماذا الآن؟

أول شيء سترغب في فعله هو معرفة ما إذا كان أي من المكونات المدرجة داخل قائمة المكونات يحتوي على ثغرات أمنية، ونوع التراخيص التي تمتلكها هذه المكونات. سيساعدك هذا في تحديد نوع المخاطرة التي سيتحملها استخدامك للمنتج.

العثور على الثغرات الأمنية ومعلومات الترخيص للمكونات المحددة في قائمة المكونات هو بالضبط ما صُمم bomber للقيام به. يمكن لـ bomber قراءة أي تنسيق CycloneDX قائم على JSON أو XML، أو تنسيق SPDX أو Syft بصيغة JSON، وإخبارك بسرعة إذا كان هناك أي ثغرات.

جدول المحتويات

  • مقابل المصدر المغلق
  • الغرض
  • تنسيقات قوائم المكونات المدعومة
  • مزودي البيانات
    • دعم المزود
    • وثائق المزود
  • التثبيت
    • ماك
    • لينكس
  • استخدام bomber
    • فحص قائمة مكونات واحدة
    • فحص مجلد كامل
  • تنسيقات المخرجات
    • مخرجات HTML
    • مخرجات JSON
    • مخرجات Markdown
  • تجاهل الثغرات
  • تصفية المخرجات
  • إثراء البيانات
    • نظام تسجيل التنبؤ بالاستغلال (EPSS)
  • أمور متقدمة
    • فحص قوائم المكونات من STDIN
    • متغيرات البيئة
  • ميزات تجريبية
    • أكواد الإرجاع لأعلى خطورة (تجريبي)
    • مخرجات تقارير HTML المدعومة بالذكاء الاصطناعي OpenAI
  • للتجربة
  • ملاحظات
  • المساهمة
  • قائمة مكونات البرمجيات
  • الرعاة
  • الإسناد

مفتوح المصدر مقابل المصدر المغلق

يمكن أن تكون البرمجيات إما مفتوحة المصدر أو مغلقة المصدر. يمكنك النظر إلى المكونات الخارجية التي ستجدها في Github، أو أي مستودع مصدر عام على أنها مفتوحة المصدر. من الناحية الفنية، البرمجيات التي تنشئها داخليًا في شركتك هي أيضًا مفتوحة المصدر - فهي ليست عامة، لكن فرقك الداخلية يمكنها رؤيتها. البرمجيات مغلقة المصدر يمكن أيضًا أن تكون داخلية، ولكن عادةً ما تكون هذه البرمجيات التي تشتريها من بائعين خارجيين.

يمكن للشركات استخدام أدوات SCA التي يوفرها بائعون مثل Github و Sonatype و Snyk وما إلى ذلك لفحص أي نوع من البرمجيات مفتوحة المصدر وتوفير بيانات الثغرات الأمنية - وحتى إنشاء قوائم مكونات في بعض الحالات. ما لا يمكنهم فعله (حتى الآن...) هو فحص البرمجيات مغلقة المصدر التي ليس لديك رؤية فيها. هذا هو المكان الذي تلعب فيه قوائم المكونات و bomber. توفر قوائم المكونات تكوين البرمجيات التي لا يمكنك الوصول إليها، ويحدد bomber ما إذا كان هناك أي شيء في قائمة المكونات به ثغرات.

الغرض

لقد أنشأنا bomber لفحص قوائم المكونات مغلقة المصدر التي يتم توفيرها عند استلامها من البائعين. يمكنه أيضًا فحص قوائم المكونات مفتوحة المصدر، ومن الناحية الفنية يمكنك استخدام bomber كأداة SCA مفتوحة المصدر إذا أردت.

تنسيقات قوائم المكونات المدعومة

هناك عدد لا بأس به من تنسيقات قوائم المكونات المتاحة اليوم. يدعم bomber ما يلي:

  • SPDX
  • CycloneDX
  • Syft

مزودي البيانات

يدعم bomber مصادر متعددة لمعلومات الثغرات الأمنية. نسمي هؤلاء المزودين. حاليًا، يستخدم bomber OSV كمزود افتراضي، ولكن يمكنك أيضًا استخدام قاعدة بيانات استشارات Github، أو فهرس Sonatype OSS، أو Snyk.

في الوقت الحالي، يرجى ملاحظة أن OSV مجاني ولا يتطلب أي بيانات اعتماد لاستخدامه، فهرس Sonatype OSS مجاني ولكنه يتطلب منك التسجيل والحصول على رمز مميز، ودعم Snyk يتطلب ترخيص Snyk.

بالإضافة إلى البيانات التي يجمعها bomber من المزودين، فإنه أيضًا يثري بيانات الثغرات بمعلومات إضافية مثل احتمالات الاستغلال.

دعم المزود

يرجى ملاحظة أن كل مزود يدعم أنظمة بيئية مختلفة، لذلك إذا لم ترَ أي ثغرات في أحدهم، جرب الآخر. النظام البيئي هو ببساطة مدير الحزم، أو نوع الحزمة. تتضمن الأمثلة rpm و npm و gems وما إلى ذلك. من المهم أن تفهم أن كل مزود قد يبلغ عن ثغرات مختلفة. إذا كنت في شك، انظر إلى عدد قليل منهم.

إذا لم يجد bomber أي ثغرات، فهذا لا يعني أنه لا توجد أي منها. كل ما يعنيه هو أن المزود المستخدم لم يكتشف أيًا منها، أو أنه لا يدعم النظام البيئي. بعض المزودين لديهم ثغرات تعود بدون معلومات عن الخطورة. في هذه الحالة، سيتم إدراج الخطورة على أنها "غير محددة"

وثائق المزود

يمكن العثور على وثائق المزود لـ bomber في:

  • OSV
  • قاعدة بيانات استشارات GitHub
  • OSSINDEX
  • Snyk

التثبيت

ماك

يمكنك استخدام Homebrew لتثبيت bomber باستخدام ما يلي:

root@kitploit:~
brew tap devops-kung-fu/homebrew-tap
brew install devops-kung-fu/homebrew-tap/bomber

إذا لم يكن لديك Homebrew، فلا يزال بإمكانك تنزيل أحدث إصدار (مثال: bomber_0.4.1_darwin_all.tar.gz)، واستخراج الملفات من الأرشيف، واستخدام البرنامج الثنائي bomber.

إذا كنت ترغب، يمكنك نقل البرنامج الثنائي bomber إلى دليل /usr/local/bin أو أي مكان في مسارك.

لينكس

لتثبيت bomber، قم بتنزيل أحدث إصدار لمنصتك وقم بالتثبيت محليًا. على سبيل المثال، قم بتثبيت bomber على أوبونتو:

root@kitploit:~
dpkg -i bomber_0.5.0_linux_arm64.deb

استخدام bomber

يمكنك إما فحص مجلد كامل من قوائم المكونات أو قائمة مكونات فردية باستخدام bomber. bomber لا يهتم إذا كان لديك تنسيقات متعددة في مجلد واحد. سيقوم بفرز كل شيء لك.

لاحظ أن المخرجات الافتراضية لـ bomber تكون إلى STDOUT. خيارات الإخراج بتنسيق HTML أو JSON موصوفة لاحقًا في هذا المستند.

فحص قائمة مكونات واحدة

root@kitploit:~
# باستخدام OSV (المزود الافتراضي) الذي لا يتطلب أي بيانات اعتماد
bomber scan cyclonedx.sbom.json

# باستخدام مزود يتطلب بيانات اعتماد (ossindex)
bomber scan --provider=xxx --username=xxx --token=xxx [sbom.json]

إذا وجد المزود ثغرات، سترى مخرجات مشابهة لما يلي:

إذا لم يُرجع المزود أي ثغرات، سترى رسالة تقول أنه لم يتم العثور على أي ثغرات.

ملحوظة: مجرد أن المزود لم يجد أي ثغرات باستخدام مزود محدد لا يعني أنه لا توجد ثغرات. يرجى تجربة المزودين الآخرين الذين يدعمهم bomber.

فحص مجلد كامل

هذا مفيد عندما تتلقى قوائم مكونات متعددة من بائع لنفس المنتج. أو ربما تريد معرفة ما هي الثغرات الموجودة في مؤسستك بأكملها. سيجد فحص المجلد جميع المكونات، ويزيل التكرارات، ثم يفحصها بحثًا عن الثغرات.

root@kitploit:~
# فحص مجلد من قوائم المكونات (الأمر التالي سيقوم بفحص مجلد في مجلدك الحالي باسم "sboms")
bomber scan --provider=xxx --username=xxx --token=xxx ./sboms

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

تنسيقات المخرجات

bomber يخرج البيانات بثلاثة تنسيقات مفيدة. افتراضيًا، يتم عرض المخرجات في سطر الأوامر. للحصول على تقارير محسّنة، يمكنك الإخراج بتنسيق HTML باستخدام العلم --output=html. للإخراج بتنسيق JSON، استخدم العلم --output=json. استخدم مواصفات الإخراج المفصولة بفواصل للحصول على مخرجات بتنسيقات متعددة --output=html,stdout,json.

مخرجات HTML

إذا كنت ترغب في إنشاء تقرير قابل للقراءة مع معلومات مفصلة عن الثغرات، يمكنك استخدام العلم --output لحفظ تقرير إلى ملف HTML.

مثال الأمر:

root@kitploit:~
bomber scan bad-bom.json --output=html

سيؤدي هذا إلى حفظ ملف في مجلدك الحالي بالتنسيق "YYYY-MM-DD-HH-MM-SS-bomber-results.html". إذا فتحت هذا الملف في متصفح ويب، سترى مخرجات مثل التالي:

مخرجات JSON

يمكن لـ bomber إخراج بيانات الثغرات بتنسيق JSON باستخدام العلم --output. المخرجات الافتراضية هي إلى STDOUT. هناك قدر كبير من المعلومات الإضافية في مخرجات JSON أكثر مما يتم عرضه في الطرفية. ستتمكن من رؤية وصف الحزمة والغرض منها، واسم الثغرة، وملخص للثغرة، والمزيد.

مثال الأمر:

root@kitploit:~
bomber scan bad-bom.json --output=json > filename.json

مخرجات Markdown

يدعم bomber أيضًا الإخراج بتنسيق Markdown. هذا مشابه جدًا لمخرجات HTML، لكنه ينقل التنسيق إلى محرك عرض Markdown، مثل GitHub. يتم حفظ المخرجات إلى ملف بالتنسيق "YYYY-MM-DD-HH-MM-SS-bomber-results.md".

مثال الأمر:

root@kitploit:~
bomber scan bad-bom.json --output=md

تجاهل الثغرات

إذا لزم الأمر، يمكنك استخدام العلم --ignore-file لتحميل قائمة بـ CVEs لتجاهلها في مخرجات الثغرات. يجب أن تكون هذه القائمة بتنسيق محدد حيث يتم إدخال كل CVE لتجاهله في سطر منفصل مشابه لما يلي:

root@kitploit:~
CVE-2022-31163
CVE-2022-23520

يوجد ملف مثال bomber.ignore هنا

لاستخدام ملف bomber.ignore، استخدم الصيغة التالية:

root@kitploit:~
bomber --ignore-file=bomber.ignore scan bom.json

تصفية المخرجات

يمكنك ضبط مستوى الخطورة باستخدام العلم --severity لإرجاع خطورات ثغرات محددة. على سبيل المثال، إذا قمت بتعيين --severity=moderate، فسيتم إرجاع الثغرات ذات خطورة MODERATE أو أعلى فقط.

على سبيل المثال، الأمر التالي سيعيد فقط الثغرات العالية والحرجة.

root@kitploit:~
bomber --severity=high scan bom.json

إثراء البيانات

bomber لديه القدرة على إثراء بيانات الثغرات التي يحصل عليها من المزودين. أول "مُثري" قمنا بتنفيذه هو لـ EPSS

ملحوظة: لم يعد تسجيل EPSS افتراضيًا في bomber 0.5.0 وما فوق. لإظهار درجات EPSS، تأكد من استخدام العلم --enrich=epss.

نظام تسجيل التنبؤ بالاستغلال (EPSS)

EPSS يرمز إلى نظام تسجيل التنبؤ بالاستغلال وهو إطار يتنبأ باحتمالية استغلال ثغرة أمنية. غالبًا ما يستخدم EPSS للمساعدة في تحديد الثغرات عالية المخاطر لتحديد أولويات المعالجة.

يستخدم EPSS نسبة مئوية للاحتمالية. لذا إذا رأيت 94، فإن الدرجة تحاول أن تقول أن تلك الثغرة لديها احتمالية استغلال بنسبة 94%. ومن المنطقي أن الثغرة ذات الدرجة مثل 94 هي شيء يستحق اهتمامًا فوريًا، بينما الثغرة ذات الدرجة مثل 20 تستحق أولوية أقل.

أمور متقدمة

إذا كنت ترغب، يمكنك تعيين متغيرين للبيئة لتخزين بيانات اعتمادك، وعدم الحاجة إلى كتابتها في سطر الأوامر. تحقق من معلومات متغيرات البيئة لاحقًا في ملف README هذا.

فحص قوائم المكونات من STDIN

إذا كنت تستخدم bomber في خطوط أنابيب CI/CD الخاصة بك، يمكنك القيام بأمر واحد متكامل مع Syft لإنشاء وفحص قائمة مكونات بحثًا عن الثغرات. للقيام بذلك، يمكنك فعل شيء مثل الأمر التالي:

root@kitploit:~
# تأكد من تضمين الحرف - في نهاية الأمر. هذا يؤدي إلى تشغيل bomber للقراءة من STDIN
syft packages . -o cyclonedx-json | bomber scan --provider ossindex --output json -

ينشئ هذا الأمر قائمة مكونات، ويوجهها إلى bomber، وينتج النتائج بتنسيق JSON.

متغيرات البيئة

إذا كنت لا تريد إدخال بيانات الاعتماد في كل مرة، يمكنك إضافة ما يلي إلى ملف .bashrc أو .bash_profile

root@kitploit:~
export BOMBER_PROVIDER_USERNAME={{اسم مستخدم OSS Index الخاص بك}}
export BOMBER_PROVIDER_TOKEN={{رمز API الخاص بـ OSS Index الخاص بك}}

ميزات تجريبية

أكواد الإرجاع لأعلى خطورة (تجريبي)

باستخدام العلم --exitcode، سيتم الإرجاع برمز خروج يمثل أعلى خطورة ثغرة تم العثور عليها. بدون هذا العلم، يمكنك توقع رمز خروج 0 للنجاح، أو 1 إذا تمت مصادفة خطأ.

بافتراض عدم وجود خطأ، سيتم إرجاع القيم التالية بواسطة bomber عند استخدام --exitcode

الخطورةرمز الإرجاع
غير محددة (هذه حالة حيث يقدم لنا المزود شيئًا غريبًا، أو لا معلومات)10
منخفضة11
متوسطة12
عالية

مخرجات تقارير HTML المدعومة بالذكاء الاصطناعي OpenAI

يحتوي bomber الآن على ميزة تجريبية تثري وصف الثغرات في مخرجات html. تأخذ هذه الميزة ثغرة وتغير الوصف إلى شيء أكثر قابلية للفهم لمستخدم غير تقني.

ملحوظة: هذه الميزة في حالة تجريبية رئيسية في هذا الوقت. إنها بطيئة للغاية، والمخرجات ليست منسقة بشكل جيد.

لاستخدام هذه الميزة، ستحتاج إلى توفير مفتاح API الخاص بـ OpenAI. يمكنك إما تمرير هذا المفتاح إلى CLI باستخدام --openai-api-key={{مفتاح API الخاص بـ OpenAI}} أو إضافة متغير بيئة:

root@kitploit:~
export OPENAI_API_KEY={{مفتاح API الخاص بـ OpenAI الخاص بك}}

بعد تعيين مفتاح API الخاص بـ OpenAI، يمكنك تعيين علامة الإخراج على النحو التالي:

root@kitploit:~
bomber scan --output ai [sbom.json]

للتجربة

إذا كنت ترغب في تجربة bomber، ستجد مجموعة مختارة من قوائم المكونات الاختبارية في مجلد test.

ملاحظات

  • من النادر جدًا رؤية قوائم المكونات مع معلومات الترخيص. في معظم الأحيان، تحتاج المولدات مثل Syft إلى علامة مثل --license. إذا كنت بحاجة إلى معلومات الترخيص، تأكد من طلبها مع قائمة المكونات.
  • OSV. إنه رائع، لكن API غير مستقر أيضًا. لديهم نقطة نهاية مجمعة من شأنها أن تجعل الحصول على المعلومات أسرع بكثير، ولكن في وقت كتابة هذا التقرير، لا تعمل كما هو متوقع. يحتاج bomber إلى إرسال PURL واحد في كل مرة للحصول على الثغرات، لذا في قائمة مكونات كبيرة سيستغرق بعض الوقت. سنراقب ذلك.

المساهمة

إذا كنت ترغب في المساهمة في تطوير bomber، يرجى الرجوع إلى ملف CONTRIBUTING.md في هذا المستودع. يرجى قراءة ملف CODE_OF_CONDUCT.md قبل المساهمة.

قائمة مكونات البرمجيات

يستخدم bomber Syft لإنشاء قائمة مكونات برمجيات في كل مرة يلتزم فيها مطور كود بهذا المستودع (طالما يتم استخدام Hookz وتمت تهيئته في دليل العمل). تتوفر معلومات أكثر عن CycloneDX هنا.

قائمة مكونات CycloneDX الحالية لـ bomber متاحة هنا.

الرعاة

شكرًا للرعاة والداعمين لـ bomber

الإسناد

شكر كبير لأصدقائنا في ZERO على شعار bomber.

شكرًا لـ Sonatype لتوفير أداة رائعة مثل فهرس Sonatype OSS.

شكر جزيل لأصدقائنا ومساهمينا في bomber في Snyk لإنشاء مزود، وبرمجة معالجة قائمة مكونات من STDIN. أنتم رائعون.

وصف EPSS مأخوذ من فريق Nucleus. شكرًا لكم!

تنزيل الأداة
13
حرجة14