Gophish是为企业和渗透测试人员设计的开源网络钓鱼工具包。它提供了快速,轻松地设置和执行网络钓鱼攻击以及安全意识培训的能力,并且自带web面板,对于邮件编辑、网站克隆、数据可视化、批量发送等功能的使用带来的巨大的便捷,在功能上实现分块,令钓鱼初学者能够更好理解钓鱼工作各部分的原理及运用
官方网址:https://getgophish.com/
项目地址: https://github.com/gophish/gophish
项目下载地址:https://github.com/gophish/gophish/releases
官方指导手册地址:https://docs.getgophish.com/user-guide
开搞篇
在github上查找合适的版本,并下载并解压
[root@gophish ~]# wget https://github.com/gophish/gophish/releases/download/v0.11.0/gophish-v0.11.0-linux-64bit.zip
[root@gophish ~]# unzip gophish-v0.11.0-linux-64bit.zip
进行一个简单的配置
[root@gophish ~]# cd gophish
[root@gophish gophish]# vim config.json
{
"admin_server": {
"listen_url": "0.0.0.0:3333",
"use_tls": true,
"cert_path": "gophish_admin.crt",
"key_path": "gophish_admin.key"
},
"phish_server": {
"listen_url": "0.0.0.0:80",
"use_tls": false,
"cert_path": "example.crt",
"key_path": "example.key"
},
"db_name": "sqlite3",
"db_path": "gophish.db",
"migrations_prefix": "db/db_",
"contact_address": "",
"logging": {
"filename": "",
"level": ""
}
}
后台管理页面开放的端口:admin_server 把 127.0.0.1 改为 0.0.0.0,外网直接访问就要0.0.0.0
钓鱼网站开放的端口:listen_url也要是0.0.0.0:80,如果80端口被占用了的话可以修改这个选项
配置完成后直接运行
[root@gophish gophish]# chmod 777 gophish
[root@gophish gophish]# ./gophish
开启后admin密码会在启动信息中显示 ef3578965b6bf324
登录管理后台地址,端口为3333,利用获取的登录账号密码,admin,ef3578965b6bf324
到此钓鱼平台搭建完成。。。
恶搞篇
安装完成登录后页面如下:
Groups
该功能主要是设置要进行钓鱼攻击的邮箱地址,可进行单个添加,也支持表格导入
Email Templates
发送到目标的电子邮件的内容。它们可以从现有电子邮件中导入,也可以从头开始创建。他们还支持发送附件。
如果是导入,那么记得要在点击“Import”之前需要勾选上“Change Links to Point to Landing Page”,该功能实现了当创建钓鱼事件后,会将邮件中的超链接自动转变为钓鱼网站的URL。
Landing Pages
登陆页面是用户点击收到的钓鱼链接时返回给用户的实际 HTML 页面。登录页面支持模板化、捕获凭据以及在用户提交凭据后将其重定向到另一个网站。
Capture Submitted Data
Gophish 可以轻松地从登录页面捕获凭据。要捕获凭据,只需选中“捕获提交的数据”复选框。Redirect to:
为了防止怀疑。为了防止用户在输入凭据后变得可疑,您可能希望将他们重定向到原始 URL。Gophish可以在用户提交凭据后轻松重定向用户。要重定向用户,请在选中“捕获提交的数据”复选框后出现的“重定向到:”文本字段中输入URL。
Sending Profiles
要发送电子邮件,Gophish 要求您配置称为“发送配置文件”的SMTP中继详细信息。要设置发送配置文件,请单击侧栏中的“发送配置文件”导航条目,然后单击“新建配置文件”按钮。
Name:Name字段是为新建的发件策略进行命名,不会影响到钓鱼的实施,建议以发件邮箱为名字,例如使用qq邮箱来发送钓鱼邮件,则Name字段可以写 xxxx@qq.com。
Password:Password 是SMTP服务认证的密码,例如qq邮箱,需要在登录qq邮箱后,依次点击 “设置”—>“账户”—>“开启SMPT服务”—>“生成授权码”来获取SMTP服务授权码,Password的值则填写我们收到的授权码。由于本次测试是用的我的vps搭建的邮件服务器,所以host地址写127.0.0.1,username和password为空。
配置完成后可进行邮件发送测试
开干篇
Campaigns的作用是将上述四个功能Sending Profiles 、Email Templates 、Landing Pages 、Users & Groups联系起来,并创建钓鱼事件。在Campaigns中,可以新建钓鱼事件,并选择编辑好的钓鱼邮件模板,钓鱼页面,通过配置好的发件邮箱,将钓鱼邮件发送给目标用户组内的所有用户。点击“New Campaign”新建一个钓鱼事件:
创建好之后接下来就是收到邮件
点击链接进行输入登录
后台获取到信息
坑、坑、坑
在这里补充我遇到的几个钓鱼页面坑爹的地方,一个是无法获取受害者输入的数据,而另一个就是无法点击登录按钮,其实这个坑官方有说的很明白
要捕获通过登录页面提交的数据,需要在
<form action="" method="POST">
<input name="username" type="text" placeholder="username" />
<input name="password" type="password" placeholder="password" />
<input type="submit" value="Submit" />
</form>
注意:
- 表单动作为空,将表单定向提交到钓鱼页面,因此定向到GoPhish服务器上
- 表单的提交方式必须为post
- 每个输入都必须要有name属性
如果按照上面还是没有数据,那么需要排查是否有其他的Javascript冲突,最后,确保在保存登录页面是选中捕获提交的数据
和捕获密码
这两个选项,否则,Gophish将从你的输入中删除,不会与表单一同提交