
أداة بلغة بايثون تُنشئ تصورات تفاعلية بتنسيق HTML قائمة على React من مخرجات masscan بتنسيق JSON، وتتضمن رسمًا بيانيًا شبكيًا بالقوى الموجهة باستخدام D3.js.
أداة بايثون تُنشئ تصورات HTML تفاعلية مبنية على React من مخرجات JSON لـ masscan، وتتميز برسم بياني للشبكة موجه بالقوة باستخدام D3.js.

: للبحث في المنافذ فقط (مثل :443)* لمطابقة الأنماط (مثل :*443, :80*, :*8*)# استنساخ أو تنزيل المشروع
cd masscan_report
# تثبيت التبعيات (اختياري، مطلوب فقط لتوليد PDF أثناء التطوير)
pip install pyinstaller # فقط إذا كنت تبني ملفًا تنفيذيًا
قم بتنزيل masscan_report.exe من مجلد dist/ - لا حاجة لتثبيت بايثون.
# باستخدام بايثون
python masscan_report.py <input_json> [-o output.html]
# باستخدام الملف التنفيذي
masscan_report.exe <input_json> [-o output.html]
# إنشاء تقرير بمخرجات افتراضية (report.html)
python masscan_report.py scans/home.json
# تحديد ملف مخرجات مخصص
python masscan_report.py scans/network_scan.json -o network_report.html
# باستخدام الملف التنفيذي
.\dist\masscan_report.exe .\scans\home.192.168.10000.json
تتوقع الأداة تنسيق مخرجات JSON من masscan:
[
{"ip": "192.168.1.1", "timestamp": "1234567890", "ports": [
{"port": 80, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 64}
]},
{"ip": "192.168.1.1", "timestamp": "1234567891", "ports": [
{"port": 443, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 64}
]}
]
قم بإنشاء هذا باستخدام masscan:
masscan 192.168.1.0/24 -p1-65535 --rate 1000 -oJ scan_results.json
masscan_report/
├── masscan_report.py # النص الرئيسي
├── port_descriptions.py # قاعدة بيانات المنافذ (أكثر من 6700 سطر)
├── scans/ # ملفات فحص نموذجية
│ ├── home.json
│ └── home.192.168.10000.json
├── dist/
│ └── masscan_report.exe # ملف تنفيذي مستقل
├── report.html # المخرجات المولدة
└── README.md
يحتوي port_descriptions.py على معلومات مفصلة لأكثر من 130 منفذًا شائعًا تتضمن:
pip install pyinstaller
pyinstaller --onefile --name masscan_report --add-data "port_descriptions.py;." masscan_report.py
سيتم إنشاء الملف التنفيذي في dist/masscan_report.exe.
MIT License
نرحب بالمساهمات! لا تتردد في تقديم المشكلات وطلبات السحب.
| الإجراء | التأثير |
|---|
| انقر على عقدة (رسم بياني) | فتح نافذة المعلومات |
| انقر على مضيف (الشريط الجانبي) | تسليط الضوء على المضيف والمنافذ |
| سحب عقدة | إعادة وضع العقدة |
| عجلة التمرير | تكبير / تصغير |
| سحب بالضغط (الخلفية) | تحريك العرض |
| 🔄 إعادة تعيين العرض | إعادة تعيين التكبير والموضع |
| ⚡ إعادة التسخين | إعادة تنشيط محاكاة القوة |
| 📄 تصدير PDF | إنشاء تقرير PDF |
| النمط | يطابق |
|---|
192.168 | عناوين IP تحتوي على "192.168" |
:443 | المنفذ 443 بالضبط |
:*443 | منافذ تنتهي بـ 443 (مثل 8443) |
:443* | منافذ تبدأ بـ 443 |
:*8* | منافذ تحتوي على 8 (مثل 80, 8080, 443) |