العودة إلى التحديثات
New releaseSep 4, 2026

pentest-ai v1.4.0

مختبِر اختراق بالذكاء الاصطناعي مفتوح المصدر يُثبت كل اكتشاف. أوراكل آلية تعيد تنفيذ كل استغلال؛ والثغرات المؤكَّدة تُصدِر كبسولة إثبات يمكنك إعادة تشغيلها بنفسك.

مشاركة
pentest-ai

pentest-ai

لا يكتفي بالتنبيه. إنه يُثبت.

PyPI Python CI License Stars Discord

الموقع الإلكتروني · التثبيت · لماذا التحقق · المعايير · الحدود · Discord

⚠️ أداة هجومية، للاختبار المصرّح به فقط. بتثبيتك للأداة فإنك تقبل سياسة الاستخدام المقبول والشروط. راجع الاستخدام المسؤول ↓

دقيقتان، بدون مفتاح API، وبدون هدف خاص بك

pip install ptai && ptai demo

يقوم ptai demo بفحص تطبيق ثغرات مُضمَّن ويطبع 4 findings, 3 oracle-VERIFIED. ثم يعيد تشغيل واحد منها مباشرةً من كبسولة إثبات (replay 3/3)، ثم يشغّل نفس المسارات بعد تحصينها ويطبع 0 findings.

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

ptai scanning OWASP Juice Shop: findings flip from candidate to oracle-VERIFIED

ما الذي يعنيه VERIFIED فعليًا هنا

معظم الماسحات تخبرك أن شيئًا ما قد يكون قابلًا للاستغلال وتترك لك الفرز. يتعامل ptai مع النتيجة باعتبارها مرشّحًا حتى يعيد oracle آلي مُسمّى تشغيل الاستغلال ويُعيد إنتاجه N من N مرة. عندها فقط يستحق وسم VERIFIED.

ثلاث خصائص تجعل ذلك أكثر من مجرد شعار:

لا يُصدر أي LLM حكمًا أبدًا. القاعدة مفروضة في الكود، لا بالسياسة: أي حكم لا يستطيع تسمية الـ oracle الذي استحقه يُرفض. الـ LLM ينسّق التشغيل ويستنتج من النتائج. لكنه لا يقرر أبدًا ما إذا كانت الثغرة حقيقية.

كل oracle لديه ضابط يجب أن يفشل. تجاوز الترويسة الموثوقة يجب أن يُعيد محتوى مميزًا مع الترويسة ورفضًا بدونها. فحص بيانات الاعتماد المسرّبة يجب أن يُقبل للسر الحقيقي ويُرفض لنسخة توأم مُفسَدة عمدًا. نقطة نهاية تُعيد 200 لكل شيء لا تكسب شيئًا. هذا ما يمنع اعتبار "أعاد 200" دليلًا.

مخرجات الماسحات الخارجية تُحتجَز. نتائج nuclei وnikto وzap لا تصبح نتائج بسلطتها الخاصة. تبقى غير مُتحقَّق منها حتى يُعيد أحد oracles الخاصة بـ ptai إثباتها بشكل مستقل.

كل نتيجة VERIFIED تُشحن كـ كبسولة إثبات محمولة — النتيجة، ووصفة إعادة إثباتها، والإيصال. يمكن لأي شخص تشغيل ptai replay ضد الهدف الحي ومشاهدة الـ oracle يُعيد التأكيد، دون الوثوق بـ ptai. الكبسولات غير موقّعة عمدًا: إعادة التشغيل هي آلية الثقة، وليست توقيعًا عليك قبوله بالإيمان.

أرقام صادقة

فئات الثغرات التي لديها oracle فعّال14
الفحوصات في المكتبة64
الفحوصات التي يمكنها كسب VERIFIED30
أنواع oracle24
أغلفة الأدوات203
…التي تحوّل المخرجات إلى نتائج اليوم18
أدوات MCP52
الوكلاء المتخصصون18
الاختبارات2,729 على Python 3.10 / 3.12 / 3.14

