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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
brakeman — ماسح ثغرات أمنية للتحليل الثابت لتطبيقات Ruby on Rails | Kitploit
أدوات/GitHubGitHub/presidentbeef/brakeman
التحليل الثابتماسحات الثغرات الأمنيةتحليل الكودأمن الويبDevSecOps
GitHubpresidentbeef/brakeman

brakeman

ماسح ثغرات أمنية للتحليل الثابت لتطبيقات Ruby on Rails

عرض المستودع
7.3k773منذ 8 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

شعار Brakeman

حالة البناء تغطية الكود

Brakeman

Brakeman هي أداة تحليل ثابتة تتحقق من تطبيقات Ruby on Rails بحثًا عن ثغرات أمنية.

التثبيت

باستخدام RubyGems:

root@kitploit:~
gem install brakeman

باستخدام Bundler:

root@kitploit:~
group :development do
  gem 'brakeman', require: false
end

باستخدام Docker:

root@kitploit:~
docker pull presidentbeef/brakeman

باستخدام Docker لبناء من المصدر:

root@kitploit:~
git clone https://github.com/presidentbeef/brakeman.git
cd brakeman
docker build . -t brakeman

الاستخدام

التشغيل محليًا

من الدليل الجذري لتطبيق Rails:

root@kitploit:~
brakeman

خارج جذر Rails:

root@kitploit:~
brakeman /path/to/rails/application

التشغيل باستخدام Docker

من الدليل الجذري لتطبيق Rails:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman

مع ألوان أجمل قليلاً:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman --color

لتقرير HTML:

root@kitploit:~
docker run -v "$(pwd)":/code presidentbeef/brakeman -o brakeman_results.html

خارج جذر Rails (لاحظ أن ملف الإخراج نسبي بالنسبة إلى path/to/rails/application):

root@kitploit:~
docker run -v 'path/to/rails/application':/code presidentbeef/brakeman -o brakeman_results.html

التوافق

يجب أن يعمل Brakeman مع أي إصدار من Rails من 2.3.x إلى 8.x.

يمكن لـ Brakeman تحليل الكود المكتوب بتركيب Ruby 2.0 والإصدارات الأحدث، ولكنه يتطلب على الأقل Ruby 3.2.0 للتشغيل.

الخيارات الأساسية

للحصول على قائمة كاملة بالخيارات، استخدم brakeman --help أو راجع ملف OPTIONS.md.

لتحديد ملف إخراج للنتائج:

root@kitploit:~
brakeman -o output_file

يتم تحديد تنسيق الإخراج من خلال امتداد الملف أو باستخدام الخيار -f. الخيارات الحالية هي: text، html، tabs، json، junit، markdown، csv، codeclimate، github، sarif، و sonar.

يمكن تحديد ملفات إخراج متعددة:

root@kitploit:~
brakeman -o output.html -o output.json

للإخراج إلى ملف وإلى وحدة التحكم في نفس الوقت، مع الألوان:

root@kitploit:~
brakeman --color -o /dev/stdout -o output.json

لقمع التحذيرات المعلوماتية وإخراج التقرير فقط:

root@kitploit:~
brakeman -q

لاحظ أن جميع مخرجات Brakeman باستثناء التقارير تُرسل إلى stderr، مما يسهل توجيه stdout إلى ملف والحصول على التقرير فقط.

لرؤية جميع أنواع معلومات التصحيح:

root@kitploit:~
brakeman -d

يمكن تخطي فحوصات محددة، إذا رغبت. يجب أن يكون الاسم بالحالة الصحيحة. على سبيل المثال، لتخطي البحث عن المسارات الافتراضية (DefaultRoutes):

root@kitploit:~
brakeman -x DefaultRoutes

يجب فصل الفحوصات المتعددة بفاصلة:

root@kitploit:~
brakeman -x DefaultRoutes,Redirect

للقيام بالعكس وتشغيل مجموعة معينة فقط من الاختبارات:

root@kitploit:~
brakeman -t SQL,ValidationRegex

إذا كان Brakaman يعمل ببطء، جرب:

