reNgine:一款针对Web应用渗透测试的自动化网络侦察框架
字数 1127 2025-08-15 21:31:34
reNgine: Web应用渗透测试自动化网络侦察框架教学文档
1. reNgine概述
reNgine是一款针对Web应用渗透测试的自动化网络侦察框架,主要用于在渗透测试过程中实现信息收集。它不是一个漏洞扫描工具,而是一个高度集成的侦察平台。
核心特点
- 集中化工具:整合多种侦察功能于单一平台
- 高度可定制:可根据需求配置扫描引擎
- 结果汇总:能够将多种工具的输出结果进行统一展示
- 可视化界面:提供Web界面方便操作和查看结果
2. 主要功能
2.1 目标侦察能力
- 子域名枚举:发现目标的所有子域名
- 页面标题搜索:按特定标题筛选页面
- 状态码过滤:按HTTP状态码(如200)筛选结果
- 技术栈识别:识别特定技术(如PHP)的使用情况
2.2 终端节点收集
- 使用gau、hakrawler等工具收集URL信息
- 支持按文件后缀(如.php)和状态码组合筛选
- 屏幕截图功能:自动获取目标页面截图
3. 安装指南
3.1 系统要求
3.2 安装步骤
-
克隆项目仓库:
git clone https://github.com/yogeshojha/rengine.git cd rengine -
配置环境变量:
编辑.env文件:nano .env或
vim .env添加以下内容(根据实际情况修改):
AUTHORITY_NAME=reNgine AUTHORITY_PASSWORD=nSrmNkwT COMPANY=reNgine DOMAIN_NAME=recon.example.com COUNTRY_CODE=US STATE=Georgia CITY=Atlanta -
生成HTTPS证书:
make certs -
构建项目:
make build -
启动服务:
make up -
访问Web界面:
https://127.0.0.1 或 https://your_ip
4. 使用说明
4.1 基本工作流程
- 通过Web界面添加目标域名
- 配置扫描引擎参数
- 启动扫描任务
- 查看汇总结果
4.2 典型使用场景示例
场景1:搜索特定标题的页面
- 配置条件:页面标题包含"Dashboard"且状态码为200
- 结果:显示符合条件的页面列表及截图
场景2:枚举特定技术的子域名
- 配置条件:使用PHP且HTTP状态为200的子域名
- 结果:显示符合条件的子域名列表
场景3:收集特定类型的URL
- 配置条件:包含.php后缀且状态码为200的页面
- 结果:显示符合条件的URL列表
5. 注意事项
- 非漏洞扫描工具:reNgine仅用于信息收集,不进行漏洞检测
- 依赖开源工具:结果准确性依赖于集成的第三方工具
- 资源消耗:大规模扫描可能需要较多系统资源
- 法律合规:使用前确保获得目标系统的授权
6. 许可证
reNgine遵循GNU GPL v3开源许可证协议。
7. 项目资源
- 项目地址:GitHub仓库
- 演示视频:参考原文链接
8. 最佳实践建议
- 目标范围:明确扫描范围,避免未经授权的扫描
- 定期更新:保持工具和依赖组件最新版本
- 结果验证:对自动收集的信息进行人工验证
- 日志记录:保存扫描日志用于审计和报告
- 性能优化:根据硬件配置调整并发扫描数量
通过合理配置和使用reNgine,可以显著提高Web应用渗透测试中信息收集阶段的效率和全面性。