
إطار آلي لصيد الثغرات والاستطلاع — يضم Subfinder, Naabu, Httpx, Nuclei, Nmap, CVEMap, Gowitness, Katana والمزيد خلف واجهة ويب موحدة
منصة أمن هجومي مفتوحة المصدر مدعومة بالذكاء الاصطناعي تدمج أدوات أمنية معروفة خلف واجهة ويب موحدة — مع فحص موزع، تقارير مولّدة بالذكاء الاصطناعي، مخطط فحص ذكي، رسم بياني تفاعلي للهجمات، ومجموعة تطوير برامج إضافية مجتمعية (Plugin SDK).
اطّلع أيضًا على ObsidianBox Modern في متجر Google Play.
| القسم | الوصف |
|---|---|
| لماذا | الدافع والفلسفة |
| الأدوات المغلفة | الأدوات العشر مفتوحة المصدر التي تنسقها XPFarm |
| خريطة العمارة | عمارة النظام الكاملة، خط الأنابيب، تدفق البيانات |
| Overlord — التحليل بالذكاء الاصطناعي | وكيل ذكاء اصطناعي لتحليل الثنائيات/البرامج الضارة/الويب |
| تقارير مكافآت الثغرات | تقارير إفصاح احترافية مولّدة بالذكاء الاصطناعي |
| مخطط الفحص بالذكاء الاصطناعي | مخطط خطوات الاستكشاف والاستغلال المحسّن بالذكاء الاصطناعي |
| العمال الموزعون | تشغيل الفحوص عبر أجهزة متعددة بالتوازي |
| رسم بياني للمسح | رسم بياني تفاعلي للأصول والخدمات والثغرات والاستغلالات |
| مجموعة تطوير البرامج الإضافية | نظام قابل للتوسع مجتمعي للأدوات والوكلاء وخطوط الأنابيب |
| محرك تطبيع النتائج | نتائج أمنية موحدة ومثراة ومكررة |
| ما الجديد | التحسينات الأخيرة في الأمان والموثوقية وتجربة المستخدم |
| الإعداد | تعليمات البناء والنشر |
| المهام المستقبلية | الميزات المخططة وخريطة الطريق |

أدوات مثل Assetnote رائعة — جيدة الصيانة ومحدّثة وشفافة في تحديد الثغرات. لكنها ليست مفتوحة المصدر. ولا داعي لإعادة اختراع العجلة، حيث توجد بالفعل العديد من الأدوات مفتوحة المصدر القوية. تقوم XPFarm بدمجها معًا لتوفير ماسح ثغرات مفتوح المصدر وأقل احتكارًا.
كان التركيز على بناء ماسح ثغرات يمكنك من رؤية ما يَفشل أو يُحذف في الخلفية، بدلاً من التساؤل عن الغموض. كل ما يفعله خط أنابيب الفحص يظهر للمستخدم.

