
أداة اختبار أمان API تلقائية تقوم بفحص واجهات برمجة التطبيقات REST و SOAP بحثًا عن الثغرات الأمنية باستخدام مواصفات OpenAPI/Swagger وملفات WSDL. تنشر مجموعة كاملة مع OWASP ZAP و MariaDB و MongoDB.
ماسح واجهات برمجة التطبيقات هو أداة اختبار أمان آلية لواجهات برمجة التطبيقات تقوم بمسح واجهات REST و SOAP بحثًا عن الثغرات باستخدام مواصفات OpenAPI/Swagger وملفات WSDL.
git clone https://github.com/CSPF-Founder/api-scanner-docker.git
cd api-scanner-docker
python3 setup.py
سينفذ البرنامج النصي ما يلي:
./certs/).envافتح https://localhost:4455 في متصفحك.
إذا كنت تستخدم شهادة موقعة ذاتيًا، فسيظهر تحذير أمني في متصفحك - تابع لقبولها.
إذا كنت تفضل التهيئة يدويًا بدلاً من استخدام نص الإعداد:
cp .env.example .env
قم بتحرير .env وتحديث:
change_me_* بقيم عشوائية قويةCSRF_KEY بسلسلة عشوائية مكونة من 32 حرفًا أو أكثرZAP_API_KEY بسلسلة عشوائيةTRUSTED_ORIGINS مع نطاقك (مثل: https://scanner.yourcompany.com)DATABASE_URI و MONGO_DATABASE_URI مع متغيرات كلمة المرور الفرديةابدأ تشغيل المجموعة:
docker compose up -d
جميع التهيئة تتم من خلال ملف .env. راجع .env.example لجميع الخيارات المتاحة.
جميع البيانات مخزنة في وحدات تخزين مسماة Docker:
mariadb_data - حسابات المستخدمين والأدوار والجلساتmongodb_data - سجلات المسح والنتائج والتقاريرscanner_data - ملفات العمل والمواصفات المرفوعة والتقارير المنشأةdocker compose pull
docker compose up -d
docker compose down
لإزالة جميع البيانات (تدميري):
docker compose down -v
التحقق من السجلات:
docker compose logs api-scanner
docker compose logs zap
التحقق من صحة الخدمة:
docker compose ps
ZAP لا يبدأ: تأكد من توفر 4 جيجابايت على الأقل من ذاكرة الوصول العشوائي الحرة. يحتاج ZAP إلى حوالي 3 جيجابايت.
اللوحة غير قابلة للوصول: تحقق من وجود شهادات TLS في ./certs/ وأن TRUSTED_ORIGINS يتطابق مع عنوان URL الخاص بك بما في ذلك المنفذ (مثل: https://localhost:4455).
أخطاء اتصال قاعدة البيانات: انتظر من 30 إلى 60 ثانية بعد البدء الأول لقواعد البيانات للتهيئة.
دليل المستخدم الكامل: https://cspf-founder.github.io/api-scanner-docker/
| الخدمة | الصورة | الوصف |
|---|
| api-scanner | cysecurity/api-scanner:latest | لوحة ويب + محرك مسح في حاوية واحدة |
| zap | ghcr.io/zaproxy/zaproxy:stable | ماسح أمان OWASP ZAP |
| mariadb | mariadb:10.11 | إدارة المستخدمين وتخزين الجلسات |
| mongodb | mongo:4.4 | بيانات المسح والنتائج والتقارير |
| المتغير | الوصف |
|---|
MARIADB_PASSWORD | كلمة مرور مستخدم تطبيق MariaDB |
MONGO_APP_PASSWORD | كلمة مرور مستخدم تطبيق MongoDB |
CSRF_KEY | مفتاح حماية CSRF (32 حرفًا أو أكثر) |
ZAP_API_KEY | مفتاح مصادقة ZAP API |
TRUSTED_ORIGINS | مصادر HTTPS المسموح بها للوحة |
USE_TLS | تمكين HTTPS (الافتراضي: true) |
TZ | المنطقة الزمنية (الافتراضي: UTC) |