网络攻击追踪溯源
序
随着网络技术的不断发展,信息安全已经成为社会越来越重视的问题,一些不法分子利用网络漏洞窃取用户的重要信息。攻击者会向目标主机发送特定的攻击数据包或执行恶意行为。
如果能追踪这些攻击数据包的来源,定位攻击者的真实位置,受害主机不但可以采用应对措施,如在合适位置过滤攻击数据包,而且可以对攻击者采取法律手段。
而网络攻击追踪溯源利用各种手段追踪网络攻击的发起者。相关技术提供了定位攻击源和攻击路径,针对性反制或抑制网络攻击,以及网络取证能力,其在网络安全领域具有非常重要的价值。
关于APT攻击
谈到网络攻击追踪溯源,绕不开的便是APT攻击,近年来披露针对我国的APT组织便有数个之多,窃取大量企业和政府的重要信息资产,对信息系统可用性、可靠性构成极大挑战的信息安全威胁。
APT攻击,即高级可持续威胁攻击,也称为定向威胁攻击,指某组织对特定对象展开的持续有效的攻击活动。
这种攻击活动具有极强的隐蔽性和针对性,通常会运用受感染的各种介质、供应链和社会工程学等多种手段实施先进的、持久的且有效的威胁和攻击,常见的攻击方式有鱼叉攻击和水坑攻击。APT攻击从攻击开始到达成目的,有的甚至可能潜伏长达数年。
鱼叉攻击和水坑攻击的基本流程
鱼叉攻击
鱼叉式网络钓鱼攻击分为两个阶段:
第一个为诱导阶段,攻击者建立钓鱼基础设施,通过假冒合法网站或者在访问量高的网站托管钓鱼网站,再基于对攻击者喜好、工作等的调查制作诱饵,以易受信任的身份编辑携带钓鱼网站链接或者附件的电子邮件,发送诱饵给攻击目标。
第二阶段为利用阶段,获取目标信任后,利用收信人执行危险操作,如输入个人信息或者下载恶意软件等,利用用户隐私获得非法利益。如海莲花(APT-C-00)、双尾蝎(APT-C-23)等组织。
水坑攻击
水坑攻击时一种看似简单但成功率较高的网络攻击方式。
攻击目标多为特定的团体(组织、行业、地区等)。攻击者首先通过猜测(或观察)确定这组目标经常访问的网站,然后入侵其中一个或多个网站,植入恶意软件。
在目标访问该网站时,会被重定向到恶意网址或触发恶意软件执行,导致该组目标中部分成员甚至全部成员被感染。按照这个思路,水坑攻击其实也可以算是鱼叉式钓鱼的一种延伸。如黄金鼠组织(APT-C-27)、美人鱼行动(APT-C-07)等。
攻击溯源
下面以《如何通过一封恶意邮件追踪幕后黑客组织》为案例:
https://mp.weixin.qq.com/s/3Wz_mi8dewd5nicBDKW3uQ进行攻击溯源分析。
信息收集
分析邮件的内容,找出钓鱼网站链接、IP、网站的服务商等信息。
钓鱼网站渗透
访问钓鱼网站,对网站进行端口扫描、漏洞检测等手段对网站进行渗透操作(渗透过程不赘述),在得到权限后查看钓鱼文件目录,对日志进行分析,使用D盾、微步等对网站文件进行扫描,识别恶意文件。
恶意文件特征提取
特征提取是溯源分析过程的基础,具有同源性的恶意代码是通过它们的共有特征与其他代码区分开来的。
所提取的特征既要反映出恶意代码的本质和具有同源性恶意代码之间的相似性,又要满足提取的有效性。
依据溯源目的,溯源特征提取包括溯源家族的特征提取和溯源作者的特征提取。
同源分析
恶意代码分析是检测和防范恶意代码的重要基础。在反病毒领域的实际应用中,除了分析恶意代码的各种外部表现,还关心恶意代码在同源演化方面的内在特性,包括恶意代码从何而来、如何发展变化以及相互之间的关系等。
目前仅有少量专门针对恶意代码同源与演化分析技术的研究。
对恶意程序进行反汇编之后,从命令序列、字符串序列提取出一段特征码作为特征,提取筛选出相同的特征码,挑选一些加密算法代码作为特征码,可以使用Bindiff来比较已有样本相似的代码片段,找到相似度较高且不是系统API的函数。
优先选取Blocks数较多、匹配指令数较多的函数,降低误报的几率,分析时。除此之外,也可以使用一些自动化提取yara规则的工具可以使用,
比如yargen:https://github.com/Neo23x0/yarGen。
提取出来的恶意程序的特征码,可以在VT上进行关联,来追踪相似攻击组件。
Virustotal的使用
VirusTotal,是一个提供免费的可疑文件分析服务的网站,可以通过多种反病毒引擎扫描文件使用多种反病毒引擎对您所上传的文件进行检测,以判断文件是否被病毒,蠕虫,木马,以及各类恶意软件感染。
VirusTotal每15分钟更新一次病毒资料库,可以实时提供最新的反病毒引擎以检测出大部分可能的威胁。
同时可以筛选出相同的特征码片段样本,在搜索框搜索之后可以对比往期相关样本本的活跃,打开详细信息可以查看是什么组织开发并使用的攻击组件,通过这种方式可以关联出该组织所使用的攻击组件。
最后将yara规则添加到hunting中,一旦virustotal捕获到新的样本符合这条规则,就会立刻通知我们。
查询攻击者IP地址
可以通过查看哪些IP访问了后门并统计次数。
根据后门文件名,匹配Apache访问日志得到攻击者的代理IP和User Agent。
受害者身份识别
通过日志匹配邮箱并去重得到受害者邮箱地址,再通过搜索引擎对受害者邮箱进行身份识别。
渗透邮件发送网站
访邮件发送网站,对网站进行端口扫描、漏洞检测等手段对网站进行渗透操作(渗透过程不赘述),得到shell后访问文件和数据库。
目标追踪
根据泄露日志、文件等进行追踪,追踪黑客组织名称。根据后门文件名,匹配Apache访问日志,寻找攻击者代理IP和User Agent。
总 结
本文基于对APT攻击的概述,分析了鱼叉式和水坑式的结构和溯源,面对大规模网络环境下网络攻击的追踪溯源,的网络规模、复杂性和攻击手段的复杂性, 需要综合多种方法。
目前的攻击溯源还不够完善,随着国家信息安全战略的提出, 国内外各大高校研究所都已经积极的投入人力物力对网络追踪溯源进行研究, 相信在不远的将来网络攻击追踪溯源这类技术会更加完善。