flowchart TB
subgraph ENTRY["Entrypoint — main.go"]
M1["Parse Flags (-debug)"]
M2["InitDB — SQLite + WAL + GORM"]
M3["InitModules — 10 tool wrappers"]
M4["Load Plugins — normalization/all + plugins/all"]
M5["Health Check — auto-install missing tools"]
M6["CheckAndIndexTemplates — Nuclei versioning"]
M7["StartServer — Gin on :8888"]
M1 --> M2 --> M3 --> M4 --> M5 --> M6 --> M7
end
subgraph UI_LAYER["Web UI — internal/ui/server.go"]
direction TB
GIN["Gin HTTP Server\nEmbedded templates + static\nCSRF origin-check middleware"]
subgraph Pages["HTML Pages"]
P1["Dashboard — SSE live stage progress"]
P2["Assets & Targets"]
P3["Global Search — paginated + truncation"]
P4["Scan Graph — Cytoscape.js"]
P5["Bug Bounty Reports"]
P6["AI Scan Planner"]
P7["Workers & Jobs"]
P8["Overlord Chat + Binary Upload"]
P9["Modules"]
P10["Settings — AES-256-GCM encrypted"]
end
GIN --> Pages
end
subgraph SCAN_ENGINE["Scan Engine — internal/core/"]
direction TB
SM["ScanManager\nSingleton, mutex-guarded\nPanic recovery + SSE broadcast"]
subgraph PIPELINE["8-Stage Scanning Pipeline"]
direction TB
S1["1. Subfinder — Subdomain Discovery"]
S2["2. Filter & Save — Cloudflare / Localhost / Alive"]
S3["3. Naabu — Port Scanning (5-worker pool)"]
S4["4. Nmap — Service + Version Detection"]
S5["5. Httpx — HTTP Probing + Metadata"]
S6["6. Parallel Web — Screenshots, Crawl, URLs, Tech"]
S7["7. CVEMap — CVE lookup by product/tech"]
S8["8. Nuclei — Vulnerability Scanning"]
S1 --> S2 --> S3 --> S4 --> S5 --> S6 --> S7 --> S8
end
SM --> PIPELINE
end
subgraph REPORTS["Bug Bounty Reports — internal/reports/"]
RG["GenerateReport()\nCollects DB context + graph\nOverlord AI generation\nFallback built-in templates"]
RF["Formats: Markdown · PDF · HackerOne · Bugcrowd"]
RS["Storage: internal/storage/reports/"]
RG --> RF --> RS
end
subgraph PLANNER["AI Scan Planner — internal/planner/"]
PL["GenerateScanPlan()\nGathers asset/finding/graph context\nPolls Overlord for JSON plan\nFallback heuristic plan"]
PC["Capability Registry — 26 capabilities\n10 built-in modules + 16 Overlord agents\nRisk levels: safe / active / destructive"]
PS["ExecutePlanWithLogs()\nSSE log streaming per step\nRoutes builtin vs Overlord agent steps"]
PL --> PC --> PS
end
subgraph DISTRIBUTED["Distributed Workers — internal/distributed/"]
DW["Worker Binary — cmd/worker/main.go\n./xpfarm-worker -controller http://host:8888"]
DC["Controller — token auth, heartbeat monitor\nAtomically claims jobs from queue"]
DS["Scheduler — BestWorkerForTool()\nRoutes by capability + active job count"]
DJ["Job Queue — internal/storage/jobs/\nClaim via DB transaction, 30min timeout"]
DW --> DC --> DS --> DJ
end
subgraph OVERLORD["Overlord — AI Agent Subsystem"]
OV_PROXY["Overlord Proxy — internal/overlord/"]
subgraph OV_AGENTS["22 Specialized Agents"]
OA1["Binary RE — re-explorer, re-debugger, re-decompiler, re-scanner"]
OA2["APK — apk-recon, apk-dynamic, apk-decompiler"]
OA3["Web + Exploit — web-tester, re-exploiter, secrets-hunter, recon"]
end
subgraph OV_TOOLS["70+ TypeScript Tools"]
OT1["radare2, ghidra, binwalk, frida, angr, strings"]
OT2["semgrep, gitleaks, gau, corscanner, whatweb"]
OT3["git_dumper, js_scraper, crypto_solver, ropper"]
end
subgraph PROVIDERS["21 AI Providers"]
PR1["Anthropic · OpenAI · Groq · DeepSeek"]
PR2["Ollama (local) · xAI · OpenRouter · Cerebras"]
end
OV_PROXY --> OV_AGENTS
OV_PROXY --> OV_TOOLS
OV_PROXY --> PROVIDERS
end
subgraph SCAN_GRAPH["Scan Graph — internal/graph/"]
GB["BuildGraph() — queries 5 tables\nDeduplicates nodes + edges"]
subgraph GNODES["Node Types"]
GN1["asset #8b5cf6"]
GN2["target #0ea5e9"]
GN3["service #10b981"]
GN4["tech #f59e0b"]
GN5["vuln #ef4444"]
GN6["exploit #dc2626"]
end
GB --> GNODES
end
subgraph DATABASE["Database — internal/database/ + internal/storage/"]
DB["SQLite + WAL Mode\nGORM ORM\n10 open / 5 idle conns, 64MB WAL cap"]
subgraph MODELS["Data Models"]
DM1["Asset · Target · Port · WebAsset"]
DM2["Vulnerability · CVE · ScanResult"]
DM3["ScanProfile · NucleiTemplate · SavedSearch"]
DM4["Setting (AES-256-GCM encrypted)"]
DM5["Report · Plan · WorkerRecord · JobRecord"]
end
DB --> MODELS
end
subgraph DOCKER["Docker — docker-compose.yml"]
DC1["xpfarm — Go app :8888"]
DC2["overlord — OpenCode :3000"]
DC3["mobsf — Mobile scan :8000 (optional)"]
DC1 <-->|xpfarm-network| DC2
DC1 <-->|xpfarm-network| DC3
end
M7 --> GIN
GIN --> SCAN_ENGINE
GIN --> REPORTS
GIN --> PLANNER
GIN --> DISTRIBUTED
GIN --> OVERLORD
GIN --> SCAN_GRAPH
GIN --> DATABASE
Overlord هو وكيل ذكاء اصطناعي مدمج مدعوم بواسطة OpenCode يمكنه تحليل الثنائيات، الأرشيفات، ملفات APK، وأهداف الويب. ارفع ملفًا وتحاور معه — يستخدم الوكيل أدوات مثل radare2 وstrings وتصنيف الملفات وFrida والمزيد لفحص هدفك.




