当年,APT这个词刚出现的时候震慑了一大群安全同学,“APT(Advanced Persistent Threat)是指高级持续性威胁”,这个专业定义让大家都无比崇拜。
随着逐步研究与接触,尤其是在处理过APT入侵后,慢慢明白,其实所谓apt攻击,就是一个黑客或黑客组织死心眼,一门心思要搞你。他们针对你使用专门的新技术,进来后耐心的收集信息,逃避检测长期潜伏,最终窃取最有价值的数据。其实这个过程和职业小偷一个道理,分析你家的基本情况,如作息时间、出门时间、资产情况、个人信息等,然后利用针对你家的专用信息,如你的生日,打开你家的密码门锁。进去不急着偷东西,而是装摄像头、监听器等,长期监视你的活动,获取银行密码、保险箱密码、各种找回密码的问题等等,最后再获取巨大的金钱利益。特点无非就是:
1、隐蔽性强,就是利用针对性的高技术或偏门的方法,让你的防御、检测措施生效;
2、耐心度高,长期潜伏不作恶,让你的行为检测无的放矢;
3、高速收割,和检测、拦截系统打时间差,在被阻止前窃取完成;
针对以上三点,当前针对apt攻击主要从三个维度发现
1、终端、网络行为异常;
2、大数据分析,终端行为偏移正常、行为聚类后的终端孤点等;
3、情报数据、情报关联数据,如历史用的病毒手法、md5、url、ip、域名和ip对应关系、历史关系等;
但其实这三个方案无论怎么检测发现,最终都只是发现疑似apt攻击,大量误报无法避免,如用户主动访问恶意url、用户今天无聊所以操作行为偏移正常逻辑等等。所以最终定性还是靠人工确定,说白了就是检测发现疑似被apt入侵的终端,安全人员还需要通过取证获取机器数据,最后分析取证后的数据才能最终定性是否存在apt入侵行为。
所以今天我们就来谈谈APT入侵的取证思路,先从整体看下:

如上就是apt入侵的通用流程,我们结合此流程,根据黑客入侵的路径和动作,探讨下要采集哪些数据或日志来分析我们的终端是不是正在被入侵或被入侵过了。
Google翻查各种工具,看的我一脸懵逼呀,各种介绍的高大上工具,什么Autopsy、Volatility、redline等一堆一堆的,本人才疏学浅,感觉要不就是专注于一个方面,如文件痕迹、内存分析等,要不就是各种基于已知的ioc分析,没找到任何一个完全适合windows入侵取证的工具。为了不至于无路可走,决定放飞思路,diy一下。
根据日常我们要取证的场景:
终端出现异常点,或就是看它不爽,我们怎么取证什么数据才能定性是否被黑客入侵?
取证工具简单化,不考虑那么多ui、关联数据等问题,终端我们可以接触,所以复杂需要关联的或图形化的,我们直接在机器看,不必须让取证工具变得那么复杂。
分析下,我们通过黑客入侵各个阶段的做法来看我们要取什么证据
进入/执行阶段
第一阶段:病毒文件或代码进入电脑(磁盘或内存)
a) 攻击难度低:合法自动进入
1) 钓鱼邮件的附件,利用自动下载附件的功能,也可诱导用户下载
2) Im工具等,利用自动下载,或诱导下载
3) U盘插入,利用摆渡u盘,诱导使用被恶意丢弃的u盘等
4) 浏览器访问,这个大量文件到临时目录,只不过难于执行起来
5) 共享盘挂载,这个虽然不是本地磁盘,但是还是可以直接运行的
6) 各种同步盘,如云和终端同步,多终端同步等,例如攻破云盘上传恶意文件后,文件自动同步到终端。
7) P2p下载方,修改资源块,替换正常块。(没遇到过,推测可行)
b) 攻击难度中:诱导用户直接下载(包括配置好自动下载地址)或拷贝病毒
1) 浏览器、下载工具等主动下载,多为捆绑病毒或替换正常软件(软件供应链),这也是当前感染病毒最多的渠道,互联网虽好,但也是到处有坑!
2) 应用软件,或应用软件组件更新等
3) 邮件、im、word等交流工具中的链接,诱导用户下载
4) U盘文件拷贝
c) 攻击难度高:漏洞利用进入
1) 浏览器漏洞,各种cve
2) 邮件漏洞,如打开触发漏洞的邮件本身,则会自动下载病毒(一个途径,笔者未遇到过)
3) 其他软件漏洞,这就比较广了,主要是各种常用软件,尤其是提供输入、网络接受数据等功能的,例如发送畸形包,让某软件下载病毒文件。
第二阶段:病毒文件或代码变为内存中可运行代码
a) 诱导用户主动运行
1) Office各种宏,利用自动宏或诱导用户启动宏拉取恶意文件或代码
2) 社工诱导,如im聊天诱导、邮件诱导、诱惑文件名诱导等等
3) 冒充正常文件名
b) U盘自动运行
1) 这个就不解释了,这也是u盘被利用的原因,插入即可完成进入和执行两步,高效快捷!
c) 漏洞自动运行
1) 这个主要是代码类,漏洞利用直接注入shellcode,修改ip运行。
综上,在该阶段我们要获取
1、邮件附件情况,包括下载和执行
2、im接受文件情况,包括下载和执行
3、u盘自动运行情况、拷贝情况
4、office宏的执行情况
5、浏览器临时文件情况
6、共享挂载情况
7、同步盘情况
8、p2p下载情况
9、浏览器、下载工具等下载情况
10、应用软件的自动更新和更新配置情况
11、浏览器、邮件、其他软件等的漏洞情况和漏洞触发(尽可能)情况
|