对抗APT应急实录|解密“海莲花”组织,还原攻击真相
2022-7-22 13:11:47 Author: 微步在线研究响应中心(查看原文) 阅读量:44 收藏

点击蓝字

关注我们   
多年前我怀揣着梦想进入网络安全行业,不久后就听到了一个让安全从业者耳熟能详的名字——APT埋头苦干、深挖黑客入侵痕迹的我,相比于身边的渗透大牛们,显得些许不合群。
网安圈子里的人好大一部分爱好渗透啊、入侵啊,除了金钱上面的收获以外(据统计自2016年金钱就已不再是黑客攻击的第一因素),那种寻找漏洞、操控机器的乐趣怕是大部分人爱好的原因。然而,相比于渗透攻击,我更偏爱于应急响应,调查破坏的痕迹、抓住黑客的小尾巴才是我真正热爱的。
某个温暖的下午,一阵急促的电话铃声打断了我的思绪,沟通片刻大致了解了事件背景:某客户今日上架了我们的全流量设备,刚刚接通流量就发现了紧急告警,让我抓紧去现场看看。
     (本文主要从应急响应角度阐述海莲花事件案例及相应排查分析技巧,不涉及外部溯源及样本分析)

01 初现端倪

当我看到这个告警的时候,我就知道事情不像我想的那么简单。ps: 最开始的图找不到了。。。

海莲花团伙,属于东南亚方向的APT组织,可能有着军方背景的他们,在微步持续追踪的众多APT组织中,他们并不是技术背景最强的一个,但是是最持久的一个。该团伙在2012年就开始长期针对我国各类关键领域进行攻击入侵,迄今为止已经至少是第11个年头了,当年的小屁孩都已经会打酱油了,他们还在持续攻击着。

据用户描述,产品上架之后就有机器不断告警,谈话间已经陆陆续续七八台告警了,而且告警间隔基本相同,从这点上就可以肯定是失陷回连了。

直觉告诉我,失陷的绝对不止这几台,海莲花每次出现,都会抓获大量肉鸡,用完全“白”的地址进行回连,由于完全正常的地址加上全加密的流量,让APT的排查难度骤增。

02 今昔之感

在前去应急的路上,我思索了一下他们的“事迹”。借用微步情报局的一张图可以大致描述他们的过往。

        还有他们惯用的入侵手法:鱼叉、水坑、社工、蹭热点等等。

然而自2020年开始,海莲花逐渐开启弃用一向惯用的鱼叉式钓鱼入侵,转向对网站的漏洞进行长期的跟踪挖掘,甚至近期还有发现攻击上游供应链用于投毒的情况。
紧接着就是海莲花常见的“白加黑”利用模式,再结合各种迷惑方式:花指令、加壳、组合rar自解压、组合宏病毒等等。

好似他们无所不用其极,不达目的决不罢休。诚然,在国外的追踪分析中海莲花的确像是一群勤勤恳恳的上班族一般,有着规律的作息、有序的章法......

“到了”,司机师傅的一声招呼将我从思绪中喊醒,抬头一看已经到达了客户现场,要开始现场应急了。

图片来源于网络,侵权联系删除

03 抽丝剥茧

根据流量检测设备的监控显示,内网存在主动外联访问海莲花域名或IP的机器,并且TDP通过对流量中海莲花的特征行为进行了关联检索,又抓出了不少失陷机器。

协调客户上机取证后,对其中一台主机进行现场排查,首先使用微步在线威胁检索工具进行网络定位,确定发起进程。

微步在线威胁检索工具,可对快速检索内存中存在回连域名或IP的进程,方便应急响应中快速定位恶意程序

发现为svchost进程回连恶意域名后,猜测各种可能性:1. 服务启动;  2. 篡改原始程序;使用微软官方的Autoruns进行服务排查。

果然在计划任务中发现了非用户使用软件创建的计划任务。其实这里有个小细节,Autoruns是可以检查软件的数字签名证书的,当检测到不含证书的软件时会显示出粉红色的底色,这里并没有显示是因为海莲花使用了白加黑手段,利用正常的白文件加载他们自己恶意的dll从而实现的。

定位进程路径后发现目录下存在的恶意dll文件,并且海莲花巧妙的将文件修改时间全部调整为当前目录正常文件的修改时间。