أنشئ تقارير إفصاح احترافية من نتائج الفحص بنقرة واحدة. يقوم وكيل الذكاء الاصطناعي Overlord بتجميع جرد الأصول ونتائج الثغرات وسياق الرسم البياني وبيانات CVE في تقرير مصقول.
التنسيقات:
| التنسيق | المخرجات |
|---|
كيف يعمل:
.md أو .html أو .pdf — أو انسخ Markdown الخام
يختار Overlord خطوات الاستكشاف والاستغلال المثلى لأهدافك بناءً على ما تم اكتشافه بالفعل — جرد الأصول، النتائج الموجودة، هيكل الرسم البياني، وقدرات الأدوات المتاحة.
الأنماط:
كيف يعمل:
سجل القدرات: 10 وحدات مدمجة + 16 وكيل Overlord، كل منها مصنف بمستوى المخاطرة (آمن / نشط / مدمر) وفئة لتصفية الأنماط.

قم بتشغيل الفحوص عبر أجهزة متعددة بالتوازي. انشر عقد العامل على أجهزة بعيدة وستسجل تلقائيًا مع المتحكم، وتسحب المهام، وتنفذ الأدوات محليًا، وتعيد النتائج.
نشر عامل:
./xpfarm-worker -controller http://xpfarm-host:8888 -id worker-1 -labels high-bandwidth,internal
كيف يعمل:
قائمة المهام: أنشئ المهام من واجهة العمال أو عبر POST /api/jobs/create. تعرض القائمة الحالة الحية والعامل المعين ومخرجات النتيجة.

