Gophish钓鱼实践指南 – 作者:Jean

1. 概念

1.1. 钓鱼邮件

指利用伪装的电邮,欺骗收件人将账号、口令等信息回复给指定的接收者;或引导收件人连接到特制的网页,这些网页通常会伪装成和真实网站一样,如银行或理财的网页,令登录者信以为真,输入信用卡或银行卡号码、账户名称及密码等而被盗取。

1.2. 社会工程学攻击

指的是通过与他人的合法地交流,来使其心理受到影响,做出某些动作或者是透露一些机密信息的方式。这通常被认为是一种欺诈他人以收集信息、行骗和入侵计算机系统的行为。

1.3. Gophish

Gophish is an open-source phishing toolkit designed for businesses and penetration testers. It provides the ability to quickly and easily setup and execute phishing engagements and security awareness training.(Gophish是一个开源网络钓鱼工具包,专为企业和渗透测试人员设计。它提供了快速、轻松地设置和执行网络钓鱼活动和安全意识培训的能力。)

项目地址:https://github.com/gophish/gophish

用户手册:https://docs.getgophish.com/user-guide/

1.4. Postfix

是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件。

1.5. Dovecot

是一个开源的 IMAP 和 POP3 邮件服务器,支持 Linux/Unix 系统。

2. 环境

名称

操作系统

IP

Hostname

攻击者

CentOS Linux release 7.2.1511 (Core)

192.168.6.128

mail.dia0yu.com

企业A邮件服务器

CentOS Linux release 7.2.1511 (Core)

192.168.6.129

mail.diaoyu.com

3. 场景设定

假设企业A的域名为diaoyu.com,该企业有张三、李四这两名员工,邮箱账号为[email protected][email protected]

现模拟: 攻击者伪造一个假的邮箱[email protected],通过该邮箱给张三、李四发送钓鱼邮件。

4. 企业A邮件服务器配置

4.1. ip

192.168.6.129

4.2. 设置主机名

hostnamectl set-hostname mail.diaoyu.com

4.3. 关闭防火墙

systemctl stop firewalld

4.4. DNS

4.4.1. 安装

yum install bind -y

图片[1]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.4.2. 修改配置文件

4.4.2.1. /etc/named.conf

vi /etc/named.conf

图片[2]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

检查语法错误

named-checkconf

4.4.2.2. /etc/named.rfc1912.zones

vi /etc/named.rfc1912.zones

在文末添加

图片[3]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

检查语法错误

named-checkconf

4.4.2.3. diaoyu.com.zone

创建正向区域数据配置文件

cd /var/named

cp -p named.localhost diaoyu.com.zone

编辑正向区域数据配置文件

vi diaoyu.com.zone
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	mail.diaoyu.com.
	MX 10 	mail.diaoyu.com.
mail	IN A 	192.168.6.129

4.4.2.4. diaoyu.com.local

创建反向区域数据配置文件

cd /var/named

cp -p named.localhost diaoyu.com.local

编辑反向区域数据配置文件

vi diaoyu.com.local
$TTL 1D
@	IN SOA	diaoyu.com rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	mail.diaoyu.com.
	MX 10   mail.diaoyu.com.
10 	PTR 	mail.diaoyu.com.

检查语法错误

named-checkconf

4.4.3. 启动dns

systemctl start named

4.4.4. 设置开机自启

systemctl enable named

4.4.5. 设置dns

vi /etc/resolv.conf

图片[4]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.4.6. 解析验证

nslookup mail.diaoyu.com

图片[5]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.5. Postfix

4.5.1. 修改配置文件

4.5.1.1. /etc/postfix/main.cf

编辑postfix配置文件(修改6处内容)

myhostname = mail.diaoyu.com

mydomain = diaoyu.com

myorigin = $mydomain

inet_interfaces =  192.168.6.129 , 127.0.0.1

mydestination = $myhostname,  $mydomain

home_mailbox = Maildir/

检查语法错误

postfix check

4.5.2. 重启服务

systemctl restart postfix

4.5.3. 加入开机自启

systemctl enable postfix

4.5.4. 查看postfix配置

postconf -n

图片[6]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.5.5. 新建用户

新建系统用户(系统账号即为邮件账号) test、diaoyu、zhangsan、lisi

图片[7]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.6. Dovecot

4.6.1. 安装

yum install -y dovecot

图片[8]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.6.2. 修改配置文件

4.6.2.1. /etc/dovecot/dovecot.conf

protocols = imap pop3 lmtp

listen = *

!include conf.d/10-auth.conf

ssl = no

disable_plaintext_auth = no

mail_location = maildir:~/Maildir

4.6.3. 启动服务

systemctl start dovecot

4.6.4. 加入开机自启

systemctl enable dovecot

4.7. 检查端口监听情况

110,143端口需要监听

图片[9]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

4.8. 测试发邮件

telnet 发件测试

图片[10]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

使用Foxmail(宿主机)添加邮箱,结果失败:

图片[11]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

宿主机无法Telnet 25端口

图片[12]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

检查发现防火墙开启,关闭防火墙

图片[13]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

宿主机再次Telnet 发现已成功

图片[14]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

Foxmail成功创建账号

图片[15]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

收到的邮件信息如下

图片[16]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

现使用[email protected],发送邮件给[email protected],提示Undelivered Mail Returned to Sender(系统退信)[在攻击机named.rfc1912.zones增加内容后问题解决]。

图片[17]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

打开eml可以看到以下内容

图片[18]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

5. 攻击机配置

5.1. ip

192.168.6.128

5.2. Hostname

mail.dia0yu.com

5.3. DNS

5.3.1. 修改配置文件

5.3.1.1. /etc/named.rfc1912.zones

最终文件内容为:

// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package 
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
// and http://www.ietf.org/internet-drafts/draft-ietf-dnsop-default-local-zones-02.txt
// (c)2007 R W Franks
// 
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

zone "localhost.localdomain" IN {
	type master;
	file "named.localhost";
	allow-update { none; };
};

zone "localhost" IN {
	type master;
	file "named.localhost";
	allow-update { none; };
};

zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
	type master;
	file "named.loopback";
	allow-update { none; };
};

zone "1.0.0.127.in-addr.arpa" IN {
	type master;
	file "named.loopback";
	allow-update { none; };
};

zone "0.in-addr.arpa" IN {
	type master;
	file "named.empty";
	allow-update { none; };
};
zone "dia0yu.com" IN {
	type master;
	file "dia0yu.com.zone";
};
zone "6.168.192.in-addr.arpa" {
	type master;
	file "dia0yu.com.local";
};
zone "diaoyu.com" IN {
	type master;
	file "diaoyu.com.zone";
};

5.3.2. /etc/resolv.conf

cat /etc/resolv.conf

图片[19]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

5.3.3. diaoyu.com.zone

cd /var/named/

cat diaoyu.com.zone

$TTL 1D
@	IN SOA	@  rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	192.168.6.129
	MX 10 	mail
mail	A	192.168.6.129

5.3.4. dia0yu.com.local

cd /var/named

[root@127 named]# cat dia0yu.com.local 
$TTL 1D
@	IN SOA	diaoyu.com rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	mail.dia0yu.com.
	MX 10   mail.dia0yu.com.
10 	PTR 	mail.dia0yu.com.

5.3.5. dia0yu.com.zone

cd /var/named

[root@127 named]# cat dia0yu.com.zone 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	mail.dia0yu.com.
	MX 10 	mail.dia0yu.com.
mail	IN A 	192.168.6.128

5.4. 互发邮件测试

成功使用邮箱[email protected]发送邮件给[email protected]

图片[20]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

5.5. 其他

postfix、dovecot配置与企业A邮件服务器配置类似

如Telnet端口不通,请检查防火墙状态

6. Gophish

6.1. 下载

wget https://github.com/gophish/gophish/releases/download/v0.11.0/gophish-v0.11.0-linux-64bit.zip

图片[21]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.2. 解压

unzip gophish-v0.11.0-linux-64bit.zip

图片[22]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.3. config.json

修改配置文件

[root@mail gophish]# cat 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": ""
	}
}

6.4. 修改文件权限

chmod +x gophish

6.5. 访问

访问后台:https://ip:3333

图片[23]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

新版gophish,登录密码在终端中体现:

图片[24]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

首次登录需修改密码

图片[25]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

成功登录后台

图片[26]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.6. Users & Groups

添加用户组

图片[27]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.7. Sending Profiles

配置发件人信息,以实际情况填写

图片[28]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

可以发送测试邮件看是否可以正常发送邮件

图片[29]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

可以看到张三收到了gophish发来的测试邮件

图片[30]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.8. Landing Pages

设置钓鱼页面,此处支持一键导入,和人工手写HTML

Capture Submitted Data    捕获数据

Capture Passwords 捕获密码

Redirect to: 当受害者点击提交后跳转到的URL

图片[31]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科图片[32]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

查看钓鱼页面:

图片[33]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.9. Email Templates

配置邮件正文,此处可以使用其他邮箱写好邮件,导出eml格式后导入

图片[34]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

图片[35]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

复制eml文件后粘贴到此处

图片[36]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

此处导入出现乱码,改成直接填写内容:

图片[37]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

此处的完整HTML为:

<html>
<head>
	<title></title>
</head>
<body>
<p>您好:</p>

<p>近期检测到您在学者网教学科研协作单位平台的密码已过期, 请点击<a href="{{.URL}}">此链接</a>尽快修改密码,谢谢配合!</p>
{{.Tracker}}</body>
</html>

还可以增加附件:

图片[38]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

6.10. Campaigns

创建任务发送钓鱼邮件,可设置分批发送邮件(Launch Date)

图片[39]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

图片[40]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

管理页面,可以看到成功发出2封邮件。

图片[41]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

张三成功收到钓鱼邮件

图片[42]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

如果张三安全意识不足,点击链接打开,则会看到以下页面

图片[43]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

然后张三就真的输入了账号及密码,点击了login

图片[44]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

点完张三发现,怎么又让我登录!

没错,此时钓鱼已经完成,当张三点击login后,钓鱼页面自动跳转到真正的系统:

图片[45]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

再次刷新Gophish后台,! ! !  张三中招了!

图片[46]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

我们可以查看张三提交的数据

图片[47]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

图片[48]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

至此,钓鱼完成! 我们成功搞到了张三的密码!

图片[49]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

7. 利用场景

7.1. 攻防演习

正面攻击越来越难时,社会工程学攻击变得越来越流行。据某安全人员消息,今年的攻防演习中,他们队有接近70%的分数是靠社会工程学攻击获取到。而钓鱼邮件,则是最常用的手段之一。

7.2. 企业安全意识教育培训

企业安全团队计划开展公司全员安全意识教育培训,不妨先开展一次这样的钓鱼邮件测试,我想这是最好的培训素材,也能够让员工体会更深,对安全意识的理解更加深刻。

7.3. 红蓝对抗

当面对防守方互联网侧资产束手无策时,一封钓鱼邮件发过去,说不定可以带来惊喜呢?!一旦有人运行了钓鱼邮件中的附件,CS上线它不香吗?

7.4. 客户需求

客户需要对公司的人员进行钓鱼邮件测试,来检测员工的网络安全意识,避免在真正的攻击中因为钓鱼而使系统被攻陷。

8. 钓鱼模板

8.1. 重置密码

攻击者伪装成管理员,让受害者点击钓鱼邮件中的链接来修改各种各样的密码!如下:

图片[50]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

图片[51]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

图片[52]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.2. 账号解冻

攻击者伪装成系统管理员,让受害者点击钓鱼邮件中的链接解冻账号。

图片[53]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.3. 升级补丁

攻击者伪装成系统管理员,让受害者点击钓鱼邮件中的附件 升级补丁。

图片[54]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.4. 信息收集

利用疫情,让受害者点击钓鱼邮件中的链接反馈相关信息。

图片[55]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.5. 节假日礼包

攻击者伪装成公司员工,让受害者点击钓鱼邮件中的链接领取节假日大礼包。

8.6. 系统扩容

攻击者伪装成系统管理员,让受害者点击钓鱼邮件中的链接升级扩容(如扩容邮箱容量)。

8.7. 升级改造

图片[56]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.8. 登录异常

图片[57]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

8.9. 其他

图片[58]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

9. 防范

那遇到这样的钓鱼邮件应该如何防范?

以本文的钓鱼邮件为例,我们可以从以下几点去识别钓鱼邮件。

识别发件人的邮箱后缀是否是本公司邮箱后缀(如未开启SPF则公司邮箱后缀可以伪造)

右键查看链接地址是否为假冒的地址

工作中如果收到可疑邮件,应及时联系安全部门或相关责任部门,不要随意点击邮件中的链接、下载邮件中的附件、运行附件等危险操作!

图片[59]-Gophish钓鱼实践指南 – 作者:Jean-安全小百科

10. 免责声明

本文仅限技术分享,严禁用于非法用途,否则产生的一切后果自行承担。

11. 参考致谢

部分素材源自网络,侵删。

https://blog.51cto.com/u_12227558/2074095

https://xz.aliyun.com/t/5412

http://www.360doc.cn/mip/947685395.html

来源:freebuf.com 2021-06-05 00:54:59 by: Jean

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论