bakhtiyarovyertas/LVL99

GitHub: bakhtiyarovyertas/LVL99

一款基于 Python 的模块化 Web 应用漏洞扫描器,覆盖主流 OWASP 漏洞类型并支持多种输出格式。

Stars: 0 | Forks: 0

# LVL99 — Web 应用漏洞扫描器 ``` ██╗ ██╗ ██╗██╗ █████╗ █████╗ ██║ ██║ ██║██║ ██╔══██╗██╔══██╗ ██║ ██║ ██║██║ ╚██████║╚██████║ ██║ ╚██╗ ██╔╝██║ ╚═══██║ ╚═══██║ ███████╗╚████╔╝ ███████╗ █████╔╝ █████╔╝ ╚══════╝ ╚═══╝ ╚══════╝ ╚════╝ ╚════╝ ``` ## 功能 | 模块 | 标志 | OWASP 类别 | |---|---|---| | SQL 注入 | `--sqli` | A03:2021 | | 跨站脚本攻击 | `--xss` | A03:2021 | | CSRF 防护 | `--csrf` | A01:2021 | | 远程代码执行 | `--rce` | A03:2021 | | 本地文件包含 | `--lfi` | A01:2021 | | 服务端模板注入 | `--ssti` | A03:2021 | | IDOR | `--idor` | A01:2021 | | HTML 注入 | `--htmli` | A03:2021 | | NoSQL 注入 | `--nosqli` | A03:2021 | | 身份验证绕过 | `--auth` | A07:2021 | | 代码注入 | `--code` | A03:2021 | | API 安全 | `--api` | A09:2021 | | Fuzzer | `--fuzz` | A05:2021 | | XXE | `--xxe` | A05:2021 | | SSRF | `--ssrf` | A10:2021 | | 文件扩展名绕过 | `--fileext` | A03:2021 | ## 设置 ### 1. 安装 Python 依赖 ``` pip install -r requirements.txt ``` ### 2. 通过 Docker 启动易受攻击的目标 ``` cd docker docker compose up -d ``` | 应用 | URL | 默认凭据 | |---|---|---| | DVWA | http://localhost:8001 | admin / password | | Juice Shop | http://localhost:8002 | admin@juice-sh.op / admin123 | | WebGoat | http://localhost:8003/WebGoat | guest / guest | ## 使用方法 ### 自动化完整扫描并生成 HTML 报告 ``` python lvl99.py -u http://localhost:8001 -A --output report.html ``` ### 爬取 + 特定模块 ``` python lvl99.py -u http://localhost:8001 --crawl --xss --sqli --csrf ``` ### 针对特定端点 ``` python lvl99.py -u "http://localhost:8001/vulnerabilities/sqli/?id=1&Submit=Submit" --sqli ``` ### 加载已保存的 Burp Suite / ZAP 请求 ``` python lvl99.py -r request.txt --sqli --xss --output report ``` ### 使用自定义字典 ``` python lvl99.py -u http://localhost:8001 --sqli -w my_sqli_payloads.txt ``` ### 多种输出格式 ``` python lvl99.py -u http://localhost:8001 -A --output report --format html,json,txt,markdown ``` ### 认证扫描(使用 session cookie) ``` python lvl99.py -u http://localhost:8001 -A \ --cookie "PHPSESSID=abc123; security=low" \ --output report.html ``` ### 使用代理(Burp Suite / ZAP 拦截) ``` python lvl99.py -u http://localhost:8001 --sqli --xss \ --proxy http://127.0.0.1:8080 ``` ## 所有 CLI 标志 ``` Target: -u, --url URL Target URL -r, --request FILE Saved Burp/ZAP HTTP request file --crawl Crawl target before scanning Modules: -A, --all Run ALL modules --sqli SQL Injection --xss Cross-Site Scripting --csrf CSRF Protection --rce Remote Code Execution --lfi Local File Inclusion --ssti SSTI --idor IDOR --htmli HTML Injection --nosqli NoSQL Injection --auth Authentication Bypass --code Code Injection --api API Security --fuzz Generic Fuzzer --xxe XXE --ssrf SSRF --fileext File Extension Bypass Wordlists: -w, --wordlist FILE Custom wordlist (all modules) --sqli-wordlist FILE --xss-wordlist FILE --fuzz-wordlist FILE Output: -o, --output PATH Output path (without extension) -f, --format FMT html,json,txt,markdown (default: html) Session / HTTP: --cookie COOKIE Session cookie --header HDR Extra header (repeatable) --proxy URL HTTP proxy --timeout N Request timeout (default: 10) --delay SEC Delay between requests --threads N Threads (default: 10) --user-agent UA Custom User-Agent Misc: -v, --verbose Verbose debug output --no-banner Suppress banner ``` ## 字典 字典位于 `wordlists/` 中。默认情况下它们是空的——请添加您自己的 payload,每行一个。以 `#` 开头的行将被忽略。 ``` wordlists/ sqli.txt xss.txt lfi.txt rce.txt fuzz.txt ssti.txt xxe.txt nosqli.txt htmli.txt common.txt ``` ## 报告格式 - **HTML** — 暗色主题交互式报告,包含 OWASP 分类、风险评分、可折叠的 payload/证据 - **JSON** — 机器可读格式,适用于 CI/CD 流水线 - **TXT** — 用于终端日志记录的纯文本 - **Markdown** — 用于 GitHub issues / 文档 ## 项目结构 ``` lvl99/ ├── lvl99.py # Main CLI entry point ├── requirements.txt ├── core/ │ ├── logger.py # Colored CLI output │ ├── session.py # HTTP session + config │ ├── crawler.py # Web crawler (BFS, threaded) │ ├── base_scanner.py # Base class for all modules │ ├── request_parser.py # Burp/ZAP request file parser │ └── report.py # HTML/JSON/TXT/MD report generator ├── modules/ │ ├── sqli.py # SQL Injection │ ├── xss.py # XSS │ ├── csrf.py # CSRF │ ├── rce.py # RCE │ ├── lfi.py # LFI │ ├── ssti.py # SSTI │ ├── idor.py # IDOR │ ├── htmli.py # HTML Injection │ ├── nosqli.py # NoSQL Injection │ ├── auth_bypass.py # Auth Bypass │ ├── code_injection.py # Code Injection │ ├── api_scanner.py # API Security │ ├── fuzzer.py # Fuzzer │ ├── xxe.py # XXE │ ├── ssrf.py # SSRF │ └── file_ext.py # File Extension Bypass ├── wordlists/ # Payload wordlists (fill yourself) ├── reports/ # Default report output directory └── docker/ └── docker-compose.yml # DVWA + Juice Shop + WebGoat ``` ## 免责声明 LVL99 **仅**旨在用于您拥有或已获得明确书面测试授权的系统的安全测试。在未经授权的情况下对系统运行本工具是违法的。作者不对滥用行为承担责任。
标签:API安全, BeEF, CISA项目, Docker, DVWA, Homebrew安装, HTML报告, HTML注入, JSON输出, Juice Shop, NoSQL注入, OPA, OWASP Top 10, Python, WebGoat, Web安全, Web应用扫描, XML外部实体注入 (XXE), XXE攻击, 加密, 反取证, 多模态安全, 安全评估, 安全防御评估, 无后门, 服务端模板注入 (SSTI), 服务端请求伪造 (SSRF), 本地文件包含 (LFI), 模糊测试 (Fuzzing), 漏洞扫描器, 爬虫, 网络安全, 蓝队分析, 请求拦截, 越权访问 (IDOR), 跨站脚本攻击 (XSS), 跨站请求伪造 (CSRF), 身份验证绕过, 远程代码执行 (RCE), 逆向工具, 防御加固, 隐私保护, 靶场