تبني XPFarm رسمًا بيانيًا موجهًا موحدًا لكل كيان يُكتشف أثناء الفحص، مما يسهل الإجابة على أسئلة مثل "ما الخدمات التي تشغل تقنية ذات ثغرة CVE نشطة مع استغلال؟" أو "أظهر لي كل ما يمكن الوصول إليه من هذا الأصل".
أنواع العقد:
مثال مسار:
example.com (asset)
└─owns──► www.example.com (target)
├─exposes──► 443/tcp https (service)
│ └─runs──► nginx 1.24 (tech)
├─affected-by──► CVE-2023-44487 (vuln)
│ └─exploits──► Exploit: CVE-2023-44487
└─affected-by──► http-missing-security-headers (vuln)
تتميز XPFarm بأنها قابلة للتوسع عبر مجموعة SDK مجتمعية. يمكن لأي شخص إضافة أدوات ووكلاء وخطوط أنابيب جديدة دون لمس الكود الأساسي.
plugins/
├── all/all.go ← أضف استيراد الإضافة هنا
├── example-echo/ ← قالب بدء مصغر
├── example-repo-scanner/ ← مثال لماسح مستودعات وهمي
├── repo-semgrep/ ← إضافة Semgrep SAST (جاهزة للإنتاج)
└── repo-secrets/ ← إضافة Gitleaks + SecretFinder (جاهزة للإنتاج)
كتابة إضافة — ثلاث خطوات:
plugins/my-plugin/plugin.go — نفذ Tool و/أو Agent، واستدع plugin.RegisterTool() / plugin.RegisterAgent() في init()plugins/my-plugin/plugin.yaml — البيانات الوصفية_ "xpfarm/plugins/my-plugin" إلى plugins/all/all.goGET /api/plugins يسرد جميع الأدوات والوكلاء وخطوط الأنابيب والملفات البيانية المسجلة.
يتم تطبيع المخرجات الخام للماسحات مثل Nuclei وNmap وSemgrep وGitleaks إلى نموذج Finding موحد، مع إثراء بذكاء التهديدات الحية، وإزالة التكرار، والتجميع.
POST /api/normalize {"source": "nuclei", "raw": {...}}
│
▼ المُهايئ (nuclei / nmap / semgrep / gitleaks)
│ → Finding قانوني (CVE, CWE, severity, evidence, tags)
│
▼ المُثرون (يطبقون بالترتيب)
│ 1. CWE — قاموس كلمات مفتاحية بـ 40 قاعدة + خريطة 35 علامة (محلي، فوري)
│ 2. CVSS — NVD REST API v2, CVSS 3.1→3.0→2.0, ذاكرة تخزين مؤقت داخل العملية
│ 3. EPSS — واجهة FIRST.org لاحتمالية الاستغلال، ذاكرة تخزين مؤقت داخل العملية
│ 4. KEV — كتالوج الثغرات المستغلة المعروفة من CISA (sync.Once)
│
▼ بصمة SHA-256 → إزالة التكرار → تجميع حسب CWE/CVE/الشدة/الهدف
│
▼ تخزين SQLite (FindingRecord + GroupRecord)
./xpfarm-workerdata/.xpfarm.keylocalhost مقبول./xpfarm.sh update للترقية الاختيارية# الموصى به
./xpfarm.sh build # بناء جميع الحاويات
./xpfarm.sh up # تشغيل كل شيء (xpfarm :8888 + overlord :3000)
./xpfarm.sh update # إعادة البناء بأحدث إصدارات الأدوات (ترقية اختيارية)
# Windows
.\xpfarm.ps1 build
.\xpfarm.ps1 up
# Docker القياسي
docker compose up --build
# البناء من المصدر (بدون Overlord)
go build -o xpfarm
./xpfarm
./xpfarm -debug







![]() Asjidkalam |
![]() jamoski3112 Research |
Markdown | ملف .md نظيف مع ملخص تنفيذي وجدول النتائج والإصلاح |
PDF | يتم عرضه عبر wkhtmltopdf، ويعود إلى HTML كحل بديل |
HackerOne | هيكل محسّن للمنصة مع CVSS وخطوات إعادة الإنتاج |
Bugcrowd | عنوان، شدة، فئة VRT، التأثير، إثبات المفهوم |
| النمط | ما يخطط له |
|---|
Full | جميع القدرات الـ 26 — تقييم كامل |
Recon | النطاقات الفرعية، المنافذ، HTTP، اكتشاف التقنيات فقط |
Web | فحص HTTP، الزحف، فحص ثغرات الويب |
Binary | وكلاء Overlord لتحليل الثنائيات/APK/البرامج الضارة |
Safe | أدوات القراءة فقط بدون مخاطر |
| العقدة | اللون | المصدر |
|---|
asset | بنفسجي #8b5cf6 | جدول الأصول |
target | أزرق #0ea5e9 | جدول الأهداف |
service | أخضر #10b981 | جدول المنافذ (المنافذ المفتوحة) |
tech | كهرماني #f59e0b | WebAsset.TechStack + Port.Product |
vuln | أحمر #ef4444 | جداول الثغرات و CVE |
exploit | أحمر داكن #dc2626 | CVEs مع IsKEV=true AND HasPOC=true |