
خادم MCP لاختبار الاختراق المدعوم بالذكاء الاصطناعي
"في الأساطير اليابانية، التينغو هو روح جبلية شرسة — استراتيجي بارع، محارب، ومدرب للساموراي. في الأمن السيبراني، يرشدك خلال كل مرحلة من مراحل الصيد."
من الاستطلاع إلى التقرير — اختبار اختراق بمساعدة الذكاء الاصطناعي بأمر واحد.
Tengu هو خادم MCP يحول كلود إلى مساعد اختبار اختراق. فهو ينسق 80 أداة أمنية — من Nmap إلى Metasploit — مع ضوابط أمان مدمجة، وتسجيل تدقيق، وتقارير احترافية.
استخدم كلود كمساعد اختراق تفاعلي — أنت توجه المهمة، ويختار كلود الأدوات المناسبة ويسلسلها تلقائيًا.
git clone https://github.com/rfunix/tengu.git && cd tengu make docker-build make docker-up
اربط Claude Code بالخادم الجاري:```bash
claude mcp add --transport sse tengu http://localhost:8000/sse
ثم اسأل كلود: Do a full pentest on http://192.168.1.100
كلود يربط الأدوات تلقائياً: validate_target → whatweb → nmap → nikto →
nuclei → sqlmap → correlate_findings → generate_report
| الأمر | ما يبدأه |
|---|---|
مسح أهداف مخصصة دون تعديل الملفات:```bash TENGU_ALLOWED_HOSTS="192.168.1.0/24,10.0.0.0/8" make docker-up
### مستويات الصور
اختر الحجم المناسب لحالة استخدامك:
| المستوى | الحجم | MCP Tools | حالة الاستخدام |
|---------|-------|-----------|----------------|
| `minimal` | ~480MB | 17 | تحليل خفيف، بحث عن ثغرات CVE، إعداد التقارير |
| `core` | ~7GB | 47 | مجموعة أدوات اختبار الاختراق الكاملة (افتراضي) |
| `full` | ~8GB | 80 | كل شيء + Active Directory، لاسلكي، التخفي/أمن العمليات |```bash
TENGU_TIER=minimal make docker-build # lightweight
TENGU_TIER=core make docker-build # default
TENGU_TIER=full make docker-build # everything
جميع المستويات تشمل جميع المطالبات الـ35 و20 موردًا — فقط الأدوات الثنائية تختلف.
المتطلبات الأساسية: Python 3.12+, uv, Kali Linux (موصى به)```bash
git clone https://github.com/rfunix/tengu.git && cd tengu
uv sync
make install-tools
uv run tengu
اتصل بـ Claude Code:```bash
claude mcp add --scope user tengu -- uv run --directory /path/to/tengu tengu
تكوين الأهداف المسموح بها في tengu.toml:```toml
[targets]
allowed_hosts = ["192.168.1.0/24", "example.com"]
بالنسبة لـ Claude Desktop، وإعداد VM/SSE عن بعد، والتكوينات المتقدمة، انظر [docs/deployment-guide.md](https://github.com/rfunix/tengu/blob/HEAD/docs/deployment-guide.md).
</details>
### مرجع التكوين```toml
[targets]
# REQUIRED: Only these hosts will be scanned
allowed_hosts = ["192.168.1.0/24", "example.com"]
blocked_hosts = [] # Always blocked, even if in allowed_hosts
[stealth]
enabled = false # Route traffic through Tor/proxy
[stealth.proxy]
enabled = false
type = "socks5h"
host = "127.0.0.1"
port = 9050
[osint]
shodan_api_key = "" # Required for shodan_lookup
[tools.defaults]
scan_timeout = 300 # seconds
make docker-up |
خادم Tengu MCP (:8000) |
make docker-lab | + Juice Shop، DVWA (أهداف تدريب آمنة) |
make docker-pentest | + Metasploit، OWASP ZAP (أهداف من العالم الحقيقي) |
make docker-full | + Metasploit، ZAP، وأهداف المختبر |
انظر docs/configuration-reference.md للحصول على المرجع الكامل.
قم بتشغيل اختبار اختراق ذاتي بالكامل دون استدعاء أداة يدويًا. يستخدم العامل Claude كعقل استراتيجي و Tengu كمجموعة أدوات تنفيذية، متبعًا منهجية PTES من الاستطلاع إلى إعداد التقارير.
cp .env.example .env
**أهداف المختبر (Juice Shop, DVWA):**```bash
make docker-lab
make docker-agent # default model (sonnet)
make docker-agent-haiku # cheaper — claude-haiku-4-5, max_tokens=1024
make docker-agent-sonnet # balanced — claude-sonnet-4-6, max_tokens=4096
اختبارات الاختراق في العالم الحقيقي (Tengu + MSF + ZAP، بدون حاويات مختبرية):```bash make docker-pentest make docker-agent
**عرض التقارير في المتصفح:**```bash
make docker-report-view # http://localhost:8888 — styled HTML, all reports
make docker-report-browse # same, auto-opens browser
REPORT_PORT=9999 make docker-report-view # custom port
بدون Docker:```bash uv sync --extra agent python autonomous_tengu.py 192.168.1.100 --scope 192.168.1.0/24 --type blackbox
python autonomous_tengu.py 192.168.1.100 --model claude-haiku-4-5 --max-tokens 1024 --timeout 30
**التحكم في التكلفة** — ثلاثة متغيرات بيئة / أعلام سطر الأوامر:
| العلم | متغير البيئة | الافتراضي |
|---|---|---|
| `--model` | `TENGU_AGENT_MODEL` | `claude-sonnet-4-6` |
| `--max-tokens` | `TENGU_AGENT_MAX_TOKENS` | `2048` |
| `--timeout` | `TENGU_AGENT_TIMEOUT` | `60` (دقائق، `0`=غير محدود) |
### كيف يعمل```
START → initializer → strategist ─┬─→ executor → analyst ─┬─→ strategist (loop)
│ └─→ reporter → END
├─→ human_gate → executor
└─→ reporter → END
السلوكيات الرئيسية:
msf_run_module, hydra_attack, impacket_kerberoast, sqlmap_scan مع مستوى ≥3)--max-iterationscorrelate_findings + score_risk + generate_report| المرحلة | الاسم | ما يفعله Tengu | الأدوات الرئيسية |
|---|---|---|---|
| 1 | ما قبل الاشتراك | validate_target يُؤكد النطاق، check_tools يتحقق من الجاهزية | validate_target, check_tools |
| 2 | جمع المعلومات الاستخباراتية | OSINT, استقصاء DNS, تعداد النطاقات الفرعية, بصمة التكنولوجيا | nmap, subfinder, amass, shodan, whatweb |
| 3 | نمذجة التهديدات | كلود يحلل المعلومات التي تم جمعها، يُعطي أولوية لسطح الهجوم، يبني سيناريوهات التهديد | (مدفوع بـ AI — لا توجد أداة خارجية) |
| 4 | تحليل الثغرات الأمنية | مسح القوالب، اختبار تطبيقات الويب، تحليل SSL/TLS, اختبار وسائط المعلمات | nuclei, nikto, ffuf, sqlmap, testssl |
| 5 | الاستغلال | استغلال مُتحكم به للثغرات المؤكدة مع وجود الإنسان في الحلقة | msf_run_module, sqlmap, hydra, searchsploit |
| 6 | ما بعد الاستغلال | حصاد بيانات الاعتماد، تقييم الحركة الجانبية، تصعيد الامتيازات | impacket_kerberoast, nxc_enum, enum4linux |
| 7 | الإبلاغ | ربط جميع النتائج، حساب درجات المخاطر، إنشاء تقرير مهني | correlate_findings, score_risk, generate_report |
minimal(17 أداة، ~480MB) ·core(47 أداة، ~7GB، افتراضي) ·full(80 أداة، ~8GB) ابنِ باستخدام:TENGU_TIER=<tier> make docker-build. جميع المستويات تتضمن جميع الـ 35 مطالبة والـ 20 موردًا.
| الفئة | الأدوات | العدد |
|---|---|---|
| الاستطلاع | Nmap, Masscan, Amass, Subfinder, Gowitness, HTTrack, Katana, httpx, SNMPwalk, RustScan | 10 |
| فحص الويب | Nikto, Nuclei, FFUF, Gobuster, WPScan, Feroxbuster, OWASP ZAP, wafw00f | 8 |
| SSL / TLS | sslyze, testssl.sh, HTTP headers analysis, CORS tester | 4 |
| DNS | DNS Enumerate, DNSRecon, Subjack, WHOIS | 4 |
| OSINT | theHarvester, Shodan, WhatWeb, DNStwist | 4 |
| اختبار الحقن | SQLMap, Dalfox (XSS), Commix, CRLFuzz, GraphQL Security Check, Arjun | 6 |
| القوة الغاشمة | Hydra, John the Ripper, Hashcat, CeWL | 4 |
| الاستغلال | Metasploit (search, info, run, sessions, cmd), SearchSploit | 6 |
| الهندسة الاجتماعية | SET credential harvester, QR code attack, payload generator | 3 |
| الأسرار والشفرة | TruffleHog, Gitleaks | 2 |
| الحاويات والسحابة | Trivy, Checkov, ScoutSuite, Prowler | 4 |
| الدليل النشط | NetExec, Enum4linux, Impacket (Kerberoast, secretsdump, psexec, wmiexec, smbclient), BloodHound, Responder, SMBMap | 10 |
| اللاسلكي | aircrack-ng / airodump-ng | 1 |
| الإخفاء والتخفي | Tor check/rotate, proxy check, identity rotation | 5 |
| التحليل والإبلاغ | Finding correlation, CVSS risk scoring, report generation | 3 |
| ذكاء CVE | CVE lookup (NVD), CVE search by keyword/product/severity | 2 |
| الأدوات المساعدة | Tool checker, target validator | 2 |
| الأداة | الوصف |
|---|---|
nmap_scan | فحص المنافذ واكتشاف الخدمات/أنظمة التشغيل |
masscan_scan | ماسح منافذ عالي السرعة للشبكات الكبيرة |
subfinder_enum | تعداد النطاقات الفرعية السلبي |
amass_enum | تخطيط سطح الهجوم وهجوم القوة الغاشمة على DNS |
dnsrecon_scan | استقصاء DNS (نقل المنطقة، القوة الغاشمة، PTR) |
dns_enumerate | تعداد سجلات DNS (A, MX, NS, TXT, SOA…) |
whois_lookup | بحث WHOIS عن النطاق وعنوان IP |
subjack_check | كشف الاستيلاء على النطاقات الفرعية |
gowitness_screenshot | التقاط لقطات شاشة للويب للتوثيق |
httrack_mirror | نسخة مرآة كاملة للموقع للتحليل والطب الشرعي دون اتصال |
katana_crawl | زاحف ويب سريع لاكتشاف الروابط ورسم خرائط النقاط الطرفية |
httpx_probe | مُسابر HTTP — أكواد الحالة، حزمة التقنيات، إعادة التوجيه |
snmpwalk_scan | تعداد SNMP وجولة MIB |
rustscan_scan | فحص منافذ فائق السرعة (يجد المنافذ المفتوحة لمتابعة Nmap) |
| الأداة | الوصف |
|---|---|
theharvester_scan | تعداد البريد الإلكتروني والنطاقات الفرعية والمضيفين من المصادر العامة |
| الأداة | الوصف |
|---|---|
set_credential_harvester | استنساخ موقع والتقاط بيانات الاعتماد المقدمة (محاكاة تصيد مصرح بها) |
set_qrcode_attack | إنشاء رمز QR يشير إلى عنوان URL لتقييمات الهندسة الاجتماعية الفعلية |
set_payload_generator | إنشاء حمولات الهندسة الاجتماعية (PowerShell, HTA) للحملات المصرح بها |
| الأداة | الوصف |
|---|---|
hydra_attack | هجوم القوة الغاشمة لتسجيل الدخول إلى الشبكة (SSH, FTP, HTTP, SMB…) |
hash_crack |
| الأداة | الوصف |
|---|---|
zap_spider | زاحف ويب OWASP ZAP |
zap_active_scan | فحص الثغرات النشط لـ OWASP ZAP |
zap_get_alerts | استرجاع نتائج فحص ZAP |
| الأداة | الوصف |
|---|---|
trufflehog_scan | كشف الأسرار المسربة في مستودعات git |
gitleaks_scan | فحص بيانات الاعتماد في تاريخ git |
| الأداة | الوصف |
|---|---|
trivy_scan | فحص الثغرات لصور Docker وIaC وSBOM |
| الأداة | الوصف |
|---|---|
scoutsuite_scan | تدقيق أمن السحابة (AWS, Azure, GCP) |
prowler_scan | أفضل ممارسات أمان AWS/GCP/Azure وتدقيق الامتثال |
| الأداة | الوصف |
|---|---|
aircrack_scan | فحص شبكة لاسلكية سلبي (airodump-ng) |
| الأداة | الوصف |
|---|---|
checkov_scan | فحص أخطاء تهيئة IaC (Terraform, K8s, Dockerfile) |
قوالب سير عمل مبنية مسبقًا ترشد Claude خلال المهام الكاملة.
| الفئة | المطالبات |
|---|---|
| سير عمل اختبار الاختراق | full_pentest, quick_recon, web_app_assessment |
| تقييم الثغرات | assess_injection, assess_access_control, assess_crypto, assess_misconfig |
| OSINT | osint_investigation |
| التقارير | executive_report, technical_report, full_pentest_report, finding_detail, risk_matrix, remediation_plan, retest_report, save_report |
| التخفي / OPSEC | stealth_assessment, opsec_checklist |
| المتخصصة | ad_assessment, api_security_assessment, container_assessment, cloud_assessment, wireless_assessment, bug_bounty_workflow, compliance_assessment |
| الإجراءات السريعة | explore_url, map_network, hunt_subdomains, find_vulns, find_secrets, go_stealth, crack_wifi, pwn_target, msf_exploit_workflow |
| الهندسة الاجتماعية | social_engineering_assessment |
بيانات مرجعية ثابتة تُحمّل بواسطة Claude أثناء المهام.
| URI | المحتوى |
|---|---|
owasp://top10/2025 | قائمة OWASP Top 10:2025 الكاملة |
owasp://top10/2025/{A01..A10} | تفاصيل كل فئة وقائمة اختبار |
owasp://api-security/top10 | قمة OWASP API Security Top 10 (2023) |
owasp://api-security/top10/{API1..API10} | تفاصيل كل فئة |
ptes://phases | نظرة عامة على منهجية PTES المكونة من 7 مراحل |
ptes://phase/{1..7} | تفاصيل المرحلة (الأهداف، الأدوات، التسليمات) |
checklist://web-application | قائمة اختبار تطبيقات الويب (دليل اختبار OWASP) |
checklist://api | قائمة اختبار API |
checklist://network | قائمة اختبار البنية التحتية للشبكة |
mitre://attack/tactics | تكتيكات وتقنيات MITRE ATT&CK Enterprise |
mitre://attack/technique/{T1xxx} | تفاصيل تقنية بواسطة المعرف |
creds://defaults/{product} | قاعدة بيانات بيانات الاعتماد الافتراضية |
payloads://{type} | قوائم الحمولات المنسقة حسب النوع (xss, sqli, lfi, ssti, إلخ.) |
stealth://techniques | دليل مرجعي لتقنيات الأمن العملياتي |
stealth://proxy-guide | دليل خطوة بخطوة لتكوين الوكيل وTor |
tools://catalog | حالة توفر الأداة الحية |
tools://{tool}/usage | دليل استخدام لـ nmap, nuclei, sqlmap, metasploit, trivy, amass |
prompts://list | قائمة بجميع المطالبات المتاحة مع الأوصاف |
prompts://category/{category} | المطالبات المصفاة حسب الفئة |
┌─────────────┐ MCP ┌─────────────────┐ subprocess ┌─────────────────┐ │ Claude │◄────────────►│ Tengu │─────────────────►│ Nmap, SQLMap, │ │ (Desktop / │ stdio/SSE │ MCP Server │ (never shell=T) │ Metasploit... │ │ Code) │ │ │ └─────────────────┘ └─────────────┘ └────────┬─────────┘ │ Every tool call passes through: │ ┌────────▼─────────┐ │ Safety Pipeline │ │ │ │ 1. sanitizer │ ← strip metacharacters, validate format │ 2. allowlist │ ← check target against tengu.toml │ 3. rate_limiter │ ← sliding window + concurrent slots │ 4. audit logger │ ← JSON log to ./logs/tengu-audit.log └──────────────────┘
---
## ملفات التهيئة
يستخدم Tengu ثلاثة ملفات تهيئة. تعديل الملف الخاطئ هو المصدر الأكثر شيوعًا للارتباك عند التبديل بين سير العمل المحلي و Docker.
| الملف | متى الاستخدام | ما يتحكم به |
|------|-------------|------------------|
| `tengu.toml` (الجذر) | التشغيل محليًا: `uv run tengu`، `uv run python autonomous_tengu.py` | تكوين خادم MCP: `allowed_hosts`، مسارات الأدوات، حدود المعدل، التخفي |
| `docker/tengu.toml` | التشغيل عبر Docker: `make docker-up`، `make docker-agent` | نفس الإعدادات كالملف الجذر، لكنها مهيأة مسبقًا لشبكات Docker (`172.16.0.0/12`، الأسماء المستعارة DNS للخدمات). مدمجة في الصورة وقت البناء — **إعادة البناء مطلوبة** بعد التغييرات (`make docker-rebuild-tengu`) |
| `.env` | محليًا وعبر Docker | المتغيرات السرية ومتغيرات وقت التشغيل: `ANTHROPIC_API_KEY`، `TENGU_AGENT_TARGET`، `TENGU_AGENT_MODEL`، `TENGU_AGENT_MAX_TOKENS`، إلخ. تُقرأ بواسطة `docker compose` و `load_dotenv()` |
| `.env.example` | مرجع فقط | قالب يسرد جميع متغيرات البيئة المتاحة |
**تهيئة سريعة لوضع المساعد (محليًا):** قم بتعديل `tengu.toml` في جذر المشروع — أضف هدفك إلى `[targets] allowed_hosts`.
**تهيئة سريعة لوضع الوكيل (Docker):** قم بتعديل `docker/tengu.toml`، ثم قم بتشغيل `make docker-rebuild-tengu` قبل `make docker-agent`.
> **مأزق شائع:** إذا فشلت الفحوصات مع خطأ `TargetNotAllowedError` داخل Docker، فمن المحتمل أنك قمت بتعديل `tengu.toml` (الجذر) بدلاً من `docker/tengu.toml`. يستخدم Docker نسخته الخاصة المدمجة في الصورة. بعد التعديل، قم بتشغيل `make docker-rebuild-tengu`.
---
## الأمان حسب التصميم
تم بناء Tengu كـ **مضاعف قوة لمختبري الاختراق البشريين**، وليس كأداة هجوم مستقلة.
| التحكم | الوصف |
|---------|-------------|
| **Target Allowlist** | يتم فحص الأهداف المعتمدة مسبقًا فقط في `tengu.toml` |
| **Input Sanitization** | يتم التحقق من صحة جميع المدخلات مقابل أنماط صارمة قبل الوصول إلى أي أداة |
| **Rate Limiting** | نافذة منزلقة + حدود الفتحات المتزامنة تمنع هجمات الحرمان من الخدمة العرضية |
| **Audit Logging** | يتم تسجيل كل استدعاء أداة في `./logs/tengu-audit.log` بتنسيق JSON |
| **Human-in-the-Loop** | تتطلب `msf_run_module` و `hydra_attack` و `impacket_kerberoast` تأكيدًا صريحًا |
| **No shell=True — ever** | تستخدم جميع استدعاءات العمليات الفرعية `asyncio.create_subprocess_exec` |
---
## التطوير```bash
make install-dev # Install Python deps + dev extras
make test # Run unit + security tests
make lint # ruff check
make typecheck # mypy strict
make check # lint + typecheck
make coverage # pytest --cov
make inspect # Open MCP Inspector
make doctor # Check which pentest tools are installed
Tengu يحتوي على أكثر من 2643 اختبارًا تغطي منطق الوحدة، والأمان (حقن الأوامر، التحقق من صحة الإدخال)، وسيناريوهات التكامل. راجع CLAUDE.md للحصول على دليل المساهم الكامل.
Tengu مصمم لاختبار الأمان المصرح به فقط. قم بفحص الأنظمة التي تملكها فقط أو التي لديك إذن كتابي صريح لاختبارها. الفحص غير المصرح به غير قانوني في معظم الولايات القضائية. المؤلفون لا يتحملون أي مسؤولية عن سوء الاستخدام.
| الأداة | الوصف |
|---|
nuclei_scan | ماسح ثغرات قائم على القوالب (CVEs، أخطاء التهيئة) |
nikto_scan | ماسح أخطاء تهيئة خادم الويب والبرامج القديمة |
ffuf_fuzz | اختبار الإرهاق للدليل والمعامل والمضيف الافتراضي |
gobuster_scan | هجوم القوة الغاشمة للدليل وDNS والمضيف الافتراضي |
wpscan_scan | ماسح ثغرات WordPress |
testssl_check | تحليل شامل لتكوين SSL/TLS |
analyze_headers | تحليل وتصنيف رؤوس أمان HTTP |
test_cors | كشف أخطاء تهيئة CORS |
ssl_tls_check | فحص شهادات وأصفار SSL/TLS |
wafw00f_scan | كشف جدار حماية تطبيقات الويب وبصمتها |
feroxbuster_scan | اكتشاف محتوى سريع ومتكرر عبر القوة الغاشمة |
shodan_lookup| بحث مضيف وأصول Shodan |
whatweb_scan | بصمة تقنيات الويب (CMS، WAF، أطر العمل) |
dnstwist_scan | كشف التباديل النطاقية وانتحال الأخطاء الإملائية |
| الأداة | الوصف |
|---|
sqlmap_scan | كشف واستغلال حقن SQL الآلي |
xss_scan | كشف XSS عبر Dalfox |
commix_scan | كشف واستغلال حقن الأوامر الآلي |
crlfuzz_scan | اختبار إرهاق حقن CRLF لثغرات حقن الرؤوس |
graphql_security_check | فحص GraphQL: الاستبطان، التجميع، حد العمق، اقتراحات الحقول |
arjun_discover | اكتشاف معاملات HTTP المخفية |
| الأداة | الوصف |
|---|
msf_search | البحث في وحدات Metasploit |
msf_module_info | الحصول على معلومات مفصلة لوحدة Metasploit |
msf_run_module | تنفيذ وحدة Metasploit (يتطلب تأكيدًا صريحًا) |
msf_sessions_list | عرض جلسات Metasploit النشطة |
msf_session_cmd | تنفيذ أمر على جلسة نشطة (shell/Meterpreter) |
searchsploit_query | البحث في قاعدة بيانات Exploit-DB دون اتصال |
| كسر تجزئة القاموس (Hashcat / John the Ripper) |
hash_identify | تحديد نوع التجزئة |
cewl_generate | إنشاء قائمة كلمات مخصصة من موقع ويب مستهدف |
| الأداة | الوصف |
|---|
enum4linux_scan | تعداد SMB/NetBIOS |
nxc_enum | تعداد الدليل النشط عبر NetExec |
impacket_kerberoast | Kerberoasting باستخدام Impacket GetUserSPNs |
impacket_secretsdump | تفريغ أسرار SAM/LSA/NTDS عن بُعد عبر Impacket |
impacket_psexec | تنفيذ أوامر عن بُعد عبر SMB (على غرار PsExec) |
impacket_wmiexec | تنفيذ أوامر عن بُعد عبر WMI |
impacket_smbclient | تعداد مشاركات SMB والوصول إلى الملفات |
bloodhound_collect | جمع بيانات BloodHound AD (SharpHound/bloodhound-python) |
responder_capture | تسميم LLMNR/NBT-NS/MDNS لالتقاط بيانات الاعتماد |
smbmap_scan | تعداد مشاركات SMB واختبار الوصول |
| الأداة | الوصف |
|---|
tor_check | التحقق من اتصال Tor وعنوان IP لعقدة الخروج |
tor_new_identity | طلب دائرة Tor جديدة |
check_anonymity | فحص عنوان IP المكشوف وتسريبات DNS ومستوى الإخفاء |
proxy_check | التحقق من زمن انتقال الوكيل وعنوان IP للخروج ونوع الإخفاء |
rotate_identity | تدوير دائرة Tor ووكيل المستخدم في وقت واحد |
| الأداة | الوصف |
|---|
check_tools | التحقق من الأدوات الخارجية المثبتة |
validate_target | التحقق من الهدف مقابل قائمة السماح |
correlate_findings | ربط النتائج عبر عمليات الفحص المتعددة |
score_risk | تسجيل المخاطر بناءً على CVSS |
cve_lookup | تفاصيل CVE من NVD (CVSS, CWE, المنتجات المتأثرة) |
cve_search | البحث عن CVEs بالكلمة المفتاحية أو المنتج أو الشدة |
generate_report | إنشاء تقرير اختبار الاختراق بتنسيق Markdown/HTML/PDF |