Evilginx 安全测试工具实战指南
【免费下载链接】evilginxPLEASE USE NEW VERSION: https://github.com/kgretzky/evilginx2项目地址: https://gitcode.com/gh_mirrors/ev/evilginx
⚠️安全合规声明:本工具仅用于授权环境下的安全测试,未经授权使用可能违反法律法规。使用前请确保已获得合法授权,遵守《网络安全法》及相关规定。
一、核心概念:什么是 Evilginx?
Evilginx 是一款基于 Nginx 反向代理的钓鱼攻击模拟工具,主要用于安全测试中模拟高级钓鱼场景。它通过修改 HTTP 请求和响应,实现对目标网站的中间人攻击(Man-in-the-Middle, MITM),帮助安全人员评估系统的钓鱼防御能力。
核心组件解析
- 反向代理模块:拦截并修改目标网站流量
- DNS 服务器:解析钓鱼域名指向攻击服务器
- Phishlet 配置系统:定义不同目标网站的钓鱼规则
知识点卡片:Evilginx 不直接入侵目标系统,而是通过社会工程学手段获取用户凭证,属于灰盒测试工具,需在严格授权下使用。
二、环境准备:如何搭建 Evilginx 测试环境?
2.1 系统要求
Evilginx 支持 Linux 系统(推荐 Ubuntu 20.04+ 或 Debian 10+),需要以下依赖:
- Python 3.7+
- 网络工具包(net-tools)
- 域名解析工具(dnsutils)
🔧环境检查命令:
# 检查 Python 版本 python3 --version # 安装依赖 sudo apt update && sudo apt install -y python3 python3-pip net-tools dnsutils2.2 安装步骤
🔧获取源码:
git clone https://gitcode.com/gh_mirrors/ev/evilginx cd evilginx🔧运行安装脚本:
chmod +x install.sh sudo ./install.sh⚠️注意事项:安装过程需要 root 权限,会自动配置系统网络规则和依赖包。
知识点卡片:安装完成后,程序会在当前目录生成
evilginx.py可执行文件,配置文件位于./sites/目录。
三、核心功能:Evilginx 能实现哪些安全测试场景?
3.1 钓鱼页面克隆
Evilginx 可自动克隆目标网站登录页面,保持视觉一致性以提高欺骗成功率。通过修改sites/[目标]/config文件定义克隆规则:
| 参数名 | 默认值 | 用途 | 注意事项 |
|---|---|---|---|
target_host | 无 | 目标网站域名 | 需填写完整域名(如www.facebook.com) |
listen_port | 80 | 本地监听端口 | 避免与系统现有服务冲突 |
ssl_enable | false | 是否启用 HTTPS | 启用需提前准备证书 |
3.2 凭证捕获机制
系统会将捕获的用户凭证存储在./sites/[目标]/[目标].creds文件中,每条记录包含:
- 时间戳
- 用户名/邮箱
- 密码
- IP 地址
- User-Agent 信息
3.3 DNS 欺骗配置
通过内置 DNS 服务器将钓鱼域名解析到攻击服务器,需在测试环境修改客户端 DNS 设置指向 Evilginx 服务器 IP。
知识点卡片:核心功能围绕 "流量拦截-内容篡改-数据捕获" 流程设计,所有操作需在隔离测试环境中进行。
四、实战案例:如何开展钓鱼模拟测试?
案例 1:模拟社交媒体钓鱼
- 配置目标网站:
python3 evilginx.py --site facebook- 修改
./sites/facebook/config文件,设置target_host=www.facebook.com - 启动服务:
python3 evilginx.py --start- 在测试客户端修改 DNS 为服务器 IP,访问钓鱼域名
案例 2:企业邮箱凭证测试
- 复制模板配置:
cp -r ./sites/google ./sites/companymail- 编辑
companymail/config,更新目标域名和表单字段 - 启动带 HTTPS 模式:
python3 evilginx.py --start --ssl案例 3:云服务凭证捕获
针对icloud.com等云服务,使用多域名配置:
# 在 ./sites/icloud/config 中 [domains] primary = www.icloud.com additional = [appleid.apple.com, idmsa.apple.com]知识点卡片:实战测试需记录详细操作日志,包括测试时间、目标系统、参与人员和结果分析,确保可追溯性。
五、常见问题:如何解决测试中的技术难题?
Q1:启动时报端口占用错误?
🔧解决方案:
# 查找占用端口的进程 sudo lsof -i :80 # 终止进程(替换 PID) sudo kill -9 [PID]Q2:钓鱼页面样式错乱?
⚠️可能原因:目标网站使用动态加载或反爬机制,需手动调整./sites/[目标]/*.conf中的资源替换规则。
Q3:无法捕获 POST 数据?
🔧检查配置:确保config文件中capture_post参数设置为true,并正确配置form_fields列表。
知识点卡片:遇到复杂问题时,可查看
./evilginx.py源码或检查系统日志(/var/log/evilginx.log)定位问题。
⚠️安全合规声明:再次提醒,本工具仅用于合法授权的安全测试。未经授权的使用可能导致民事赔偿和刑事责任。安全测试应遵循最小权限原则,测试完成后立即清理所有测试数据。
【免费下载链接】evilginxPLEASE USE NEW VERSION: https://github.com/kgretzky/evilginx2项目地址: https://gitcode.com/gh_mirrors/ev/evilginx
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考