root@kitploit:~
brakeman --faster

سيؤدي ذلك إلى تعطيل بعض الميزات، ولكن من المحتمل أن يكون أسرع بكثير (حاليًا هو نفسه --skip-libs --no-branching). تحذير: قد يتسبب ذلك في فقدان Brakeman لبعض الثغرات الأمنية.

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

root@kitploit:~
brakeman --no-exit-on-warn --no-exit-on-error

لتخطي ملفات أو أدلة معينة قد يواجه Brakeman صعوبة في تحليلها، استخدم:

root@kitploit:~
brakeman --skip-files file1,/path1/,path2/

لمقارنة نتائج مسح مع مسح سابق، استخدم خيار إخراج JSON ثم:

root@kitploit:~
brakeman --compare old_report.json

سيؤدي ذلك إلى إخراج JSON بقائمتين: واحدة للتحذيرات التي تم إصلاحها وأخرى للتحذيرات الجديدة.

سيتجاهل Brakeman التحذيرات إذا تم تكوينه للقيام بذلك. بشكل افتراضي، يبحث عن ملف تكوين في config/brakeman.ignore. لإنشاء هذا الملف وإدارته، استخدم:

root@kitploit:~
brakeman -I

إذا كنت تريد رؤية التحذيرات التي تجاهلتها مؤقتًا دون التأثير على رمز الخروج، استخدم:

root@kitploit:~
brakeman --show-ignored

معلومات التحذير

راجع warning_types للحصول على مزيد من المعلومات حول التحذيرات التي يبلغ عنها هذا الأداة.

سياق التحذير

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

مستويات الثقة

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

هناك ثلاثة مستويات للثقة:

  • عالي - إما أن هذا تحذير بسيط (قيمة منطقية) أو من المحتمل جدًا استخدام مدخلات المستخدم بطرق غير آمنة.
  • متوسط - يشير هذا عمومًا إلى استخدام غير آمن لمتغير، ولكن قد يكون المتغير أو لا يكون مدخل مستخدم.
  • ضعيف - يعني عادةً استخدام مدخلات المستخدم بشكل غير مباشر بطريقة قد تكون غير آمنة.

للحصول فقط على تحذيرات أعلى من مستوى ثقة معين:

root@kitploit:~
brakeman -w3

يأخذ المفتاح -w رقمًا من 1 إلى 3، حيث 1 منخفض (جميع التحذيرات) و 3 عالي (فقط التحذيرات ذات الثقة الأعلى).

ملفات التكوين

يمكن تخزين خيارات Brakeman وقراءتها من ملفات YAML.

لتبسيط عملية كتابة ملف تكوين، سيقوم الخيار -C بإخراج الخيارات المحددة حاليًا:

root@kitploit:~
$ brakeman -C --skip-files plugins/
---
:skip_files:
- plugins/

الخيارات التي يتم تمريرها عبر سطر الأوامر لها أولوية على ملفات التكوين.

مواقع التكوين الافتراضية هي ./config/brakeman.yml و ~/.brakeman/config.yml و /etc/brakeman/config.yml

يمكن استخدام الخيار -c لتحديد ملف تكوين لاستخدامه.

التكامل المستمر

هناك إضافة متاحة لـ Jenkins/Hudson.

لمزيد من الاختبارات المستمرة، جرب إضافة Guard.

هناك بعض إجراءات GitHub متاحة.

البناء

root@kitploit:~
git clone git://github.com/presidentbeef/brakeman.git
cd brakeman
gem build brakeman.gemspec
gem install brakeman*.gem

من يستخدم Brakeman؟

  • Code Climate
  • GitHub
  • Groupon
  • New Relic
  • Twitter

..والمزيد!

الموقع الرئيسي/الأخبار

الموقع: http://brakemanscanner.org/

تويتر: https://twitter.com/brakeman

الدردشة: https://gitter.im/presidentbeef/brakeman

الترخيص

Brakeman مجاني للاستخدام غير التجاري.

راجع COPYING للتفاصيل.

تنزيل الأداة