前言
在之前的文章中已经搭建好了 Gophish 钓鱼平台和 EwoMail 邮件服务器,本篇文章接着介绍如何利用 Gophish 平台实现二维码钓鱼。
- 网络钓鱼演练:Gophish 钓鱼平台搭建及使用教程 http://www.luckysec.cn/posts/63a62cd6.html
- 网络钓鱼演练:EwoMail 邮件服务器搭建及使用教程 http://www.luckysec.cn/posts/c5198ed3.html
0x01 Gophish 二维码说明
Gophish 是一个开源的钓鱼模拟平台,主要用于测试和评估组织的安全意识。原版本默认不支持使用二维码进行网络钓鱼,通过修改官方版本源码,手动增加二维码功能。
0x02 Gophish 二维码制作
下载 Gophish 源码到本地
git clone https://github.com/gophish/gophish/
打开编辑文件 /gophish/models/template_context.go
第9行,添加内容如下:
"os"
"github.com/google/uuid"
"io/ioutil"
"encoding/base64"
qrcode "github.com/skip2/go-qrcode"
第32行,添加内容如下:
QrCode string
第70行,添加内容如下:
id, err := uuid.NewRandom()
if err != nil {
return PhishingTemplateContext{}, err
}
filename := id.String() + ".png"
qrcode.WriteFile(phishURL.String(), qrcode.Medium, 256, filename)
file, err := os.Open(filename)
if err != nil {
return PhishingTemplateContext{}, err
}
defer file.Close()
data, err := ioutil.ReadAll(file)
if err != nil {
return PhishingTemplateContext{}, err
}
imgBase64 := "data:image/png;base64," + base64.StdEncoding.EncodeToString([]byte (data))
os.Remove(filename)
第98行,添加内容如下:
QrCode: imgBase64,
0x03 Gophish 二维码部署
完成修改后将整个 Gophish 代码文件夹重新打包成压缩包zip,上传到云服务器上,使用unzip命令解压。
unzip gophish.zip
在云服务器中安装 go 语言环境。
apt-get -y install golang
安装完成后,在解压出来的gophish文件夹中,使用 go 命令进行编译等待完成。
go get github.com/google/uuid
go get github.com/skip2/go-qrcode
env CGO_CFLAGS="-g -O2 -Wno-return-local-addr" GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build
编译完成后,在当前目录下会得到 gophish 文件,赋予其权限。
chmod -R 777 gophish
查看配置文件 vi config.json ,将admin_server的listen_url修改为0.0.0.0,默认端口3333,可以自定义未被其他服务占用的端口。
Gophish默认开启3333端口和80端口,在云服务器控制台的防火墙需要对外开放端口。为了安全起见,可以将Gophish后台地址3333端口设置指定IP访问。
在gophish文件夹中,运行程序有以下方式:
- 方式一:前台运行
./gophish
- 方式二:挂后台运行
nohup ./gophish
- 方式三:推荐用tmux复用器运行
# 新建一个会话窗口
tmux new -s gophish-test
# 进入Gophish文件夹
cd gophish
# 执行程序
./gophish
# 接着按 Ctrl+b键激活tmux窗口快捷键
# 再按d键切换到主界面会话
# 想重新接入会话,执行如下命令
tmux attach -t gophish-test
# 拓展:查看当前会话
tmux list-session
# 拓展:删除指定会话
tmux kill-session -t gophish-test
首次执行Gophish程序,会打印出账号密码,需记录下来后续登录使用。
访问Gophish后台地址 https://vpsIP:3333
使用初始账号密码登录即可。
首次登录会提示修改密码,修改完即可登录成功。
至此,修改代码增加二维码功能后的 Gophish 钓鱼平台,重新编译并且搭建成功。
0x04 Gophish 二维码使用
这里直接演示修改代码后的 Gophish 钓鱼平台如何二维码的制作使用,Gophish 钓鱼平台的基础使用不再赘述,可以参考之前写的文章:http://www.luckysec.cn/posts/63a62cd6.html
登录 Gophish 钓鱼平台,点击 Email Tamples 功能,新建邮件模板,编辑内容如下
<img alt="img" src="{{.QrCode}}" />
点击 Campaigns 功能,选择提前构造好的邮件文案、钓鱼页面、钓鱼地址、攻击者邮件、受害者邮箱,发送邮件即可。
钓鱼邮件发送成功后,受害者邮箱即可正常接收包含二维码的邮件,受害者拿出手机扫一扫,就可以访问跳转提前精心构造好的钓鱼页面。
0x05 Gophish 钓鱼效果
在 Gophish 钓鱼平台上,可以捕获到受害者中招的整个过程时间线。
Gophish 钓鱼平台详细记录了受害者访问提交的数据。