使用 GoPhish 执行钓鱼模拟
概述
GoPhish 是一个开源钓鱼模拟框架,供安全团队开展授权的钓鱼意识培训活动。它提供活动管理、邮件模板创建、着陆页克隆和综合报告功能。本技能涵盖部署 GoPhish、创建逼真的钓鱼场景以及分析活动结果,以衡量和提升组织抵御能力。
前置条件
- GoPhish 二进制文件或 Docker 镜像(https://github.com/gophish/gophish)
- 用于发送测试邮件的 SMTP 服务器或中继
- 管理层对钓鱼模拟的书面授权
- 目标邮件列表(人力资源部门批准)
- 用于着陆页的 SSL/TLS 证书
- Python 3.8+ 用于自动化脚本
核心概念
GoPhish 架构
- 管理面板:活动管理的 Web UI(默认端口 3333)
- 钓鱼服务器:提供着陆页并追踪点击(默认端口 80/443)
- SMTP 配置:出站邮件发送配置文件
- 活动引擎:协调邮件投递、追踪和报告
活动组成部分
- 发送配置文件:出站邮件的 SMTP 服务器配置
- 邮件模板:带追踪的钓鱼邮件内容
- 着陆页:用户被引导到的虚假页面
- 用户组:活动的目标收件人
- 活动:结合所有组件并设置调度
实施步骤
步骤一:部署 GoPhish
# Docker 部署
docker pull gophish/gophish
docker run -d --name gophish -p 3333:3333 -p 8080:80 gophish/gophish
# 或使用二进制部署
wget https://github.com/gophish/gophish/releases/latest/download/gophish-v0.12.1-linux-64bit.zip
unzip gophish-v0.12.1-linux-64bit.zip
chmod +x gophish
./gophish
步骤二:配置发送配置文件
- 名称:"内部邮件服务器"
- SMTP 发件人:awareness-test@yourdomain.com
- 主机:smtp.yourdomain.com:587
- 用户名/密码:服务账户凭据
- 启用 TLS
步骤三:创建邮件模板
- 使用真实场景:密码重置、IT 通知、人力资源更新
- 包含 GoPhish 追踪像素:
{{.Tracker}} - 包含钓鱼链接:
{{.URL}} - 使用
{{.FirstName}}、{{.LastName}}、{{.Position}}进行个性化
步骤四:创建着陆页
- 使用 GoPhish 的导入功能克隆合法登录页面
- 启用凭据捕获(仅限授权测试)
- 配置提交后重定向到培训页面
- 为 HTTPS 添加 SSL 证书
步骤五:导入用户并启动活动
- 导入 CSV 文件,包含:名字、姓氏、邮件、职位
- 设置活动计划(错开发送以避免被检测)
- 启动并实时监控
步骤六:使用 process.py 分析结果
使用自动化脚本通过 GoPhish API 提取活动数据,并生成详细的分析报告。
工具与资源
- GoPhish:https://getgophish.com/
- GoPhish API 文档:https://docs.getgophish.com/api-documentation/
- GoPhish GitHub:https://github.com/gophish/gophish
- Evilginx2(用于高级 AiTM 测试):https://github.com/kgretzky/evilginx2
- King Phisher:https://github.com/rsmusllp/king-phisher
验证
- 成功部署 GoPhish 并访问管理面板
- 向测试邮箱创建并发送测试钓鱼邮件
- 在着陆页上捕获模拟凭据
- 生成包含打开/点击/提交率的活动报告
- 用户交互后重定向至意识培训页面