على honeypot مُعرَّض للثغرات عمدًا، تتحقق 23 نتيجة عبر تلك الفئات الـ 14 بدقة 100% وبدون أي إيجابيات كاذبة. على OWASP Juice Shop القياسي، تحققت 17 نتيجة في مسح 2026-08-23 — التقرير يخص HTTP داخل النطاق / المُتحقَّق منه / الدقة، وليس 17/116. جلسة Path 1 MCP بتاريخ 2026-08-25 (عميل MCP يشغّل run_probe، مات الهدف قبل تحقق المنسّق) كسبت 12 إثباتًا مُتحقَّقًا بدقة 100% مقابل 64 تحدي HTTP داخل النطاق (20 لن يتم ملاحقتها). مفاتيح OSINT وWeb3 وواجهة المستخدم فقط في Juice Shop خارج لوحة النتائج الآلية بحكم التصميم.

اقرأ تلك الأرقام بعناية، لأن الفجوات هي المقصد. توجد 64 فحصًا لكن 30 فقط يمكنها كسب حكم؛ الـ 34 الأخرى تُبلّغ عن مرشّحين صادقين. 203 أغلفة مسجّلة لكن 18 فقط تحوّل مخرجات الأدوات إلى نتائج — الباقي يعمل ويُعيد نصًا خامًا. بوابة الـ oracle تشتري الدقة، لا معدل الالتقاط: فهي تزيل الإيجابيات الكاذبة، لكنها لا تجد ثغرات أكثر.

بيئة اختبار honeypot (tests/honeypot/) وبوابة الصفر إيجابيات كاذبة للتطبيق النظيف (tests/cleanapp/) كلتاهما مُضمَّنتان في هذا المستودع وتعملان في CI، لذا فهي قابلة لإعادة الإنتاج وليست مجرد لقطات شاشة.

ما الذي لا تفعله

أقولها بوضوح، لأن أداة أمنية تبالغ في بيع نفسها أسوأ من كونها عديمة الفائدة.

  • إنها ماسح لتطبيقات الويب. جميع الفحوصات الـ 64 وجميع أنواع oracle الـ 24 تستهدف HTTP. AD والسحابة والجوال واللاسلكي لديها وكلاء وأغلفة أدوات، لكن لا توجد مكتبة فحوصات ولا oracles خلفها.
  • لا يمكنها تنفيذ تصعيد الصلاحيات المحلي. ذلك يتطلب تنفيذ كود على مضيف تملكه بالفعل. يختبر ptai عن بُعد وليس لديه مثل هذه القناة، لذا يُبلّغ وكيل privesc عن unsupported بدلًا من صفر مُضلِّل.
  • إنها ليست ماسح CVE. لا توجد قاعدة بيانات إصدار-إلى-CVE ولا مكتبة استغلالات. يقتصر عمل CVE على استعلامات osv.dev على المانيفستات المسرّبة.
  • الـ Playbooks تخطّط، ولا تُنفّذ. يقوم ptai playbook run بحل التبعيات وطباعة الخطة. تشغيلها ضد هدف لم يتم ربطه بعد.
  • إنها ليست مستقلة. وكلاء اختبار الاختراق المستقلون بالكامل بالـ LLM يُكملون 21–31% من المهام من البداية إلى النهاية؛ الإعدادات بمساعدة بشرية تصل إلى 64%. صُمم ptai للنظام الثاني. اضغط Ctrl+C مرتين للسيطرة أثناء التشغيل.

قائمة العيوب الداخلية الكاملة، بما في ذلك كل ما سبق، مُتتبَّعة علنًا وليس بصمت. إذا كان هناك خطأ هنا، افتح issue وسيتم تصحيحه.

التثبيت

المسار 1 — شغّله من Claude Code أو Cursor أو Codex (بدون مفتاح API)

اشتراكك الحالي في الذكاء الاصطناعي هو الـ LLM. يوفر ptai الأدوات.

pip install ptai
ptai mcp install          # auto-detects your MCP clients and writes their configs

أعد تشغيل العميل وستجد 52 أداة هناك. لا حاجة لمفتاح Anthropic في هذا المسار — خادم MCP لا يستضيف أي LLM خاص به بحكم التصميم.

المسار 2 — CLI مستقل
pip install ptai
export ANTHROPIC_API_KEY=sk-...        # or OPENAI_API_KEY
ptai start https://target.example.com

# fully local, no cloud:
export PENTEST_AI_LLM_PROVIDER=ollama

# or deterministic, no LLM at all:
ptai start https://target.example.com --no-llm

الإنفاق محدود بـ 10$ لكل مهمة افتراضيًا (PTAI_PRICE_LIMIT).

