APT攻击者是如何利用HTML注释攻击的?

你有没有想过高级持续性攻击(APT)者究竟为什么如此难以检测到?因为这些高级持续性威胁(APT)攻击者使用的是目标主机上现有的工具,通过常用网络端口,并将他们的命令控制(C&C)通信隐藏在HTML注释中。

“他们试图瞒天过海!”对这些攻击进行取证调查研究的HBGary首席科学家Shawn Bracken表示,“应该注意到他们对目标企业使用的行为阻断和分析非常熟悉。”

这些攻击者没有采取任何可能触发警报或者引起怀疑的行动,而是试图融入系统。“他们安装的工具都是专门不会与入侵防御系统发生冲突的工具,并且他们使用的是合法的已发布的API,试图不引起任何怀疑。”

这意味着使用目标操作系统中存在的真正的系统管理工具,并且越来越多地使用HTML用于控制命令通信。至少有三个高级持续性攻击团队,包括Operation Shady RAT campaign背后的攻击者,都是用了这样的技术来掩盖他们的通信。“但你不能阻止所有包含注释的网站,”Bracken表示。

戴尔安全工作反威胁部门的恶意软件研究主管Joe Stewart表示,在网页使用加密HTML注释在一段时间内已经成为高级持续攻击的一部分。“这个技术已经被用了好几年了,我相信,那些跟踪高级持续攻击活动的安全研究人员早就意识到这一点,”Stewart表示,“知道HTML注释可能被利用可以帮助检测高级持续攻击流量,然而,只有特定恶意软件会使用特定HTML注释,其他都有各自不同的格式,因此很难察觉。”

它的工作原理是这样的:攻击者利用互联网某个地方的web服务器或者社交网络站点,例如博客网站。然后攻击者将他的编码指令作为隐藏注释藏在这个网站中,而RAT会定期检查这个页面。

“我们已经看到了两种情况:攻击者将使用SQL诸如攻击渗透到受感染的web服务器,然后将他的注释隐藏在这个服务器中,”HBGary首席执行官Greg Hoglund表示。

RAT有一个硬编码DNS名称来连接,这个名称随后会被修改为与被感染网站相匹配的IP地址,“所有RAT进行出站连接,并获取指令,”他表示。

第二种情况是,攻击者使用合法的社交网络媒体或者应用程序网站,例如Google BlogSpot来将他们隐藏指令藏在HTML注释中,Hoglund表示。这些指令通常是配置指令,例如指示一台机器连接到受害者网络特定机器以及打开一个TCP连接。这就为攻击者提供了到那台机器的互动连接,“并且他获取了命令行访问权限,”Hoglund说到。

即使这些远程访问工具没有故意隐藏起来:“它们完全不会被察觉,看起来就像是正常软件。”

因此,如果你可以找到HTML注释,你就可以找出在哪台机器上安装了RAT,但是也有可能在网络种存在大量RAT程序。