venkatas/vikramaditya

GitHub: venkatas/vikramaditya

自动化渗透测试平台,可对目标域名、IP或CIDR执行完整的侦察、漏洞扫描和AI分析,并生成专业级VAPT报告。

Stars: 5 | Forks: 2

``` ██╗ ██╗██╗██╗ ██╗██████╗ █████╗ ███╗ ███╗ █████╗ ██████╗ ██╗████████╗██╗ ██╗ █████╗ ██║ ██║██║██║ ██╔╝██╔══██╗██╔══██╗████╗ ████║██╔══██╗██╔══██╗██║╚══██╔══╝╚██╗ ██╔╝██╔══██╗ ██║ ██║██║█████╔╝ ██████╔╝███████║██╔████╔██║███████║██║ ██║██║ ██║ ╚████╔╝ ███████║ ╚██╗ ██╔╝██║██╔═██╗ ██╔══██╗██╔══██║██║╚██╔╝██║██╔══██║██║ ██║██║ ██║ ╚██╔╝ ██╔══██║ ╚████╔╝ ██║██║ ██╗██║ ██║██║ ██║██║ ╚═╝ ██║██║ ██║██████╔╝██║ ██║ ██║ ██║ ██║ ╚═══╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ``` **自主VAPT平台。给定目标 — FQDN、IP或CIDR范围。它会进行探测并生成报告。** [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) [![Python 3.10+](https://img.shields.io/badge/Python-3.10+-3776AB.svg?style=flat-square&logo=python&logoColor=white)](https://python.org) [![Shell](https://img.shields.io/badge/Shell-bash-4EAA25.svg?style=flat-square&logo=gnubash&logoColor=white)](https://www.gnu.org/software/bash/) [![AI Powered](https://img.shields.io/badge/AI-Ollama%20%7C%20MLX%20%7C%20Claude%20%7C%20GPT--4o%20%7C%20Grok-blueviolet.svg?style=flat-square)](#multi-provider-ai) [快速开始](#quick-start) · [架构](#architecture) · [漏洞覆盖范围](#vulnerability-coverage) · [报告](#reports) · [安装说明](#installation) · [API密钥](#api-keys-setup) · [贡献指南](#contributing) **侦察 → 技术指纹 → CVE映射 → 漏洞扫描 → AI分析 → 专业报告**
## 传奇 **Vikramaditya** — 是一位传奇的印度皇帝,他的王位只有无畏追求真理、无偏私地进行审判的人才能登临。他的名字意为"太阳的勇气"。 这个工具运作方式相同。给定一个目标。离开。回来时收获一份完整的VAPT报告 — 每个漏洞都无所遁形,每个弱点都被记录在案。 它受[**claude-bug-bounty**](https://github.com/shuvonsec/claude-bug-bounty)启发并由此演变而来 — 最初的AI辅助漏洞赏金自动化平台,为本工具提供了侦察管道、ReAct代理架构和AI分析引擎。 ## 功能说明 Vikramaditya是一款为专业安全顾问构建的自主VAPT工具。您给它一个目标 — 一个域名、一个IP或整个子网。它会运行完整的评估管道并生成一份可直接提交的报告。 | 阶段 | 执行内容 | |:------|:-------------| | 🔭 **侦察** | 子域名枚举、DNS解析、存活主机发现、URL爬取、JS分析、密钥提取 | | 🔬 **指纹识别** | 技术栈检测(httpx)、CVE风险评分、优先主机排序 | | 🔍 **扫描** | SQLi、XSS、SSTI、RCE、文件上传、CORS、JWT、云配置错误、框架暴露 | | 💥 **利用** | CMS利用链(Drupal、WordPress)、Spring actuators、暴露的管理面板 | | 🧠 **分析** | AI驱动的分类 — 寻找利用链、按影响排序、消除噪音 | | 📋 **报告** | Burp Suite风格的HTML报告:执行摘要、CVSS评分、PoC证据、修复建议 | ## 快速开始 ``` git clone https://github.com/venkatas/vikramaditya.git cd vikramaditya chmod +x setup.sh && ./setup.sh # installs all required tools # 运行完整评估 python3 hunt.py --target example.com # 单个 IP 地址 python3 hunt.py --target 192.168.1.100 # 子网(首先通过 nmap ping 扫描发现活跃主机) python3 hunt.py --target 10.0.0.0/24 # 更快扫描(更少检查) python3 hunt.py --target example.com --quick # 自主模式 — AI 驱动所有决策 python3 hunt.py --target example.com --autonomous ``` ## 架构 ``` Target (FQDN / IP / CIDR) │ ▼ hunt.py ◄── brain.py (AI analysis + multi-provider LLM) │ └── agent.py (autonomous ReAct loop) │ ┌────┴────────────────────────────────────┐ │ │ ▼ ▼ recon.sh scanner.sh │ │ ├── subfinder / assetfinder ├── SQLi (sqlmap + verifier) ├── amass / dnsx ├── XSS (dalfox) ├── httpx (tech detect) ├── SSTI (math-canary probes) ├── katana / waybackurls / gau ├── RCE (Log4Shell, Tomcat, JBoss) ├── nuclei (CVE templates) ├── File upload bypass ├── nmap / naabu (port scan) ├── Cloud exposure (Firebase, K8s, Docker) ├── subzy (takeover check) ├── Framework exposure (Spring, GraphQL) └── trufflehog / gitleaks (JS secrets) └── Race conditions (xargs -P 20) │ ▼ prioritize.py (CVE risk scoring) │ ▼ brain.py (AI triage) │ ▼ reporter.py ├── vapt_report.html (Burp Suite-style, self-contained) └── vapt_report.md (Markdown summary) ``` ## 漏洞覆盖范围 | 类别 | 检查项 | |:---------|:-------| | **注入** | SQLi(错误型/盲注/时间型)、SSTI(Jinja2/Freemarker/Thymeleaf/ERB)、XXE、LDAP注入 | | **XSS** | 反射型、存储型、DOM型 — 通过dalfox管道 | | **RCE** | Log4Shell OOB、Tomcat PUT(CVE-2017-12615)、JBoss反序列化、Spring4Shell | | **认证** | JWT(alg=none、RS256→HS256、弱密钥)、OAuth配置错误、会话固定 | | **IDOR** | 对象级、字段级、GraphQL node() IDOR、UUID枚举 | | **文件上传** | 扩展名绕过、MIME混淆、多语言文件、SVG XSS | | **云** | Firebase开放读写、K8s API未授权访问、Docker socket暴露、S3 bucket枚举 | | **框架** | Spring actuators(env/heapdump)、H2控制台、GraphQL自省、Swagger UI | | **CMS** | Drupalgeddon2(CVE-2018-7600)、WordPress用户枚举+xmlrpc、Joomla/Magento | | **基础设施** | 子域名接管(subzy)、CORS配置错误、开放重定向、HTTP走私 | | **密钥** | JS bundle密钥(trufflehog/gitleaks)、.env暴露、.git/config泄露 | | **竞态条件** | OTP、优惠券、支付端点的并发探测 | ## 报告 报告输出符合专业渗透测试项目标准 — 适合提交给客户。 **HTML报告**(`vapt_report.html`)— 单一自包含文件: - 深蓝色封面页,包含客户名称、顾问、日期和分类 - 包含风险分解条的执行摘要 - 漏洞摘要表(ID、名称、严重程度、CVSS、主机) - 每个发现详情:描述、影响、PoC证据、修复建议、CWE/OWASP参考 - 附录:使用的工具、方法论、评估时间线 ``` # 从已完成的扫描会话生成报告 python3 reporter.py recon/example.com/sessions/20260325_120000_abc1/findings/ \ --client "Acme Corp" \ --consultant "Your Name" \ --title "Web Application Penetration Test" ``` 输出:`reports/example.com/vapt_report.html` + `vapt_report.md` ## 自主代理模式 `--autonomous`标志激活ReAct代理(`agent.py`),它驱动整个评估过程无需人工干预 — 自行规划、选择工具、分析结果并转向下一个攻击面。 ``` # 4小时预算的自主狩猎 python3 hunt.py --target example.com --autonomous --time 4 # 观看实时决策 tail -f recon/example.com/sessions//agent_trace.jsonl # 在运行中注入操作员指导而不停止代理 python3 agent.py --bump recon/example.com/sessions// \ "Focus on /api/v2/ endpoints — de-prioritize static assets" ``` 代理在紧凑的循环中运行:**观察 → 思考(LLM) → 行动(工具) → 观察**。每个决策都记录到`agent_trace.jsonl`中,供项目后审查使用。 ## 多提供商AI `brain.py`支持五个LLM后端。设置`BRAIN_PROVIDER`强制使用一个,或让Vikramaditya按优先级自动检测:**Ollama → MLX → Claude → OpenAI → Grok**。 | 提供商 | 所需环境变量 | 示例模型 | 备注 | |:---------|:----------------|:---------------|:------| | **Ollama**(本地,默认) | — | `qwen2.5:14b`、`qwen3-coder:32b` | CPU/GPU,全平台 | | **MLX**(Apple Silicon) | — | `Qwen2.5-14B-Instruct-4bit`、`DeepSeek-R1-14B-4bit` | M4上约40 tok/s,SSD分页 | | **Claude**(Anthropic) | `ANTHROPIC_API_KEY` | `claude-sonnet-4-6`、`claude-opus-4-6` | 最佳推理能力 | | **OpenAI** | `OPENAI_API_KEY` | `gpt-4o`、`o3-mini` | | | **Grok**(xAI) | `XAI_API_KEY` | `grok-2-latest`、`grok-3-mini` | | ``` # 完全本地运行 — 无 API 密钥,数据不离开您的机器 ollama pull qwen2.5:14b python3 hunt.py --target example.com # Apple Silicon — MLX 在 M 系列芯片上比 Ollama 更快(自动检测) # 安装:pip3 install mlx-lm(或:./setup.sh) export BRAIN_PROVIDER=mlx export MLX_MODEL=mlx-community/Qwen2.5-14B-Instruct-4bit python3 hunt.py --target example.com # 强制使用 Claude 作为分析引擎 export BRAIN_PROVIDER=claude export ANTHROPIC_API_KEY=sk-ant-... python3 hunt.py --target example.com ``` ## 安装说明 ### 前置条件 ``` # macOS brew install go python3 node jq nmap # Debian/Ubuntu sudo apt install golang python3 nodejs jq nmap ``` ### 安装安全工具 ``` chmod +x setup.sh && ./setup.sh ``` `setup.sh`自动安装**25+个工具**: | 来源 | 工具 | |:-------|:------| | **Homebrew** | `subfinder` `httpx` `nuclei` `ffuf` `nmap` `amass` `sqlmap` `trufflehog` `gitleaks` `whatweb` | | **Go** | `dnsx` `katana` `naabu` `cdncheck` `interactsh-client` `gau` `dalfox` `subzy` `waybackurls` `anew` `qsreplace` `assetfinder` `gf` | | **预编译二进制** | `gowitness`(v3,Apple Silicon + Intel) | | **pip** | `arjun` `httpx[cli]` `mlx-lm`(仅arm64) | | **git clone → tools/** | `LinkFinder` `SecretFinder` `XSStrike` `drupalgeddon2` | | **自动** | nuclei-templates、gf模式(`~/.gf/`)、subfinder配置模板 | ### Python依赖 ``` pip install -r requirements.txt ``` 请参阅`requirements.txt`了解LLM提供商SDK详情。 ## API密钥设置 ### CHAOS API(ProjectDiscovery)— 获得最佳子域名覆盖的必需项 侦察管道使用ProjectDiscovery的[Chaos](https://chaos.projectdiscovery.io)数据集 — 每个域有数百万个预枚举的子域名。免费密钥。 1. 在**[chaos.projectdiscovery.io](https://chaos.projectdiscovery.io)**注册 2. 复制您的API密钥 3. 运行前导出: ``` export CHAOS_API_KEY="your-key-here" # 持久化配置: echo 'export CHAOS_API_KEY="your-key-here"' >> ~/.zshrc source ~/.zshrc ``` `recon.sh`检测到`$CHAOS_API_KEY`并在首次运行时自动将其注入到subfinder的提供商配置中。**密钥永远不会存储在本仓库的任何文件中。** ### 可选API — 更好的子域名覆盖 `setup.sh`在`~/.config/subfinder/provider-config.yaml`创建配置模板。取消注释并填写任何这些免费/低成本密钥: | 提供商 | 免费? | 注册地址 | 收益 | |:---------|:------|:-------|:--------| | **VirusTotal** | ✅ 免费 | [virustotal.com](https://www.virustotal.com/gui/my-apikey) | +被动子域名数据 | | **SecurityTrails** | ✅ 免费套餐 | [securitytrails.com](https://securitytrails.com/app/account/credentials) | +历史DNS | | **Censys** | ✅ 免费套餐 | [search.censys.io/account/api](https://search.censys.io/account/api) | +证书透明度 | | **Shodan** | 💲 约$9/月 | [account.shodan.io](https://account.shodan.io) | +横幅抓取、端口数据 | | **GitHub** | ✅ 免费 | [github.com/settings/tokens](https://github.com/settings/tokens) | +源代码子域名泄露 | ``` # ~/.config/subfinder/provider-config.yaml chaos: - YOUR_CHAOS_API_KEY virustotal: - YOUR_VIRUSTOTAL_API_KEY securitytrails: - YOUR_SECURITYTRAILS_API_KEY censys: - YOUR_CENSYS_API_ID:YOUR_CENSYS_API_SECRET shodan: - YOUR_SHODAN_API_KEY github: - YOUR_GITHUB_TOKEN ``` 请参阅[`subfinder-config.yaml.example`](subfinder-config.yaml.example)获取完整模板。 ## CLI参考 ``` hunt.py — VAPT Orchestrator Target input: --target example.com FQDN --target 192.168.1.100 Single IP --target 10.0.0.0/24 CIDR range (nmap ping sweep first) Scan modes: --quick Faster scan, fewer checks --full All checks including race conditions --autonomous AI-driven autonomous assessment --scope-lock Test exact target only (no subdomain expansion) Selective phases: --recon-only Recon only --scan-only Scan only (requires prior recon) --js-scan JS analysis + secret extraction --param-discover Parameter discovery (Arjun + ParamSpider) --api-fuzz API endpoint brute (Kiterunner) --secret-hunt TruffleHog + GitHound --cors-check CORS misconfiguration check --exploit CMS exploit chains (Drupal, WordPress) --rce-scan RCE: Log4Shell, Tomcat, JBoss, Spring --sqlmap sqlmap on discovered SQLi candidates --jwt-audit JWT algorithm confusion + weak secret crack AI options: --no-brain Skip AI analysis (tools only) --brain-only AI analysis on existing recon data --brain-next Ask AI: what is the highest-impact next action? Reporting: python3 reporter.py [--client NAME] [--consultant NAME] [--title TITLE] Utilities: --repair-tools Auto-install missing tools --status Show current assessment progress --oob-setup Configure interactsh OOB token --resume SESSION_ID Resume a previous session ``` ## 目录结构 ``` vikramaditya/ ├── hunt.py Main orchestrator ├── brain.py AI analysis engine (multi-provider LLM) ├── agent.py Autonomous ReAct agent ├── recon.sh Subdomain + URL discovery ├── scanner.sh Vulnerability scanner ├── reporter.py Report generator (HTML + Markdown) ├── prioritize.py CVE risk scoring ├── api_audit.py OpenAPI/REST API auditing ├── cve.py CVE matcher ├── fuzzer.py Smart logic fuzzer ├── validate.py Finding validator (4-gate) ├── intel.py CVE + advisory intel ├── mindmap.py Attack surface mapper ├── targets.py Target management ├── idor.py IDOR scanner ├── idor_mutator.py GraphQL mutation IDOR ├── oauth.py OAuth misconfiguration tester ├── race.py Race condition tester ├── payloads.py Payload generator ├── probe.py HTTP prober ├── browser_recon.js Browser-side recon (Playwright) ├── evasion.py WAF bypass helpers ├── zendesk_idor.py Zendesk-specific IDOR ├── setup.sh Tool installer ├── sqli_verify.sh SQLi verification ├── procs.sh Pipeline process monitor ├── requirements.txt Python dependencies ├── config.example.json Configuration template ├── skills/ Skill definitions ├── wordlists/ Custom wordlists ├── recon/ Scan output (gitignored) ├── findings/ Validated findings (gitignored) └── reports/ Generated reports (gitignored) ``` ## 配置 复制并编辑示例配置: ``` cp config.example.json config.json ``` 关键设置: ``` { "brain_provider": "ollama", "ollama_model": "qwen2.5:14b", "interactsh_token": "YOUR_INTERACTSH_TOKEN", "rate_limit": 50, "threads": 10, "timeout": 30, "user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36" } ``` ## 贡献指南 欢迎提交PR。这个工具最初受[`shuvonsec/claude-bug-bounty`](https://github.com/shuvonsec/claude-bug-bounty)启发并在其基础上构建 — 最初的AI辅助漏洞赏金平台。推进其使命的贡献都将受到赞赏。 **好的贡献:** - 为`scanner.sh`添加新的漏洞扫描器或检测模块 - 向`skills/`和`wordlists/`添加有效载荷 - 在`agent.py`中定义新的代理工具 - 改进报告模板 — 更好的HTML、更好的Markdown - 在`brain.py`中添加新的AI提供商支持 - 真实世界的方法论改进(需有授权项目证据) - IP/网络扫描改进(更好的CIDR处理、IPv6) - 平台特定模块(Jira、Confluence、GitLab、云控制台) **如何贡献:** ``` git checkout -b feature/your-contribution # ... 进行您的修改 git commit -m "Add: short description" git push origin feature/your-contribution ``` 然后打开一个拉取请求,描述您添加的内容及其价值。 **提交信息约定:** | 前缀 | 用于 | |:-------|:--------| | `Add:` | 新的扫描器、模块或功能 | | `Fix:` | 错误修复 | | `Improve:` | 现有功能增强 | | `Refactor:` | 代码清理,无行为改变 | | `Docs:` | README、注释、仅文档 | ## 法律声明 **仅用于授权的安全测试。** 仅将此工具用于您拥有或已获得明确书面授权进行测试的系统。Vikramaditya专为在签署项目协议下工作的专业VAPT顾问设计。在大多数司法管辖区,未经授权使用此工具测试您没有权限测试的系统是违法的。 作者对误用不承担任何责任。 ## 致谢 Vikramaditya由[**claude-bug-bounty**](https://github.com/shuvonsec/claude-bug-bounty)演变而来,作者为[@shuvonsec](https://github.com/shuvonsec) — 这是一个AI辅助的漏洞赏金自动化框架,开创了侦察管道、ReAct代理循环和AI驱动的分析引擎,构成本工具的核心。 以**皇帝Vikramaditya**命名 — 他的传奇王位在授予审判之位前对每个 claimants进行32次真相考验。如同皇帝的朝堂:彻底、无情,没有任何弱点不被审视。
MIT许可证 · 为专业VAPT顾问构建 *"最终,秩序将洞察一切。"*
标签:AES-256, AI安全, Chat Copilot, CIDR扫描, Cutter, FQDN枚举, HTTP工具, Python安全工具, Qt框架, VAPT, Web安全, 云存储安全, 实时处理, 密码管理, 应用安全, 开源软件, 恶意行为检测, 插件系统, 无线安全, 日志审计, 服务识别, 漏洞评估, 网络安全, 网络安全审计, 网络扫描, 自动化渗透, 蓝队分析, 进攻性安全, 逆向工具, 防御绕过, 隐私保护, 靶场探测