الأدوات الأمنية، وREST API، وخيارات أخرى
ptai tools install --tier core     # or recommended / full
ptai tools install nmap nuclei     # or by name
ptai serve                         # HTTP REST + WebSocket for dashboards
ptai menu                          # interactive launcher, no LLM

عند بدء المهمة يتوقع المخطّط الأدوات التي يحتاجها التشغيل ويطلب مرة واحدة تثبيت المفقود منها. ارفض ويبقى الجواب محفوظًا.

المعايير

قابلة لإعادة الإنتاج، في git، مع مخرجات خام. لا "معدل كشف 98.7%" لا يمكنك تدقيقه.

الأداةالنتائجحرجة+عاليةفئات OWASPمعدل الإيجابيات الكاذبة
ptai884650%
ZAP 2.17.05930147%
Nuclei 3.8.01010%
HexStrike v6.01101

n=1، مُقيِّم واحد، لقطة واحدة على OWASP Juice Shop. المنهجية والمخرجات الخام في benchmarks/؛ الكتابة الكاملة في docs/benchmarks/juice-shop.md.

القراءة الصادقة: ptai قوي على أهداف ويب SPA بتغطية فحوصات مُنتقاة. HexStrike أوسع (سحابة، ثنائيات، CTF) ومن المرجح أن يتفوق على ptai على الأسطح التقليدية القابلة للزحف مثل WordPress. كما أن Juice Shop هو أكثر تطبيق مُوثَّق للثغرات على الإنترنت، لذا فإن كلا من الـ LLM ومؤلفي الفحوصات لديهما سبق — وهذا بالضبط سبب انخفاض رقم honeypot الخاص، وسبب نشر كليهما.

أسقطها في CI

- run: pip install ptai
- run: ptai start ${{ vars.STAGING_URL }} --ci --fail-on verified --sarif pentest.sarif
- uses: github/codeql-action/upload-sarif@v3
  with: { sarif_file: pentest.sarif }

--fail-on verified يكسر البناء فقط عند نتيجة أثبتها oracle فعليًا، لذا لا يمكن أن تُفعَّل البوابة بضجيج الماسح. تُرفع SARIF إلى GitHub Code Scanning، وتُنشر النتائج كتعليق على PR. قوالب GitLab وJenkins في docs/ci-cd.md.

كيف تعمل

recon ──▶ auth ──▶ web ──┬──▶ ad
                         ├──▶ cloud          ┌──────────────────┐
                         └──▶ api ──────────▶│  findings DB     │
                                             │  scope-guarded   │
                                             └────────┬─────────┘
                                                      ▼
                                          verify (oracles, N/N)
                                                      ▼
                                   chain ─▶ validate ─▶ detect ─▶ report
                                          md · html · pdf · SARIF · JUnit

18 وكيلًا متخصصًا يشغّلون المراحل. مع مفتاح API يستخدم كل منهم LLM للاستنتاج من النتائج؛ وبدونه يعمل كحلقة أدوات حتمية. ترتيب المراحل والكشف متطابقان في كلتا الحالتين — الفحوصات تجد الثغرات، والـ LLM ينسّق فقط.

لمن هذه الأداة

فرق AppSec التي تربط مسحًا موثّقًا في كل PR، مع بوابة لا تُفعَّل إلا على نتائج مُثبتة. المستشارون الذين يريدون أن يكتب التقرير نفسه وكبسولة يمكن لمهندسي العميل إعادة تشغيلها بأنفسهم. صائدو الثغرات الذين يفضلون فرز 12 نتيجة مُثبتة على 600 احتمال. مستخدمو Claude Code / Cursor / Codex الذين يريدون أدوات حقيقية خلف مساعدهم دون فاتورة API أخرى.

اعمل معي

الأداة بترخيص MIT ومجانية للأبد — ولن يتغير ذلك.

إذا كنت تريد اختبار اختراق مُسلَّمًا بدلًا من تشغيله بنفسك، أو مساحة عمل مستضافة مع السجل ووصول الفريق، فكلاهما على pentestai.xyz. كل نتيجة في مهمة مُسلَّمة تُشحن مع كبسولة إثبات يمكن لمهندسيك إعادة تشغيلها بأنفسهم، وهو أثر مختلف جوهريًا عن PDF مليء بتقييمات الخطورة.

للأسئلة: [email protected]

الاستخدام المسؤول

