loucifer-x/prosecutor
GitHub: loucifer-x/prosecutor
一款基于 Python 的模块化 Web 安全扫描器,通过插件架构扩展漏洞检测能力,帮助安全研究人员高效发现 Web 应用中的常见漏洞。
Stars: 3 | Forks: 0
# PROSECUTOR


prosecutor 是一个用 Python 编写的模块化 Web 安全扫描器。
它旨在发现 Web 应用程序的攻击面、分析输入,并通过动态加载的扫描器模块运行安全检查。
该项目采用基于插件的架构,允许在不修改核心引擎的情况下添加新的扫描器。
## 功能
- 围绕模块化扩展系统构建的强大核心架构
- 无需修改主引擎即可添加新的安全扫描器
- 动态加载扫描器模块
- 独立的扫描器开发与测试
- Domain 爬虫模式,用于自动化 endpoint 发现和攻击面映射
## 漏洞模块
### SQL Injection (SQLi)
- 将 SQL payload 注入到发现的参数中
- 测试应用程序响应以发现潜在的数据库操纵
- 支持自定义 payload 集
### 跨站请求伪造 (CSRF)
- 分析表单和请求操作
- 针对状态更改请求生成 CSRF 测试用例
- 检查是否缺少 anti-CSRF 保护
### 服务器端请求伪造 (SSRF)
- 将基于 URL 的 payload 注入到潜在的 SSRF 参数中
- 使用 ngrok 测试服务端请求行为
- 支持 out-of-band 回调验证
### 跨站脚本 (XSS)
- 将 XSS payload 注入到用户可控的输入中
- 测试反射型和存储型输入点
- 分析响应以发现可能的脚本执行
### Security Headers
- 检查 HTTP 响应头
- 检测缺失或不安全的 Security Headers
- 报告推荐的 Header 策略
## 安装
克隆仓库:
```
git clone https://github.com/loucifer-x/PROSECUTOR.git
cd PROSECUTOR
```
安装依赖项:
```
pip install -r requirements.txt
```
安装 Playwright 浏览器二进制文件:
```
playwright install
```
## 前置条件
本项目 (SSRF SCANNER) 需要 **ngrok** 隧道来实现依赖接收 HTTP 回调的功能。
1. 下载并安装 **ngrok**。
2. 使用您的账户对 ngrok 客户端进行身份验证。
3. 启动一个连接到本地 listener 的隧道(将 `` 替换为您的应用程序使用的端口):
```
ngrok http
```
4. 复制生成的公共 URL,并配置应用程序以使用它。
## 运行
```
python main.py
```
## 免责声明
Perscrutator 仅用于**授权的安全测试、教育和研究目的**。
请**不要**对您不拥有或未获得明确测试许可的网站、应用程序、服务器或网络使用此工具。
未经授权的安全测试可能是非法的。
用户应对运行此软件前确保拥有适当的授权负全部责任。对于因滥用此工具或由此工具造成的损害,作者不承担任何责任。
推荐的测试环境:
- 您自己的应用程序
- 本地开发环境
- Capture The Flag (CTF) 比赛
- 专门设计的漏洞应用程序
标签:CISA项目, DOE合作, Python, Web安全, 加密, 无后门, 漏洞扫描器, 特征检测, 蓝队分析, 逆向工具