
ChatGPT API, Bard API, और Llama2, Python-Nmap, DNS Recon, PCAP और JWT recon मॉड्यूल का उपयोग करता है और Nmap स्कैन डेटा और DNS स्कैन जानकारी के आधार पर भेद्यता रिपोर्ट बनाने के लिए GPT3 मॉडल का उपयोग करता है। यह काफी हद तक सबडोमेन गणना भी कर सकता है।
GVA एक AI-सहायता प्राप्त रेकॉनिसेंस और भेद्यता-विश्लेषण टूलकिट है। यह स्कैन (nmap, DNS, सबडोमेन, JWT, PCAP, GeoIP) चलाता है, फिर कच्चे आउटपुट को एक बड़े भाषा मॉडल को सौंपता है जो एक संरचित, पेंटेस्टर-उन्मुख विश्लेषण लौटाता है। यह कमांड-लाइन इंटरफ़ेस और डेस्कटॉप GUI दोनों के साथ आता है।
AI परत प्रदाता-अज्ञेयवादी है: OpenAI, Anthropic Claude, Google Gemini, और स्थानीय Ollama मॉडल सभी समर्थित हैं। एक चुनें, या एक साथ कई चलाएँ और एक विचार-विमर्श एजेंट को उनके विश्लेषणों को एक ही रिपोर्ट में समेटने दें।
pyproject.toml से निर्भरताएँ (uv के साथ प्रबंधित) या requirements.txtPATH पर nmapPATH पर Wireshark / tsharknmap हमला python-nmap के माध्यम से सिस्टम nmap बाइनरी को शेल आउट करता है, इसलिए nmap इंस्टॉल और रन करने योग्य होना चाहिए।
sudo के साथ एस्केलेट करता है, या आप --sudo पास कर सकते हैं। प्रोफ़ाइल 1–5 अनप्रिविलेज्ड चलते हैं; प्रोफ़ाइल 1 डिफ़ॉल्ट है और root के बिना काम करता है।libssh2.so.1: cannot open shared object file: सिस्टम nmap में एक साझा लाइब्रेरी गायब है। यदि आप conda का उपयोग करते हैं, तो conda install -c conda-forge nmap स्व-निहित है और PATH प्राथमिकता लेता है। अन्यथा इसे rpm-ostree install libssh2 (फिर रीबूट करें) के साथ लेयर करें, या brew install nmap या एक distrobox कंटेनर का उपयोग करें।यदि nmap गायब या टूटा हुआ है, तो हमला क्रैश होने के बजाय एक स्पष्ट त्रुटि रिपोर्ट करता है।
इंस्टॉल स्क्रिप्ट सिस्टम पैकेज, uv, और Python निर्भरताएँ सेट करती है। इसे अपने सामान्य उपयोगकर्ता के रूप में चलाएँ; यह केवल सिस्टम-पैकेज चरण को sudo के साथ एलिवेट करती है।
./install.sh # full install
./install.sh --no-system # skip system packages (uv + Python deps only)
यह आपके पैकेज मैनेजर (apt, dnf, pacman, zypper, apk, brew, या rpm-ostree) को स्वतः पहचानता है, उपयोगकर्ता स्तर पर uv इंस्टॉल करता है, uv sync चलाता है, और .env बनाता है। पहले sudo su न करें: यदि प्रोजेक्ट उपयोगकर्ता-केवल माउंट (उदाहरण के लिए /run/host या /media) पर स्थित है, तो root इसे पढ़ नहीं सकता, इसलिए सामान्य-उपयोगकर्ता आह्वान विश्वसनीय मार्ग है।
uv के साथ मैन्युअल रूप से इंस्टॉल करने के लिए:
uv sync
pip install -r requirements.txt भी एक फ़ॉलबैक के रूप में काम करता है।
उदाहरण पर्यावरण फ़ाइल को कॉपी करें और उन प्रदाताओं के लिए कुंजियाँ भरें जिन्हें आप चाहते हैं। बिना कुंजी वाला कोई भी प्रदाता स्वतः छोड़ दिया जाता है।
cp .env.example .env
GEOIP_API_KEY=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=
प्रत्येक प्रदाता एक Pydantic AI एजेंट है जो एक मान्य, संरचित परिणाम लौटाता है। एक से अधिक चुनें और प्रत्येक मॉडल स्कैन का स्वतंत्र रूप से और समवर्ती रूप से विश्लेषण करता है; फिर एक विचार-विमर्श एजेंट (चयनित मॉडलों में से एक) उन्हें एक ही समेकित रिपोर्ट में समेटता है। एक लाइव प्रगति बोर्ड चलने के दौरान प्रत्येक मॉडल की स्थिति, समय, और विचार-विमर्श चरण दिखाता है।
| Provider | Key | Default model | Approx. price / 1M tokens |
|---|---|---|---|
| OpenAI | openai | gpt-5.6-luna | $0.20 in / $1.20 out |
| Anthropic | claude | claude-haiku-4-5 | $1.00 in / $5.00 out |
gemini | gemini-3.6-flash | $0.75 in / $3.75 out | |
| Ollama | ollama | llama3 | local / free |
.env में मिलते-जुलते *_MODEL वेरिएबल के साथ किसी भी मॉडल को ओवरराइड करें। विकल्पों के लिए .env.example देखें। Ollama एक स्थानीय Docker इमेज का उपयोग करता है और चयनित होने पर स्वतः शुरू हो जाता है।
uv run gpt_vuln.py ... के साथ चलाएँ, या एक सक्रिय venv के अंदर python gpt_vuln.py ...।
# Help
uv run gpt_vuln.py --help
uv run gpt_vuln.py --rich_menu help
# Nmap scan (default profile 1), analysed by OpenAI
python gpt_vuln.py --target scanme.nmap.org --attack nmap --ai openai
# Choose a scan profile (see the profile table below, or --list_profiles)
python gpt_vuln.py --target scanme.nmap.org --attack nmap --profile 2
python gpt_vuln.py --list_profiles
# DNS recon (no profile needed)
python gpt_vuln.py --target example.com --attack dns
# Subdomain enumeration (default or custom wordlist)
python gpt_vuln.py --target example.com --attack sub
python gpt_vuln.py --target example.com --attack sub --sub_list path/to/list.txt
# GeoIP lookup
python gpt_vuln.py --target 8.8.8.8 --attack geo
# JWT analysis
python gpt_vuln.py --target <token> --attack jwt
# PCAP analysis
python gpt_vuln.py --target capture.pcap --attack pcap --output outputs/output.json
# Several providers: each analyses independently, then one consolidated report
python gpt_vuln.py --target example.com --attack dns --ai openai,claude,gemini
# Choose which model deliberates, and also show each model's own analysis
python gpt_vuln.py --target example.com --attack dns --ai all --summarizer claude --show_individual
# Password cracking
python gpt_vuln.py --password_hash <hash> --wordlist_file words.txt --algorithm md5 --parallel
# Interactive step-by-step menu
python gpt_vuln.py --menu
--menu एक निर्देशित इंटरफ़ेस लॉन्च करता है जो प्रत्येक हमले के लिए लक्ष्य, विकल्प, और AI प्रदाताओं के लिए प्रॉम्प्ट करता है।
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━┓
┃ Option ┃ Action ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━┩
│ 1 │ Nmap scan │
│ 2 │ DNS recon │
│ 3 │ Subdomain enum │
│ 4 │ GeoIP lookup │
│ 5 │ JWT analysis │
│ 6 │ PCAP analysis │
│ 7 │ Hash cracker │
│ q │ Quit │
└─────────┴────────────────┘
प्रोफ़ाइल 1–5 अनप्रिविलेज्ड चलते हैं (TCP कनेक्ट स्कैन, कोई root नहीं)। प्रोफ़ाइल 1 डिफ़ॉल्ट है। प्रोफ़ाइल 6–10 SYN/UDP/OS-डिटेक्शन फ़्लैग का उपयोग करते हैं जिन्हें root चाहिए; जब आप कोई चुनते हैं तो GVA केवल nmap चरण को sudo के साथ एस्केलेट करता है। इस तालिका को अपने टर्मिनल में देखने के लिए python gpt_vuln.py --list_profiles चलाएँ।