
स्वचालित पैठ परीक्षण एजेंटिक फ्रेमवर्क बड़े भाषा मॉडल्स द्वारा संचालित
[![Contributors][contributors-shield]][contributors-url] [![Forks][forks-shield]][forks-url] [![Stargazers][stars-shield]][stars-url] [![Issues][issues-shield]][issues-url] [![MIT License][license-shield]][license-url] [![Discord][discord-shield]][discord-url]
AI-संचालित स्वायत्त पैठ परीक्षण एजेंट
USENIX Security 2024 में प्रकाशित
आधिकारिक वेबसाइट: pentestgpt.com »
शोध पत्र
·
बग की रिपोर्ट करें
·
फीचर का अनुरोध करें
स्वायत्त CTF पाइपलाइन क्लाउड कोड और Codex के लिए बैकएंड-प्लग करने योग्य है। इंटरैक्टिव आधुनिकीकृत विरासत मोड (
pentestgpt-legacy) व्यापक प्रदाता सेट का समर्थन करता है: OpenAI, Anthropic, Google Gemini, DeepSeek, xAI, Qwen, Moonshot, और स्थानीय Ollama। देखें इंटरैक्टिव मल्टी-LLM मोड।
claude) - स्थानीय क्लाउड रन के लिए स्थापित और प्रमाणित। देखें Claude Code दस्तावेज़codex) - स्थानीय Codex रन के लिए स्थापित और प्रमाणित। नीचे दिया गया Docker प्रवाह दोनों CLIs को बंडल करता है।git clone https://github.com/GreyDGL/PentestGPT.git
cd PentestGPT
make install # runs uv sync
| कमांड | विवरण |
|---|---|
make install | निर्भरताएँ स्थापित करें |
make test | सभी परीक्षण चलाएँ |
make check | लिंट + टाइपचेक चलाएँ |
make build | वितरण योग्य पैकेज बनाएँ |
# किसी लक्ष्य के विरुद्ध चलाएँ (डिफ़ॉल्ट रूप से CTF मोड)
pentestgpt --target 10.10.11.234
# चुनौती संदर्भ के साथ
pentestgpt --target 10.10.11.50 --instruction "WordPress साइट, प्लगइन कमजोरियों पर ध्यान केंद्रित करें"
# पैठ-परीक्षण मोड (संपत्ति खोज → कमजोरियाँ → रिपोर्ट)
pentestgpt --target 10.10.11.234 --mode pentest
# पहले से सहेजे गए सत्रों की सूची
pentestgpt --list-sessions
एजेंट एक मल्टी-स्टेज पाइपलाइन के माध्यम से काम करता है, प्रत्येक चरण के निष्कर्षों को अगले चरण में फीड करता है — CTF के लिए रिकॉन → एक्सप्लॉइट → वॉकथ्रू, पैठ परीक्षण के लिए संपत्ति खोज → कमजोरी पहचान → रिपोर्ट।
एक स्व-निहित छवि में टूल + क्लाउड कोड और Codex CLIs बंडल किया गया है। आप एक बार लॉगिन करते हैं और सत्र नामित वॉल्यूम में बने रहते हैं — बाद के रन पर पुनः लॉगिन की आवश्यकता नहीं है।
make docker-build # टूल इमेज बनाएँ
make docker-login # एक-बार, आइडेम्पोटेंट: लॉगिन जाँचता है, केवल लापता को लॉगिन करता है
make docker-auth-status # दोनों के लॉगिन की जाँच करें (ROUNDTRIP=1 लाइव 1-टोकन जाँच के लिए)
# किसी लक्ष्य के विरुद्ध पाइपलाइन चलाएँ (कोई भी बैकएंड / मॉडल / मोड):
make docker-run TARGET=http://127.0.0.1:8000 BACKEND=codex MODEL=gpt-5.5 MODE=ctf
make docker-run TARGET=10.10.11.234 BACKEND=claude MODEL=opus MODE=pentest
make docker-login Claude (setup-token → टोकन वॉल्यूम में संग्रहीत) और Codex (इसका स्वयं का कंटेनर-इन codex login, OAuth कॉलबैक socat के माध्यम से अग्रेषित — बीजित नहीं, क्योंकि ChatGPT रिफ्रेश टोकन एकल-उपयोग वाले होते हैं) में लॉगिन करता है। यह आइडेम्पोटेंट है: पुनः चलाने पर जो भी मान्य है उसे छोड़ देता है। लॉगिन कंटेनर पुनर्निर्माण के बाद भी बने रहते हैं; make docker-down उन्हें रखता है, make docker-nuke लॉगिन वॉल्यूम हटाता है (ताजा लॉगिन / टोकन रोटेट करने के लिए)। डिज़ाइन + विवरण: docs/docker-dev-plan.md।
USENIX 2024 पेपर का क्लासिक, मानव-इन-द-लूप PentestGPT संरक्षित और आधुनिकीकृत किया गया है
pentestgpt-legacy के रूप में। यह तीन सहयोगी LLM सत्र चलाता है —
तर्क / निर्माण / पार्सिंग — जो एक पेनिट्रेशन टेस्टिंग टास्क ट्री (PTT) बनाए रखते हैं जबकि आप
इंटरैक्टिव रूप से सत्र चलाते हैं (next, more, todo, discuss)। स्वायत्त निश्चित-चरण
पाइपलाइन क्लाउड और Codex बैकएंड का समर्थन करती है; यह विरासत मोड अपने आधिकारिक
SDK के माध्यम से कई प्रदाताओं से मूल रूप से बात करता है।
किसी भी प्रदाता के लिए API कुंजी सेट करें जिसका आप उपयोग करना चाहते हैं (अपने वातावरण या .env में — देखें
.env.example)। केवल वे प्रदाता सक्षम होते हैं जिन्हें आप कॉन्फ़िगर करते हैं।
OPENAI_API_KEY=... ANTHROPIC_API_KEY=... GEMINI_API_KEY=... # या GOOGLE_API_KEY
DEEPSEEK_API_KEY=... GROK_API_KEY=... QWEN_API_KEY=... KIMI_API_KEY=...
# प्रत्येक सत्र के लिए सर्वोत्तम उपलब्ध मॉडल स्वचालित रूप से चुनें
pentestgpt-legacy
# प्रति सत्र मॉडल चुनें
pentestgpt-legacy --reasoning-model claude-opus-4-8 --parsing-model gemini-3.5-flash
# Ollama के माध्यम से स्थानीय मॉडल (OpenAI-संगत)
pentestgpt-legacy --reasoning-model ollama:qwen3 --base-url http://localhost:11434/v1
# प्रत्येक समर्थित मॉडल की सूची (दिखाता है कि कौन से प्रदाता कॉन्फ़िगर किए गए हैं)
pentestgpt-legacy --list-models
# प्रत्येक कॉन्फ़िगर किए गए मॉडल का लाइव राउंड-ट्रिप और पास/फेल मैट्रिक्स प्रिंट करें
pentestgpt-legacy --smoke-test
pentestgpt-legacy --list-models हमेशा लाइव रजिस्ट्री प्रस्तुत करता है। मॉडल ID बदलने के बाद
--smoke-test पुनः चलाएँ। वर्तमान स्नैपशॉट: