记一次钓鱼邮件演练

admin 2022年7月23日20:23:40评论564 views字数 3162阅读10分32秒阅读模式

前段时间参加了一次攻防演练,其中有个需求,需要对员工进行钓鱼测试,于是就有了这篇文章。

一、 方案设计

经过一段时间的试坑,发现目标的邮件网关很强大,想用已有的公共邮箱再伪造发件人不可行,最终选择的方案是自建邮件服务器再配合钓鱼网站获取密码。

VPS服务商选择了vultr,虽然默认情况它也会封闭25端口,但提交工单说明自身情况就会帮你打开,这里需要提前准备,因为时差关系,差不多两个工作日才能走完工单流程。

域名方面直接去GoDaddy买了一个与目标近似的域名,目标域名为xxxx.com.cn,我买了一个xxxx.site,只用了十多块。

最终方案:

  • VPS:vultr

  • 系统:Centos

  • 钓鱼平台:gophish

  • 域名:xxxx.site

  • 邮件服务器:ewomail

  • 话术:伪装成该公司技术中心人员,称公司邮箱进行维护,换了新地址,要求他们尽快登录并反馈问题

二、环境搭建

1. ewomail

VPS的镜像选择Centos,记得选择没有SELinux的版本:

记一次钓鱼邮件演练

这里要注意,Centos有个默认的防火墙需要关闭,否则无法正常访问后面的服务。

ewomail项目地址如下:

https://gitee.com/laowu5/EwoMail

下载好源码后进入EwoMail/install目录,执行:

1./start.sh xxxx.site

安装时需要域名,提前选好买下。

/etc/hosts中添加解析:

1127.0.0.1   mail.xxxx.site smtp.xxxx.site imap.xxxx.site

之后就可以访问ewomail的管理后台了,地址:http://ip:8010,默认账号密码为admin/ewomail123,登录之后修改掉。

进来之后添加邮箱域名:

记一次钓鱼邮件演练

接着就可以添加邮箱了,这里根据钓鱼的话术来确定:

记一次钓鱼邮件演练

这里的guoming就是搜集到的一名技术中心员工。

添加完毕后就可以去邮箱登录地址发件测试了:http://ip:8000

2. gophish

gophish项目地址如下:

https://github.com/gophish/gophish

选择对应的版本并下载,进入目录,config.json是gophish的配置文件:

 1{
2        "admin_server": {
3                "listen_url""0.0.0.0:3333",
4                "use_tls"true,
5                "cert_path""gophish_admin.crt",
6                "key_path""gophish_admin.key"
7        },
8        "phish_server": {
9                "listen_url""0.0.0.0:80",
10                "use_tls"false,
11                "cert_path""example.crt",
12                "key_path""example.key"
13        },
14        "db_name""sqlite3",
15        "db_path""gophish.db",
16        "migrations_prefix""db/db_",
17        "contact_address""",
18        "logging": {
19                "filename""",
20                "level"""
21        }
22}

admin_server是管理入口,phish_server是钓鱼网站回传数据的入口,后者最好跟要伪造的目标网站保持一致,迷惑性更强。

修改完毕后,执行./gophish,第一次运行时会输出管理员用户admin的密码,登录后可以修改,访问地址是https://ip:3333/

记一次钓鱼邮件演练gophish就搭建完成了。

3. 域名

GoDaddy的DNS解析对国内用户生效很慢,所以这里选择把DNS服务商换为国内的DNSPod:

记一次钓鱼邮件演练

A记录指向VPS的IP,三个CNAME都指向mail.xxx.site

4. 钓鱼网站

这里我用HTTrack把目标网站克隆了一份下来,但是又遇到一个问题就是gophish导入钓鱼网站模板时需要一个整体的HTML文件,最后囚了公司前端很久让他帮我弄好了。

要想让钓鱼网站发送的数据能被gophish接收到,只需要确保表单能正常提交即可,目标地址留空:

1<form action="" method="POST">
2    <input name="username" type="text" placeholder="username" />
3    <input name="password" type="password" placeholder="password" />
4    <input type="submit" value="Submit" />
5</form>

5. 发件准备

现在做发件前的准备,登录gophish,首先在Sending Profiles中添加一个新的发送配置:

记一次钓鱼邮件演练

UsernamePassword与之前创建的邮箱账号保持一致。

随后来到Landing Pages创建一个新的钓鱼网站模板:

记一次钓鱼邮件演练

最下面的Redirect to可以让其输入数据后跳转到真正的邮箱登录页面,用户也只会以为自己刚刚输错了或者网站有点小问题。

接着在 Email Templates处新建一个钓鱼邮件模板:

记一次钓鱼邮件演练

{{.URL}}参数可以自动替换为钓鱼网站的URL,邮件模板可以使用HTML来达到更逼真的效果。

再来到Users & Groups导入目标的邮件,就可以进入Campaigns开始发件了:

记一次钓鱼邮件演练

Send Emails By这个参数可以控制发件的频率,防止被邮件网关封禁,用法是:例如现在有100封邮件需要发,任务开始运行的时间是下午1:00,设置Send Emails By为下午1:50,就代表在这段时间内发完100封,即每分钟两封。

三、效果

对方的邮件网关实在强大,我们发过去的邮件其实都进了垃圾箱,还被标注了疑似钓鱼邮件,但防呆不防傻,依然有人上钩:

记一次钓鱼邮件演练

记一次钓鱼邮件演练

四、总结

  • 钓鱼邮件的限制太多,光邮件网关就足够头疼了,还是加微信发exe实在。

  • 钓鱼的基础设施需要提前准备,因为这次演练总时长一周,但到了第四天才开始发送钓鱼邮件。

  • 自动化才是王道。

  • 请严格遵守网络安全法相关条例!此分享主要用于交流学习,若用于其他用途,一切后果自付。



-END-

记一次钓鱼邮件演练如果本文对您有帮助,来个点赞在看就是对我们莫大的鼓励。记一次钓鱼邮件演练



  推荐关注:





记一次钓鱼邮件演练
弱口令安全实验室正式成立于2022年1月,是思而听(山东)网络科技有限公司旗下的网络安全研究团队,专注于网络攻防技术渗透测试硬件安全安全开发网络安全赛事以及网安线上教育领域研究几大板块。
团队社群氛围浓厚,同时背靠思而听(山东)网络科技有限公司旗下的“知行网络安全教育平台”作为社区,容纳同好在安全领域不断进行技术提升以及技术分享,从而形成良好闭环。

团队全员均持CISP-PTE(注册信息安全专业人员-渗透测试工程师)认证,积极参与着各类网络安全赛事并屡获佳绩,同时多次高水准的完成了国家级、省部级攻防演习活动以及相关重报工作,均得到甲方的一致青睐与肯定。

欢迎对网络安全技术感兴趣的你来加入我们实验室,可在公众号内依次点击【关于我们】-【加入我们】来获取联系方式~




原文始发于微信公众号(弱口令安全实验室):记一次钓鱼邮件演练

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月23日20:23:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次钓鱼邮件演练https://cn-sec.com/archives/1195470.html

发表评论

匿名网友 填写信息