
BFAC (مدقق ملفات النسخ الاحتياطي): أداة آلية تفحص ملفات النسخ الاحتياطي التي قد تكشف عن شيفرة مصدر تطبيق الويب.
اختبار متقدم لملفات النسخ الاحتياطي الخلفية لتطبيقات الويب

BFAC (Backup File Artifacts Checker) هي أداة آلية تتحقق من ملفات النسخ الاحتياطي التي قد تكشف عن كود المصدر لتطبيق الويب. يمكن أن تؤدي هذه الملفات أيضًا إلى تسرب معلومات حساسة، مثل كلمات المرور، وهيكل الدليل، إلخ.
هدف BFAC هو أن تكون أداة شاملة لاختبار الصندوق الأسود لملفات النسخ الاحتياطي الخلفية.
| الوصف | الأمر |
|---|---|
| المساعدة | bfac --help |
| فحص عنوان URL واحد. | bfac --url http://example.com/test.php |
| فحص قائمة عناوين URL. | bfac --list testing_list.txt |
| عنوان URL واحد بمستوى مختلف (المستوى 2 مثلاً). | bfac --url http://example.com/test.php --level 2 |
| عنوان URL واحد وعرض النتائج فقط. | bfac --no-text --url http://example.com/test.php |
| حصر الاختبار على اختبارات DVCS المكشوفة. | bfac --dvcs-test --url http://example.com/ |
| التحقق من وجود الملفات باستخدام فحوصات Content-Length فقط. | bfac --detection-technique content_length http://example.com/test.php |
| التحقق من وجود الملفات باستخدام فحوصات Status-Code فقط. | bfac --detection-technique status_code http://example.com/test.php |
| استبعاد النتائج ذات رموز الحالة المحددة. | bfac --exclude-status-codes 301,999 http://example.com/test.php |
import bfac
testing_level = 5
# Returns a list of BFA patterns for http://example.com/test.php
bfa_urls = bfac.generate_bfa_urls(
'http://example.com/test.php', testing_level=testing_level)
# Performs BFA testing using BFAC, and returns a list of findings, if any.
# If nothing is identified, it returns an empty list.
bfa_testing_result = bfac.test_url(
'http://example.com/test.php', testing_level=testing_level)
sudo python setup.py install
يدعم المشروع حاليًا جميع المنصات التي تعمل عليها Python. المشروع متوافق مع كل من Python 2 و Python 3.
س: كيف يمكن استخدام BFAC مع جميع المستويات؟
ج: يعمل BFAC بجميع المستويات افتراضيًا. إذا كنت ترغب في تقليل مستوى الاختبار المستخدم، يمكنك ذلك عن طريق تعيين علامة --level إلى قيمة أقل.
س: كيف يحدد BFAC ما إذا كان الملف موجودًا فعليًا على خادم الويب أم لا؟
ج: تختلف طريقة BFAC في الكشف عن الأدوات الأمنية التقليدية. تحدد الأدوات الأمنية التقليدية وجود ملف على الخادم عن طريق التحقق من رمز حالة HTTP. نظرًا لوجود مسؤولي أنظمة قد يقومون بتزوير رموز حالة HTTP لطلبات HTTP بهدف خداع الأدوات الأمنية والروبوتات، نفذ BFAC طريقة إضافية. يقوم بالتحقق من الاستجابة العامة لمورد ويب غير صالح أو غير متاح. ثم يرسل طلبات ويقارن حجم الاستجابة للطلب مع الأساس الأولي.
--detection-technique all يستخدم كلا الطريقتين لفحوصات رمز حالة HTTP وطول محتوى HTTP.--detection-technique status_code: يستخدم فحوصات رمز حالة HTTP فقط.--detection-technique content_length: يستخدم فحوصات طول محتوى HTTP فقط.نرحب بمساهمات المجتمع في مشروع BFAC. إذا وجدت خطأ، أو كانت لديك فكرة لميزة، أو أفكار لإعادة هيكلة الكود ليعمل بشكل أفضل، أو أي شيء آخر، فلا تتردد في تقديم مشكلة (issue) أو طلب سحب (pull request).
متتبع المشكلات هو القناة المفضلة للإبلاغ عن الأخطاء وطلبات الميزات.
هذا المشروع مخصص للأغراض التعليمية واختبارات الأخلاقيات فقط. استخدام BFAC لمهاجمة أهداف دون موافقة متبادلة مسبقة غير قانوني. يتحمل المستخدم النهائي مسؤولية الامتثال لجميع القوانين المحلية والولائية والفيدرالية المطبقة. يخلي المطورون مسؤوليتهم ولا يتحملون أي مسؤولية عن أي إساءة استخدام أو ضرر يسببه هذا البرنامج.
المشروع مرخص حاليًا بموجب رخصة GNU GPLv3.0.
مازن أحمد