
pentest-ai v1.4.0
ओपन-सोर्स AI पेंटेस्टर जो हर निष्कर्ष को प्रमाणित करता है। मशीन ओरेकल प्रत्येक एक्सप्लॉइट को दोबारा चलाते हैं; सत्यापित बग एक प्रूफ कैप्सूल के साथ आते हैं जिसे आप स्वयं रीप्ले कर सकते हैं।

वेबसाइट · त्वरित शुरुआत · बग बाउंटी · सत्यापन · दस्तावेज़ीकरण · इश्यूज़
Pentest-AI एक ओपन-सोर्स AI पेनेट्रेशन टेस्टिंग और बग-बाउंटी टूल है जो सिद्ध निष्कर्षों को अनुमानों से अलग रखता है। यह किसी AI क्लाइंट या मॉडल को वास्तविक पेंटेस्ट वर्कफ़्लो से जोड़ता है: वेब एप्लिकेशन की जाँच करना, कमज़ोरियों की खोज और पुनःउत्पादन करना, और यह सत्यापित करने के लिए मशीन ऑरेकल का उपयोग करना कि कोई एक्सप्लॉइट वास्तव में काम करता है या नहीं। जिस निष्कर्ष को कोई भी ऑरेकल सिद्ध नहीं कर सकता, वह उम्मीदवार (candidate) के रूप में लेबल रहता है, और सत्यापित निष्कर्ष के साथ वे अनुरोध और प्रतिक्रियाएँ होती हैं जिन्होंने उसे सिद्ध किया।
इसका उपयोग MCP (Claude Code, Codex, Cursor, VS Code) के माध्यम से, CLI से, या CI/CD में करें। मॉडल जाँच का संचालन करता है; एक स्वतंत्र ऑरेकल तय करता है कि कोई निष्कर्ष सत्यापित निर्णय का हक़दार है या नहीं, इसलिए मॉडल के अनुमान कभी परिणामों के रूप में प्रस्तुत नहीं होते।
अधिकृत बग बाउंटी के लिए निर्मित: प्रत्येक प्रोग्राम के लिए एक प्रोफ़ाइल उसका स्कोप, उसकी घोषित दर और आपका शोधकर्ता हैंडल रखती है, एक ड्राई रन कुछ भी भेजने से पहले योजना दिखाता है, और रिपोर्ट ड्राफ़्ट केवल सत्यापित निष्कर्षों से बनते हैं। बग-बाउंटी वर्कफ़्लो पर जाएँ →
केवल उन्हीं सिस्टमों का परीक्षण करें जिनके आप स्वामी हैं या जिनका मूल्यांकन करने के लिए आपके पास स्पष्ट प्राधिकरण है। कोई एंगेजमेंट चलाने से पहले स्वीकार्य-उपयोग नीति और शर्तें पढ़ें।
त्वरित शुरुआत
अनुशंसित: Codex या Claude Code
Python 3.10 से 3.14 का उपयोग करें और पहले pipx
इंस्टॉल करें। pipx ensurepath चलाएँ और यदि आवश्यक हो तो अपना टर्मिनल फिर से खोलें। pipx
Pentest-AI की निर्भरताओं को अलग रखता है और इसके कमांड्स को सभी फ़ोल्डरों में उपलब्ध कराता है।
pipx install ptai
ptai setup --mcp
पहले अपने AI क्लाइंट का CLI इंस्टॉल करें। सेटअप सभी पहचाने गए समर्थित क्लाइंट्स से कनेक्ट करने से पहले पूछता है, जिसमें इंस्टॉल होने पर Codex और Claude Code दोनों शामिल हैं। यह मौजूदा रजिस्ट्रेशन को सुरक्षित रखता है। बाद में अपने क्लाइंट को रीस्टार्ट करें।
विज़ार्ड user-wide सेटिंग्स का उपयोग करता है। यह क्लाइंट्स इंस्टॉल नहीं करता, आपको साइन इन नहीं कराता, मॉडल डाउनलोड नहीं करता या Ollama कॉन्फ़िगर नहीं करता। आपका AI क्लाइंट मॉडल प्रदान करता है; MCP सर्वर द्वारा किसी अलग मॉडल API कुंजी की आवश्यकता नहीं होती। परिवर्तनों का पूर्वावलोकन करने के लिए ptai setup --mcp --dry-run का उपयोग करें। Codex .codex/config.toml और Claude Code .mcp.json निर्देशों के लिए single-client और per-repository सेटअप देखें।
अपग्रेड के लिए, pipx upgrade ptai का उपयोग करें। किसी मौजूदा सक्रिय वर्चुअल एनवायरनमेंट में, python -m pip install --upgrade ptai भी समर्थित है; अपने AI क्लाइंट के साथ रजिस्टर करने के बाद उस एनवायरनमेंट को उपलब्ध रखें।
विकल्प: Ollama और लोकल मॉडल
Pentest-AI को ऊपर बताए अनुसार इंस्टॉल करें, लेकिन इस मार्ग के लिए MCP सेटअप छोड़ दें।
Ollama इंस्टॉल और शुरू करें, फिर tool-calling समर्थन वाला मॉडल pull करें। इसका सटीक इंस्टॉल किया गया नाम खोजने के लिए ollama list का उपयोग करें।
export PENTEST_AI_LLM_PROVIDER=ollama
export PENTEST_AI_MODEL="your-installed-model"
ptai start https://your-authorized-target.example --no-sync
PowerShell में:
$env:PENTEST_AI_LLM_PROVIDER = "ollama"
$env:PENTEST_AI_MODEL = "your-installed-model"
ptai start https://your-authorized-target.example --no-sync
रन करने से पहले प्लेसहोल्डर्स को बदलें। एक लोकल मॉडल को किसी क्लाउड API कुंजी की आवश्यकता नहीं होती। मॉडल की गुणवत्ता और उपलब्ध मेमोरी परिणामों को प्रभावित करती है। एंडपॉइंट कॉन्फ़िगरेशन के लिए मॉडल गाइड देखें।
बंडल किए गए डेमो को आज़माएँ
किसी API कुंजी या बाहरी लक्ष्य की आवश्यकता नहीं है।
pipx install ptai
ptai demo
यह डेमो एक बंडल किए गए कमज़ोर एप्लिकेशन का परीक्षण करता है, उसके प्रूफ कैप्सूल से एक फाइंडिंग को रीप्ले करता है, और हार्डन किए गए रूट्स की जाँच करता है। वास्तविक एंगेजमेंट कॉन्फ़िगर करने से पहले एविडेंस वर्कफ़्लो का निरीक्षण करें।
अन्य मॉडल प्रदाता
स्टैंडअलोन क्लाउड मॉडल और वैकल्पिक स्कैनर निर्भरताओं के लिए, इंस्टॉलेशन गाइड और प्रदाता गाइड देखें। API कुंजियों को सोर्स कंट्रोल से बाहर रखें।
बग-बाउंटी ऑटोमेशन
बग बाउंटी मोड उन प्रोग्रामों के लिए है जो स्वचालित परीक्षण की अनुमति देते हैं। आप प्रत्येक प्रोग्राम के लिए एक प्रोफ़ाइल लिखते हैं जिसमें उसका स्कोप, उसकी घोषित दर और आपका रिसर्चर हैंडल होता है। --program फिर इन सभी को प्रत्येक अनुरोध पर लागू करता है, और --dry-run बिना कुछ भेजे योजना को प्रिंट करता है।
# ~/.pentest-ai/programs/acme.toml
platform = "hackerone"
handle = "acme"
researcher = "your-h1-username" # sent on every request in X-Bug-Bounty
rps = 5.0 # the rate the program states
scope = ["*.acme.com", "api.acme.com"]
excluded = ["status.acme.com"]
scanners_allowed = true
allow_race = false
ptai start https://api.acme.com --program acme --dry-run # sends nothing
ptai start https://api.acme.com --program acme --auto-auth
ptai bounty-report <engagement-id> --program acme --output-dir drafts/
--program के अंतर्गत:
- प्रत्येक अनुरोध प्रोग्राम की दर पर सीमित रहता है, बाहरी टूल्स भी शामिल हैं। जिस टूल को दर में अपने हिस्से पर सीमित नहीं किया जा सकता, उसे छोड़ दिया जाता है और स्कैन यह बताता है।
- स्कोप प्रोफ़ाइल से आता है और कहीं और से नहीं। इसके बाहर के अनुरोध अस्वीकार किए जाते हैं, और बहिष्करण वाइल्डकार्ड पर भारी पड़ते हैं।
- प्रत्येक अनुरोध में आपका शोधकर्ता हैंडल
X-Bug-Bountyमें, या प्रोग्राम द्वारा निर्दिष्ट हेडर (PTAI_BOUNTY_HEADER_NAME) में होता है। - gobuster और ffuf जैसे वर्डलिस्ट टूल्स अस्वीकार किए जाते हैं। दो अंतर्निहित डिस्कवरी प्रोब अभी भी संभावित पथों की एक सूची आज़माते हैं, लगभग 500 अनुरोध।
- लक्ष्य को थका देने या क्रैश करने के लिए बनाए गए पेलोड नहीं भेजे जाते। अन्य उपयोगकर्ताओं के खातों या साझा स्थिति को बदलने वाले प्रोब नहीं चलते। रेस-कंडीशन बर्स्ट केवल तब चलते हैं जब प्रोफ़ाइल
allow_race = trueसेट करती है। 429औरRetry-Afterका पालन किया जाता है। धीमा होने वाले लक्ष्य को कम दर मिलती है, और लगातार अवनत रहने वाला लक्ष्य कारण दर्ज करके स्कैन रोक देता है।- स्कैनर पर प्रतिबंध लगाने वाले प्रोग्राम के लिए टाइप किया गया
yesआवश्यक है, क्योंकि इसे स्कैन करने से सेफ हार्बर रद्द हो सकता है।
ptai bounty-report केवल ऑरेकल-सत्यापित निष्कर्षों से रिपोर्ट का मसौदा तैयार करता है, जिसमें पुनरुत्पादन चरण ऑरेकल के स्वयं के अनुरोधों से लिए जाते हैं। प्रत्येक को हाथ से पुनरुत्पादित करें और स्वयं सबमिट करें। ptai bounty import किसी प्रोग्राम की निर्यातित स्कोप फ़ाइल को प्रोफ़ाइल के लिए allow और exclude प्रविष्टियों में परिवर्तित करता है।
वॉल टाइम अनुरोधों को दर से विभाजित करने पर मिलता है। हमारे परीक्षण एप्लिकेशन पर 3 rps पर एक पूरा पास लगभग 8,700 अनुरोध है और 51 मिनट लेता है, और वह हर क्रिटिकल और हाई पाता है जो 10 rps का पास पाता है। 10 rps पर यह लगभग 6,600 अनुरोध और 11 मिनट था, जो कम दरों पर धीमे प्रोब को पूरा होने का अवसर मिलने से पहले मापा गया था।