实战|记一次企业钓鱼演练

华盟原创文章投稿奖励计划

实战|记一次企业钓鱼演练

前言

钓鱼演练伊始:公司要求做一次钓鱼演练,辗转后任务落我身上,两眼一抹黑,内心苟苟且且,但一想到今年七月份马上发布的RTX40系,我这等等党铁定必然绝对是要剁手,想到这儿,我这个打工人立马就打了鸡血动力十足。


兵马未动,粮草先行--→先有个大致思路再行动

一、思路与环境

着手去做这件事时候思路很乱,为此也是踩了不少坑,问了很多师傅(得重点谢谢志强大佬),看了一些文章,然后水了这篇文,错误就不写了,踩得坑会提示一下。

思路:

  1. 钓鱼演练核心是gophish,此平台联动邮件服务器可以做到对邮件的统筹下发,如果邮件中包含钓鱼链接,他还能够锁定个人并跟踪监测到该员工:“是否查看邮件”,“是否点击链接”,“是否输入数据”,并且图形化得展示出来,非常直观,平台需要对外可访问,涉及beian问题,所以还需要一台外网vps。
  2. 钓鱼一般分两种,水坑钓鱼(广撒网),鱼叉钓鱼(精准垂钓),不管怎么钓,常用的方式就是邮件钓鱼,涉及到发邮件,我们一般可以采用自己搭建邮件服务器,或者用在线发邮件,在线服务为了防止垃圾邮件泛滥会限制每日发送,大约一天上限30封左右,每发五封也会有一个冷却cd,有时候邮件会丢失,所以当你面对一个大群体时候请直接选择搭服务器。
  3. 搭建邮件服务器时候需要准备一个近似的域名,比如百度邮箱可能是xxx@baidu.com,你就申请个paidu.com,或者biadu.com,域名申请可以用Namesilo(便宜),godaddy(贵),或可以用Freenom(免费),申请方法可以自己搜一下。
  4. 国内外很多厂商都把SMTP对应的25端口毙掉了,也是为了限制垃圾邮件泛滥,我这里用一台虚拟机搭建邮件服务器,再通过frp把25映射到vps上,这样我们邮件服务器问题就解决了

