
منصة اختبار أمني مفتوحة المصدر تعمل محليًا أولاً، مصممة لاختبار الاختراق ووكلاء الذكاء الاصطناعي وخطوط CI/CD والفرق.
CI: suite · goldens · perf-check — خط الأساس 281.9ms / 19 صفحة (tests/perf/baseline.json) — .github/workflows/ci.yml
محرك واحد لاختبار الأمان. كل الواجهات.
منصة مفتوحة لاختبار الأمان تعمل محليًا أولًا، مخصصة لمختبري الاختراق، ووكلاء الذكاء الاصطناعي، وخطوط أنابيب CI/CD، والفرق.
صُممت أدوات الأمان التقليدية حول مختبِر واحد يستخدم واجهة سطح مكتب.
بُني pwnproxy حول محرك مشترك لاختبار الأمان يمكن التحكم فيه عبر طرفية، أو TUI، أو REST API، أو بث WebSocket، أو خطوط أنابيب CI/CD، أو وكلاء الذكاء الاصطناعي عبر MCP.
┌─────────────────────┐
│ pwnproxy core │
│ │
│ Proxy · Scanners │
│ Repeater · Intruder │
│ Sessions · Plugins │
└──────────┬──────────┘
│
┌───────────┬───────────┼───────────┬───────────┐
▼ ▼ ▼ ▼ ▼
CLI TUI REST API WebSocket MCP
│ │ │ │ │
Pentesters Pentesters Automation Teams AI Agents
يُستخدم النواة نفسها سواء كنت تعترض حركة المرور يدويًا، أو تشغّل فحصًا آليًا، أو تدمج فحوصات الأمان في CI/CD، أو تمنح وكيل ذكاء اصطناعي إمكانية الوصول إلى سير عمل الاختبار الخاص بك.
يعمل الوكيل (proxy) والماسحات والتخزين والأتمتة على بنيتك التحتية.
لا حاجة إلى الاعتماد على السحابة لسير عمل الاختبار الأساسي.
واجهة سطر الأوامر (CLI) وواجهة المستخدم النصية (TUI) وواجهة REST API وتدفقات WebSocket وخادم MCP هي واجهات للنظام الأساسي نفسه.
لا تحتاج إلى أدوات منفصلة للاختبار اليدوي والأتمتة.
شغّل الفحوصات مباشرة من سطر الأوامر، واستهلك مخرجات JSON أو SARIF، ودمج النتائج في خطوط أنابيب CI/CD.
يكشف pwnproxy عن قدراته عبر خادم MCP أصيل حتى تتمكن وكلاء الذكاء الاصطناعي المتوافقة من التفاعل مع محرك الاختبار نفسه الذي يستخدمه المشغلون البشريون.
تستخدم الماسحات والخطافات (hooks) بنية إضافات مصممة للإضافات المدمجة وإضافات الأطراف الثالثة.
git clone https://github.com/ericmtzmtz/pwnproxy.git
cd pwnproxy
poetry install
يتطلب Python 3.12 أو أحدث.
poetry run pwnproxy start --proxy-port 8080 --api-port 8000
127.0.0.1:8080127.0.0.1:8000http://127.0.0.1:8000/docscurl -x http://127.0.0.1:8080 http://httpbin.org/get
poetry run pwnproxy history
poetry run pwnproxy scan url https://example.com \
--scanners sqli,xss \
--output sarif \
--output-file report.sarif
رموز الخروج:
| الرمز | المعنى |
|---|---|
| 0 | اكتمل الفحص، لا توجد نتائج |
| 1 | اكتمل الفحص، تم العثور على نتائج |
| 2 | خطأ |
يتم تثبيت pwnproxy حاليًا من المصدر باستخدام Poetry (إصدار ما قبل الإطلاق 0.1.0؛ 0.2.0-dev في CHANGELOG.md). من المخطط توفير حزمة PyPI في إصدار مستقبلي.
توجد الإعدادات في ~/.pwnproxy/config.toml — راجع config.example.toml لإعدادات [triage] / [llm] / max_llm_per_scan وإعدادات النطاق. يعمل الاختبار الأساسي (الوكيل، والماسحات، والتخزين) دون مفتاح API لنموذج لغوي كبير؛ ويعمل الفرز افتراضيًا على الاستدلالات الإرشادية.
إيقاف حركة مرور HTTP/HTTPS مؤقتًا وفحصها وتعديلها واستئنافها.
تشمل الماسحات المدمجة حاليًا:
| الماسح | الكشف |
|---|---|
| SQLi | قائم على الأخطاء (التوقيعات + استجابات 5xx المخففة مع ضوابط سلبية / حواجز مضادة لـ WAF)، أعمى منطقي (جولات متعددة + خط أساس)، قائم على الوقت، OOB |
| XSS | منعكس/مخزّن مع قابلية استغلال واعية بالسياق (الانعكاس ≠ XSS)؛ إشارات أحواض DOM الثابتة (dom-xss، مستنتجة) |
| LFI | توقيعات المحتوى، والاجتياز، وأغلفة PHP |
| XXE | قائم على الأخطاء، وXInclude، وتحوير JSON، وسير عمل OOB |
| SSRF | تأكيد OOB/الاستدعاء الراجع فقط (يفشل مغلقًا؛ لا SSRF تخميني قائم على الأخطاء) |
تستخدم النتائج ثلاثة مستويات ثقة — مبدئية، ومستنتجة، ومؤكدة — حتى لا تُعامل الإشارات الضعيفة كاستغلالات. فرز النموذج اللغوي الكبير اختياري؛ وافتراضيًا تبقى خط المعالجة على الاستدلالات الإرشادية ولا ترسل أبدًا النتائج tentative إلى حكم النموذج اللغوي الكبير.
تستهلك الماسحات التدفقات الملتقطة ويمكن أيضًا تنفيذها مباشرة في الوضع بلا واجهة.
إعادة تشغيل طلبات HTTP الخام وتعديلها بشكل مستقل عن الوكيل.
تحتفظ النتائج ببيانات الطلب حتى يمكن التحقق يدويًا من المشكلات المكتشفة.
تشويش الطلبات باستخدام مواضع §marker§ على نمط Burp.
تشمل الأوضاع المدعومة:
اكتشاف المسارات والملفات بناءً على قوائم الكلمات مع:
استخراج وتخزين تلقائي لـ:
الجلسات معزولة ومحفوظة محليًا.
وسّع pwnproxy بماسحات وخطافات مخصصة.
يمكن أن تكون الإضافات:
تُستخدم واجهة الإضافات نفسها للماسحات المدمجة وماسحات الطرف الثالث.
يتتبع برنامج مراقبة (watchdog) أعطال الإضافات ويمكنه تعطيل الإضافات التي تفشل بشكل متكرر تلقائيًا.
شغّل pwnproxy مباشرة من الطرفية.
pwnproxy start
pwnproxy history
pwnproxy findings
pwnproxy scan url https://example.com
pwnproxy plugin list
pwnproxy session list
استخدم واجهة طرفية تفاعلية من أجل:
تحكّم في المنصة برمجيًا.
curl http://127.0.0.1:8000/api/v1/flows
توفّر واجهة API وظائف خاصة بـ:
تتوفر وثائق API التفاعلية على:
http://127.0.0.1:8000/docs
استهلك الأحداث في الوقت الفعلي لحركة المرور والنتائج ونشاط الزاحف وسير العمل الأخرى.
أمثلة على التدفقات:
/ws/traffic/ws/findings/ws/eventsيتيح ذلك للواجهات الخارجية وأنظمة الأتمتة التفاعل مع نشاط الاختبار في الوقت الفعلي.
يتضمّن pwnproxy خادم MCP أصليًا يعرّض منصة الاختبار للوكلاء المتوافقين مع MCP.
Claude / Copilot / Custom Agent
│
▼
┌──────────────┐
│ MCP Server │
└──────┬───────┘
│
▼
┌──────────────┐
│ pwnproxy API │
└──────┬───────┘
│
┌─────────┼─────────┐
▼ ▼ ▼
Traffic Findings Scanners
│ │ │
└─────────┼─────────┘
▼
Security workflow
ابدأ pwnproxy:
pwnproxy start