ينفّذ ptai عمليات شبكة ومضيف حقيقية ضد الأهداف التي تحددها. أنت المسؤول وحدك عن امتلاك تفويض كتابي صريح لكل هدف. اختبار أنظمة لا تملكها قد ينتهك قانون الاحتيال وإساءة استخدام الحاسوب، وقانون إساءة استخدام الحاسوب 1990، والمادة 32 من GDPR، وما يعادلها في أماكن أخرى.

التشغيل الأول يطلب قبول AUP ويحفظه. اضبط PENTEST_AI_AUP_ACCEPTED=1 في CI. المضيفون خارج النطاق يُرفضون عند استدعاء الأداة. ثلاث حواجز حماية تُشحن معطّلة افتراضيًا ويستحق تشغيلها: intensity=safe يتخطى الفحوصات المُغيِّرة للحالة، وrespect_rate_limits يحترم 429/Retry-After، وstrict_scope يرفض الطلبات خارج المضيف.

الاستدعاءات خارج النطاق (OAST) — الخصوصية

الفئات العمياء (blind SSRF/SQLi/XXE، وstored XSS، وSSTI، وLog4Shell) تُكتشف عبر استدعاءات تُوجَّه افتراضيًا إلى oast.fun العام الخاص بـ ProjectDiscovery.

كل مهمة تولّد زوج مفاتيح RSA-2048 جديدًا محليًا. حِمول التفاعل مشفّرة عند السكون بـ AES-CTR-256 مع تغليف المفتاح بـ RSA-OAEP-SHA256 إلى مفتاحك العام، لذا فقط عمليتك المحلية يمكنها فك تشفيرها. لكن البيانات الوصفية مرئية للخادم: أن تفاعلًا حدث، وعنوان IP المصدر للهدف، والطابع الزمني، والبروتوكول.

تحظر PortSwigger استخدام المتعاون العام في قواعد مكافآت الثغرات الخاصة بها، وتشترط البرامج الكبيرة بشكل متزايد بنية استدعاء يتحكم بها المختبر. للمهام المدفوعة، استضف Interactsh بنفسك:

ptai start http://target --oast-server https://oast.example.com --oast-token <T>
ptai start http://target --no-oast          # or disable entirely

الأسئلة الشائعة

هل أحتاج مفتاح API؟ لا في مسار MCP — اشتراكك في Claude Code / Cursor / Codex هو الـ LLM. فقط CLI المستقل يحتاج واحدًا، وحتى هناك يعمل Ollama محليًا بالكامل.

هل هي مستقلة؟ لا، ولا تدّعي ذلك. الفحوصات تكشف، والـ LLM ينسّق، وأنت تقرر. Ctrl+C مرتين تسيطر أثناء التشغيل.

آمنة ضد الإنتاج؟ فقط بتفويض كتابي ومع تشغيل حواجز الحماية الثلاثة أعلاه.

هل تتصل بالمنزل؟ لا افتراضيًا. النتائج تبقى على قرصك. يمكنك الاشتراك في عدّادات استخدام مجهولة عبر ptai telemetry enable (بدون أهداف، بدون نتائج؛ المخطط في engine/telemetry.py). استدعاءات OAST تُوجَّه افتراضيًا إلى oast.fun الخاص بـ ProjectDiscovery ما لم تمرر --oast-server أو --no-oast.

كيف يختلف هذا عن مطالبة Claude باختراق شيء ما؟ مكتبة فحوصات حتمية مُنتقاة تجد الثغرات وoracle آلي يُثبتها. الـ LLM وحده يمنحك تخمينًا معقولًا دون أي طريقة لمعرفة ما إذا كان حقيقيًا.

المنظومة

المستودعالوصف
pentest-aiهذا المستودع. CLI + خادم MCP.
pentest-ai-agentsملفات وكيل فرعي مستقلة لـ Claude Code. اختيارية.

المجتمع: Discord · Discussions · Issues

سجل النجوم

المخطط المضمّن القديم (api.star-history.com) فارغ: قيّد GitHub واجهة برمجة تطبيقات stargazers العامة التي كانت تعتمد عليها تلك الـ SVGs. السلسلة الحية على star-history.com. لا يُضمّن README مضيفًا بديلًا مباشرًا — لأن متصفح كل زائر كان سيجلب تلك SVG.

الترخيص

MIT. افعل ما تريد بها.

إذا وفّر عليك ptai يوم أحد، ضع نجمة للمستودع.

الفئات