环境

  1. 一台国外的vps,我这边选用了Ubuntu
  2. 一台新的centos虚拟机,因为ewomail邮件服务器要求搭建环境干净。
  3. 工具gophish(https://github.com/gophish/gophish)、ewomail邮件服务器(https://github.com/gyxuehu/EwoMailfrp(https://github.com/fatedier/frp)mip22(https://github.com/makdosx/mip22)
  4. 域名一枚,用了godaddy

二、工具安装与调试

1.gophish搭建

下载解压缩,解压缩到当前一个叫gophish文件夹中

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

给予文件777权限,cd进目录后我们可以看到config.json,这个是gophish配置文件,chmod -R 777 gophishcd gophishls
实战|记一次企业钓鱼演练
解读一下配置文件,gophish会主起两个端口,一个3333是后台管理端口,我们把127.0.0.1改成0.0.0.0方便我们从公网发起访问,第二个端口为80,我这边因为还起了其他服务怕端口有冲突,所以改成了0.0.0.0:8888。大家改配置之前可以先netstat

-anp 看下端口是否冲突,否则启动时候会报错
vim config.json

实战|记一次企业钓鱼演练启动gophish,运行gophish,运行后注意运行界面会显示一个password参数,是后台登录密码,默认账号是admin,此时我们访问:https://服务器ip:3333 /注意是https/

./gophish

如图,填写密码即可登实战|记一次企业钓鱼演练随后我们继续访问另一个页面:https://服务器ip:80 ,注意依旧是https,如果配置文件改了端口,就按照改了的来,如下图显示即为成功。
实战|记一次企业钓鱼演练

到此,我们的gophish钓鱼平台即搭建完毕,具体操作使用后续讲解


2.ewomail邮件服务器搭建

环境按照ewomail要求选择了centos,因为记忆中本地没有centos镜像,跑到centos官方下载镜像源,看到很多国内下载节点,一开始很欣慰,但实际测试下来发现最快的清华源也就1.2m/s,一想到我这千兆网,憋屈,龟速了15分钟后,打开everything搜了下centos,!我*....实战|记一次企业钓鱼演练很好,我们先装一下centos,导入vm启动,建议内存给2g以上,这里我推荐大家选一下GUI,顺路点上邮件服务器功能实战|记一次企业钓鱼演练实战|记一次企业钓鱼演练

磁盘可以自行配一下,其他默认就好了,安装好后我这边遇到一个问题就是ping主机不通但是反之可以的问题,且没法访问外网,关了主机防火墙后可以ping通了,但是还是没法访问外网,我只好给他设了一个静态地址,便可以通外网了,具体操作如下:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

/修改之前建议保留一份原始配置,具体配置文件如下/

TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="static"DEFROUTE="yes"IPV4_FAILURE_FATAL="no"IPV6INIT="yes"IPV6_AUTOCONF="yes"IPV6_DEFROUTE="yes"IPV6_FAILURE_FATAL="no"IPV6_ADDR_GEN_MODE="stable-privacy"NAME="ens33"UUID="1f39ba1e-e095-48dd-ab0e-81cf76f2103f"DEVICE="ens33"ONBOOT="yes"IPADDR=192.168.31.213 /*静态地址*/NETMASK=255.255.255.0GATEWAY=192.168.31.1 /*网关,即所使用的网卡地址*/DNS1=8.8.8.8ZONE=public~

实战|记一次企业钓鱼演练实战|记一次企业钓鱼演练

关闭selinuxvi /etc/sysconfig/selinuxSELINUX=enforcing 改为 SELINUX=disabled


实战|记一次企业钓鱼演练安装伊始

yum -y install gitcd /rootgit clone https://gitee.com/laowu5/EwoMail.gitchmod -R 777 EwoMailcd /root/EwoMail/install

/这里安装会用到域名,作用是邮件服务器后缀,题外话,如果是内网的话,大可不必再买域名,搭建个dns服务器就可以,外网的话,不申请也行,可以做到发出去,但是没办法接收/

sh ./start.sh xxxx.com

我这儿报错:installation failed,dovecot is installed,查明原因是因为已安装的dovecot导致冲突,解决办法比较简单直接干掉就好了:

yum -y remove dovecot.x86_64

ps:如果在执行安装时报错 ewomail-lamp install failed 解决办法:./start.sh xxx.com -f
实战|记一次企业钓鱼演练再跑一次安装程序,需要敲个 y,大概五七分钟,看了一下以太坊降没降,安装就好了,显示红框就是成功了。实战|记一次企业钓鱼演练简单总结一下ewomail的一些服务页

访问地址(将IP更换成你的IP即可)
邮箱管理后台:http://IP:8010 (默认账号admin,密码ewomail123)
ssl端口 https://IP:7010web邮件系统:http://IP:8000ssl端口 https://IP:7000域名解析完成后,可以用子域名访问,例如下面
http://mail.xxx.com:8000 (http)https://mail.xxx.com:7000 (ssl)web数据库管理页面:https://IP:8020/

/查看安装的域名和数据库密码:cat /ewomail/config.ini /
实战|记一次企业钓鱼演练到这一步时,安装已经完成了,还有一个事情要做,添加个解析,把下边那一条加进去,这里我认为vps上也可以加一下

vim /etc/hosts
127.0.0.1 mail.xxxx.com smtp.xxxx.com imap.xxxx.com

我们访问一下后台,默认账号密码admin/ewomail123,进去先改一下密码。实战|记一次企业钓鱼演练已经绑定好后缀域名了,我们首先添加邮箱用户,这块可以自己看着起名,admin@xxx.com,或者xiaowang@xxx.com,设置好账号密码后可以去http://IP:8000登录看看,到此我们的搭建任务就结束了,联动调试后续讲解。实战|记一次企业钓鱼演练
有时候我们搭建好了发现需要换域名的办法,需要替换两个地方,第一个是web管理平台绑定的域名,第二个是配置文件如下图,马赛克部分便是需要改的域名:

vim /ewomail/www/ewomail-admin/core/config.php

实战|记一次企业钓鱼演练


3. mip22搭建

先简单介绍一下mip22这个工具,集钓鱼网页、邮件服务、隧道技术于一身,通过网页访问可以捕获不少东西,是一套完整的网页钓鱼工具,但是缺少一点图形化展示,数据结果不够直观,不适合做演练,也因为我菜(根本原因)。这里我们主要是用他的钓鱼页面,可以直接套进gophish使用。
实战|记一次企业钓鱼演练好的,话不多说我们直接上手

sudo su cd ~git clone https://github.com/makdosx/mip22.gitchmod -R 777 mip22 cd mip22bash mip22.sh

启动后如图,【1】Attack Default:是他的内置的钓鱼页面,九十多个,网页惟妙惟肖,可以直接用于钓鱼,而且最重要的整体格式都是<form method="post".....><....type="submit"....>...,因为gophish只有在这种样式下才能获取到钓鱼网页中的数据

/*不得不说一下我的血泪史,我一开始用gophish克隆网页,无数网站中挑了一个合适的网页克隆,然后调完内容调样式,有的还能用他的样式,有的还得自己写,调完样式换图片,最后咔咔上线,点击上传发现没数据,师从百度,一问发现是表单问题,行我改,改完发现以前的样式不能用了,还得从头再来,我 **。

实战|记一次企业钓鱼演练

我们选“1”,进去后挑一个自己中意的,不知道选中的是什么样式对吧,请看下一步
实战|记一次企业钓鱼演练哈无所谓中意,可以随便选一个,回车,这时候需要注意一下,选好克隆网页后之后,他会让你选一下是本地访问(localhost),还是对外(localhostrun),或者cf(cloudflared)还有ngrok,我们选第二个,他生成的链接是一个临时链接。这边需要注意下,有时候选择完没有生成链接的话,需要在你敲”2“之后,手动敲一个yes ,再回车,原因可能是有的字段没显示出来,操作如图

生成链接成功
实战|记一次企业钓鱼演练访问测试,成功抓到访问信息,IP地址,设备信息等,如果你属于提交数据的话,也会显示出来,然后会自动跳转到真的官网,数据会记录在两个txt文本中。实战|记一次企业钓鱼演练

我们的搭建与调试就结束了


三、联动与利用

1.邮件服务器与gophish

邮件服务器是部署在内网的,我们想让他跑起来需要映射出去,这里我们用到frp去做一个映射,需要在vps与虚拟机上都安装,代码如下:

wget https://github.com/fatedier/frp/releases/download/v0.42.0/frp_0.42.0_linux_amd64.tar.gztar zxvf frp_0.42.0_linux_amd64.tar.gz

frp分客户端和服务端,vps是服务端server,虚拟机是客户端client。双方需要配置的文件分别是frps.ini,frpc.ini,我们先配一下服务端,比较简单。

vim frp_0.42.0_linux_amd64/frps.ini
[common]bind_addr = 0.0.0.0bind_port = 7000bind_udp_port = 7001kcp_bind_port = 7000vhost_http_port = 80vhost_https_port = 443dashboard_addr = 0.0.0.0dashboard_port = 7777 /*管理页面*/dashboard_user = admindashboard_pwd = !@#$QWER....

实战|记一次企业钓鱼演练

启动服务端服务,调试完成后可以nohup ./frps -c frps.ini & 后台运行。

./frps -c frps.ini

客户端配置, 各位在配置映射端口时候,建议netstat -anp先查一下你的vps端口使用,别冲突了,然后开始配置:

[common]server_addr = 你的vpsserver_port = 7000[smtp]type = tcplocal_ip = 127.0.0.1local_port = 25remote_port = 9999 /*大于1000的端口不冲突的都可以*/[web1]type = httplocal_ip = 127.0.0.1local_port = 8010remote_port = 8010custom_domains=mail.xxx.com:8010 /*邮件服务器,xxx.com是你的邮件服务器域名*/[web2]type = httplocal_ip = 127.0.0.1local_port = 8000remote_port = 8000custom_domains=mail.xxx.com:8000

实战|记一次企业钓鱼演练
启动服务端,调试完成后可以nohup ./frpc -c frpc.ini & 后台运行.

./frpc -c frpc.ini

6.这时候我们已经可以通过vps的IP去访问邮件服务器了,可以尝试VPSIP:8000/8010,测试访问,可以直接登陆进去给自己的qq邮箱发邮件测试一下,域名做dns解析后,访问的时候便可以用域名访问。接下来我们就需要配置gophish了,配置前我先简介一下涉及到的功能模块。实战|记一次企业钓鱼演练
我们先看发送配置,一些重要的点:from中:”别名xxx@xxx.com“写法是带别名的写法,X-mailer 是发送端名字,改一下可能会绕过一些拦截规则,host便是邮件服务器映射的服务器和端口,如果dns解析了也可以写smtp.xxx.com:端口。
配置完可以点左下角测试发送邮件。然后我们来配置一下文案,有一些需要注意的点 :{{.URL}}可以自动替换为钓鱼链接。
打对勾处会自动添加一个图片,当打开邮件时候会自动加载图片用以反馈邮件状态,outlook禁止图片加载,可能会影响数据读取。需要做超链接的话,可以在其他邮件客户端设置一个包含超链接的邮件,再导入gophish,平台会自动把超链接转换为钓鱼网页,导入方法:把导出的eml文件以文本打开,复制文本到ImportEmail,之后想修改文案的话,在HTML模式下修改即可实战|记一次企业钓鱼演练

2.mip22与gophish

mip22功能刚刚简单介绍了,我主要是用它自带的网页,减少工作量,生成网页之后复制链接到gophish这里直接克隆一下,如图实战|记一次企业钓鱼演练克隆好之后会出现在你的html框中,然后自定义改一些格式还有css,加一些表单也都可以,我这里不演示了,我们可以通过点击source来查看修改后的页面,这两个框记得打对勾,分别是抓取数据和抓取密码,这些抓取的数据最终都会出现在数据面板中实战|记一次企业钓鱼演练

3.整合利用

事已至此,我们只差小白兔来上钩了,新建组,在组中添加小白兔邮箱,它自带导入模板,如果数量大,可以用导入实战|记一次企业钓鱼演练一切准备好,我们便可以钓鱼了,新建事件,配置一下我们的参数就启动吧,图中少写一个字,什么时候发送完。不想截图改了,手动狗头。
实战|记一次企业钓鱼演练

4.猎杀时刻

一个字,等。gophish在发送邮件时候,会给每一个邮箱用户启一个rid,rid是唯一的,所以谁点击,谁上传,都可以追踪到,最后锁定到安全意识差的小白兔身上。
实战|记一次企业钓鱼演练


总结

还是有点问题没考虑好,就是发送邮件时候,没考虑拦截机制,解决办法,邮件服务器映射IP还有邮箱名多换几个,发送数量匀一下,发送速度调慢,gophish在新建事件时候配合send email by,发快了容易被拦截。


声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后果.

作者:小王童鞋原文链接:https://xz.aliyun.com/t/11400

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文


END

实战|记一次企业钓鱼演练

本文来源https://xz.aliyun.com/t/11400,经授权后由华盟君发布,观点不代表华盟网的立场,转载请联系原作者。

发表评论