当我庆幸我找到木马时,不禁疑惑这种程度的木马杀毒软件很难检测么?顺便看了一下杀软,才发现木马植入路径为杀软的白名单路径。

其实海莲花的木马并不难以查杀,很多杀软都可以检测出来,但是他们善用各种不高端但实用的隐藏方式,在本次案例中海莲花就将恶意木马放入用户场景通用的白名单目录下,导致杀软定时扫描时根本发现不了。

04 迷雾消散

锁定木马程序后,继续追踪相关痕迹及日志。在计划任务日志中发现了计划任务具体的创建时间,可推算出海莲花入侵时间为2021年8月19日 15:36:10。

就算黑客将日志清除,在创建计划任务的时候会在C:\Windows\System32\Tasks\或C:\Windows\SysWOW64\Tasks产生以计划任务命名的文件,创建时间即是入侵时间。

继续分析系统日志,在安全日志中发现可疑账户登录行为,登录方式采用NTLMv2进行认证,但该机器用户并不会也没有需求登录目标机器,可以判断为PTH横移入侵。

     

通过上面的分析可得出结论,海莲花通过内网横移入侵到这台机器后添加了计划任务并下发了恶意木马。

 图片来源于网络,侵权联系删除

然鹅你以为就这样结束了?并没有。

单独一台失陷机器的溯源结果及其有限,后续分析中发现某软件有记录进程功能,根据入侵时间前后排查日志发现海莲花使用sc命令远程配置文件,能使用sc命令控制远端服务器,证明域控大概率被拿下了。
      紧接着就发现海莲花使用certutil命令进行内网中下载文件进行横向移动。
此处再添一个小技巧,certutil远程下载方式会在
%USERPROFILE%\AppData\LocalLow\Microsoft\CryptnetUrlCache\
等路径下存在下发缓存,可以直接使用记事本查看。

      继续分析下去,发现svchost监听了异常端口8901。

使用netsh interface portproxy show all查看所有端口转发情况,果然发现将445端口转发到了8901端口,用于隐匿行踪。

05 来龙去脉

根据回连地址及网络访问关系,我们通过对全部终端扫描,最终梳理出十多个的回连跳板、数百台失陷受控主机,用户内网基本完全处于受监控状态。
从流量中持续分析,最严重的问题莫过于从流量中发现了一个公网云盘地址,从关联分析中可以确认,是海莲花组织用于回传获取的数据信息的,而且流量全程TLS加密,无法获取到泄露情况。
万幸的是,用户重要数据网络与办公网完全物理隔离,那个网络还没有被攻入痕迹。
汇总上面所有发现,串联起来海莲花的入侵流程为下图:
思考整个应急流程,其实不难发现,APT组织的攻击手法也并没有那么高端,并没有用0day满天飞的场景出现,更多的是利用安全意识的薄弱,1day或公开漏洞进行攻击。

相比于现在国内的各类攻防演练轰轰烈烈的0day互攻场景,APT组织这种“润物细无声”的持续渗透,更加难以察觉发现。

06  后记

后续我对其中一百余台失陷主机进行数据统计分析,可以看到海莲花从7月份开始入侵,在第二个月就达到峰值,也就是短时间内拿下了大量内网主机,符合APT常见的入侵曲线。

相比于入侵时间统计,我更看重活跃时长统计,经过统计,海莲花对于失陷机器的持久维权需求在下降,当然有部分是由于后期封堵问题导致,但有不少是海莲花主动放弃的,推断为释放边缘资产以便更好的隐藏自身。

       因此,面对如此狡猾的APT组织,微步在线应急响应团队将进行持续地追踪与探究,坚定维护信息安全。

- END -

1. 内容转载,请微信后台留言:转载+转载平台
2. 内容引用,请注明出处:以上内容引自公众号“微步在线应急响应团队”
转发,点赞,在看,安排一下?

文章来源: http://mp.weixin.qq.com/s?__biz=Mzg5MTc3ODY4Mw==&mid=2247494556&idx=1&sn=9c3d968d005f638a9184adfcad89b722&chksm=cfca8888f8bd019ea2db39920bc73d34eac5ad1979aaf0e9af46a8f1c53e7e021e7e3a11ef93#rd
如有侵权请联系:admin#unsafe.sh