0x00 前言
上周参与了某金融行业内部的一次红蓝对抗,整个攻防过程就两个字 艰难 ,所有资产看了一遍,无fastjson、shiro、weblogic,太难了,尝试钓鱼攻击也是失败,钓鱼邮件发送后几分钟全公司发出通告,攻防过程中,也有同事被防守方不幸给溯源到。因为敏感原因,全文不带任何一张图片。下面就是对整个过程的一个总结复盘以及一些小技巧。
0x01 资产梳理
-
子域名收集(根据给出的域名,去收集子域名,因为主站基本防护比较严,我们一般选择从子站打进去)
-
C段(域名对应IP的C段,有可能C段中很多不属于目标资产,重点梳理拥有资产)
-
端口识别(根据目标网站开放的端口去尝试可用的利用点)
-
指纹识别(中间件版本,根据已知的中间件版本去尝试可以利用的已知漏洞)
-
边缘资产收集(对目标资产手机号、用户名、邮箱账号的收集,用于钓鱼攻击以及弱口令爆破等等)
0x02 攻防对抗
根据网站功能点分为两类:
web漏洞:
-
文件上传(自行做好webshell的免杀处理,可以先上传一个不是木马的文件去判断能不能解析文件)
-
SQL注入(需要绕WAF)
-
中间件漏洞(shiro、weblogic、fastjson等等一些已知的中间件漏洞)
-
框架漏洞(根据已知框架的版本去尝试)
-
XSS(用于尝试去打cookie,成功率很低)
-
源码泄漏(几率很小,如果拿到源码,进行代码审计,审计出的漏洞便于后期的利用)
-
0day(有条件的直接使用0day打,没有就常规漏洞去打)
逻辑漏洞
-
验证码劫持
-
短信轰炸
-
登陆口(根据返回信息,去遍历用户,用于后面的弱口令爆破)
0x03 钓鱼攻击
-
钓鱼邮箱的收集(我们根据目标企业的名称,可以去脉脉搜索企业名称,可以得到一些企业员工的姓名,然后根据得到的姓名去制作成字典(比如王强,那么他的账号就有可能是wangqiang、wangq、wq等等),如果没有用户名,我们可以根据返回信息进行一个用户名枚举,自行准备一个脚本即可。)
-
钓鱼平台的搭建(我们要有一台vps,其次是购买域名(这里我们根据目标的域名去选择性的购买)、域名后缀(和目标域名不要差太多,达到一个迷惑的效果),然后我们去分析目标系统的邮件构造,然后发信)
-
钓鱼的目标(针对HR的钓鱼,针对普通员工的钓鱼,邮件内容可以自行寻找模板进行构造)
-
钓鱼攻击的方式(附件、伪装链接、微信扫码、自解压木马、office宏)
-
关于木马免杀(不建议使用开源加载器,建议自写shellcode加载器,建议使用虚拟机编译,编译时自行去掉调试信息,加载器起码要过国内全部杀软)
-
流量问题(为了应对安全设备对流量的检测,自行对Cobalt Strike的特征以及流量进行修改和加密)
小技巧:我们可以先发一封关于勒索病毒预警的钓鱼邮件,如果被对方识别出来,那么我们可以发送第二封关于勒索病毒预警钓鱼邮件的通告,这样钓鱼成功的几率会大大增加。
0x04 溯源
这里举一下,对抗期间被溯源的例子,但是没溯源出详细信息
对HR进行了钓鱼攻击,HR安全意识较高,直接电话通报给运维部蓝方成员,蓝方第一时间对全公司发出了钓鱼邮件通告,并对钓鱼邮件内的附件进行了逆向分析,通过逆向分析得出附件使用GO语言开发的shellcode加载器,对应开源项目go-shellcode,并在分析过程中拿到攻击者编译文件的绝对路径(此处攻击者说在编译过程中已经去掉了调试信息,应该是在给文件加上图标时,指定了系统路径,导致了被溯源)成功得到攻击ID,后续根据ID去溯源,溯源到了其他人,没有溯源到攻击者真实信息。
切记测试过程,不要使用自己的任何账号,各类社交平台的隐私能删就删,能关就关
0x05 防溯源
我们需要具备以下几种
-
虚拟机(跳板机,用于攻击和编译木马)
-
云服务器(选择匿名购买服务器,可以去淘宝找代买,减少被溯源几率,这里推荐vultr)
-
接码平台(各类验证码接码平台,或者借用朋友的,千万别用自己的账号,)
-
代理池(有条件的可以使用代理池,毕竟给的VPN肯定不是那么好用)
-
物联网卡(有最好了,没有就用代理池吧)
-
各类社交平台的隐私设置(能删就删,能关就关)
-
工具编译(一定要用虚拟机编译,一定要去掉调试信息,特别是VS和GOlang编译)
0x06 总结
-
重点还是信息收集,信息收集的深度决定你后面的攻击面
-
重点关注fastjson、shiro、weblogic,主要靠这三种拿分
-
webshell再使用前一定要免杀,注意平时自己多收集或者编写一些免杀shell
-
关于工具,各类开源工具的特征都被设备盯得死死的,条件允许的情况下,建议自写工具或者二开魔改
-
注意多用跳板机进行攻击,编译工具时,一定要注意去掉调试信息
-
提前准备好匿名购买的服务器,提前部署Cobalt stirke,并做好相应的流量加密及特征修改,提前准备好免杀的shellcode加载器(起码要过国内全部杀软)