APT检测指标-第3部分

https://nigesecurityguy.wordpress.com/2014/04/03/apt-detection-indicators-part-3/#comments

APT检测指标,第3部分:命令和控制通道

在确保网络安全时,大多数组织更关心的是控制入站流量而不是出站流量。然而,出站流量是一个重要的风险,它被恶意软件和目标攻击者用作命令和控制的通道(C&C)和数据泄露。


APT检测指标-第3部分_第1张图片

了解C&C和C&C通道对有效检测、控制、分析和修复定向的恶意软件事件至关重要。恶意软件允许攻击者使用受感染的计算机通过C&C通道远程控制计算机。这些活动对组织构成威胁,可以通过检测和干扰网络上的C&C通道来减轻。

这个APT检测指标——第3部分,博客描述如下:

与出站流量有关的风险

典型的命令和控制通道

用于绕过控制的技术

检测和防止闪避技术的方法

由于攻击者非常有创造性地隐藏他们的活动,以测试可用的协议来建立隧道和利用各种模糊处理技术,所以没有办法消除所有与出站通信相关的风险。然而,对技术和风险的良好理解应该使组织能够发现异常(也可以看到:APT异常检测),并对改进和微调出口策略做出明智的决定。

至关重要的是提高关键数据和资产的运营意识。组织应该在受到良好监控的基础设施的更深层保护中分割和包装关键数据(也可以看到自适应区域防御)。此外,分层防御策略(多层和防御手段)可以防止安全漏洞,并使用相应的时间来检测和响应攻击,从而减少漏洞后果。

一、恶意软件回顾

恶意软件,也被称为恶意软件,已经存在了,几乎和计算机的存在一样长。多年来,很多人都在努力阻止恶意软件但恶意软件仍在不断增长。每天,大量的恶意软件被释放。


APT检测指标-第3部分_第2张图片
Command and Control Channel Establishment

僵尸网络(Botnets

botnet由受恶意软件感染的计算机构成,这些计算机被称为bot。这些bot连接到C&C基础设施以形成bot网络或botnet。C&C基础设施允许攻击者控制连接到它的bot。bot可以被指示从受感染的电脑中窃取用户数据、(财务)凭证或信用卡信息。大量的bot可以用来执行分布式拒绝服务(DDoS)攻击和关闭服务器。犯罪分子还将bot出售给其他罪犯。

定向目标的攻击(Targeted Attacks

在定向目标攻击情况下,攻击者想要感染一个特定的组织。这与上面描述的普通僵尸网络完全不同,在那里罪犯对他们感染的机器不感兴趣。目标攻击的目标是窃取目标或破坏目标系统的某些数据。

这是通过感染一个或几个带有恶意软件的计算机来实现的,这些恶意软件会接触C&C服务器。C&C服务器允许攻击者远程控制受感染的计算机。控制功能可用于感染其他计算机或搜索攻击者感兴趣的文档。在发现感兴趣的数据之后,攻击者给出了对数据进行泄露的指令。泄露通常是通过与C&C通道分开的通道进行的。

探测定向目标攻击比探测无目标攻击要困难得多。该恶意软件只被发送到几个目标,使得反病毒检测不太可能,因为反病毒供应商不太可能获得恶意软件的样本。检测C&C流量也变得更加困难,因为入侵检测系统(IDS)的恶意软件的签名不太可能出现,而且C&C基础设施不太可能出现在任何黑名单上。

简单的恶意软件可能被沙箱捕获,它们是解决APT防御难题的有用的部分。但在定向目标攻击中,恶意软件的作者在发布之前测试他们的攻击。因此,通过基于沙箱的方法检测、分类和属性的威胁变得更加困难。因此,对目标攻击的检测严重依赖于启发式或人工检查作为最后一道防线。

二、恶意软件C&C网络协议的使用

命令和控制通道在其复杂性上可能会有很大的差异。控制基础结构可以从简单的HTTP请求到恶意的域,到更复杂的方法,包括使用缺乏集中式服务器的弹性P2P技术,因此很难进行分析。一小群恶意软件使用TLS加密(一些)他们的通信。值得注意的是,几乎所有的TLS通信都被描述为HTTPS通信。此外,大多数已知的样本无法完成TLS握手。这可能表明恶意软件实际上并没有实现TLS,但仅仅是在一个通常用于TLS连接的端口上进行通信,这是非常典型的。


APT检测指标-第3部分_第3张图片
Advanced Threat Actor using C&C Channel Example

三、C&C通道检测技术

下面是一些C&C通道的例子和用来检测它们的技术。我们将在未来的博客中更详细地讨论这个主题,并使用开源工具.

1 黑名单

限制对C&C基础设施的访问的一种简单技术是阻止对C&C服务器所使用的IP地址和域的访问。

2 基于签名的技术

用于检测有害的网络流量的流行技术是使用基于签名的入侵检测系统(IDS)。基于签名的检测的优点是,如果恶意软件研究人员已经创建了一个签名,那么可以很容易地检测到已知的机器人流量。缺点是,机器人经常混淆或加密他们的流量,这使得写签名变得更加困难甚至不可能。

3 基于DNS协议

恶意软件需要知道C&C基础设施的IP地址来进行通信。这个地址可以硬编码,也可以从一个域名中检索。使用域名提供了更多的灵活性,因为它允许攻击者轻松地更改IP地址。受感染的计算机甚至不需要出站连接。只要它可以通过在Internet上执行递归查找的本地DNS服务器解析主机名。DNS已经卷入了最近两次大规模的入侵,导致数百万账户的损失。

网络管理员应该寻找以下内容:

具有低到非常低的TTL(寿命)值的DNS响应,其在某种程度上是不寻常的

DNS响应,其中包含一个属于动态DNS提供者的长列表中的一个域。

客户端发出的DNS查询比预期的主机名的TTL更频繁。

DNS请求在本地名称空间之外的主机名,这是响应的资源记录,指向的IP地址在127.0.0.0/8,0.0.0.0/32,RFC1918的IP空间,或在组织的公共或私有IP空间内的任何地方。

对于单个唯一的主机名的连续DNS响应,它只包含一个资源记录,但是每24小时更改了两次以上。

在一个固定的地址维护一个DNS服务器和C&C服务器,增加了它被删除的机会。因此,攻击者已经开始使用快速通量域( fast-flux domain)。这些域是所有者快速更改域点的IP地址,也可选地更改DNS服务器的IP地址。

4 基于IRC协议

第一代僵尸网络使用网络中继聊天作为建立中心指挥和控制机制的通道。它们连接到攻击者选择的IRC服务器和通道,并等待命令。尽管IRC僵尸网络易于使用、控制和管理,但它们却遭受了一个中心点的失败。

5 基于P2P协议

为了克服IRC的问题,在第二代僵尸网络中使用P2P架构,而不是使用中央C&C服务器,攻击者将命令发送给一个或多个bot,并将其传递给他们的邻居。越来越多的P2P (P2P)协议被用于C&C通道。

示例包括Zeus v3、TDL v4 (Alureon)和ZeroAccess。在过去的12个月里,使用P2P的恶意软件样本数量增加了大约10倍。

P2P的C&C通道通常很容易被DNS、反向DNS或被动DNS识别,因为它们通常不会试图隐藏——除非它们是恶意的。一般情况下,恶意软件P2P的所有成员都受到了同样的恶意软件的攻击。检测到一个,你就能快速识别出数百个被破坏的资产。

5 基于HTTP协议

利用P2P僵尸网络的第二代实现是困难和复杂的。因此,攻击者开始再次使用集中的C&C模型,使用HTTP协议在某些web服务器上发布命令。

绝大多数被检查的恶意软件都使用HTTP作为C&C协议。根据Mandiant, APT攻击者使用的所有后门中有83%是向TCP端口80或443发送会话。然而,只有少数几个样本使用TLS与C&C服务器通信。所有的TLS恶意软件允许连接到无效证书的服务器。如果服务器确实使用了无效证书,则可以使用该属性来检测这些用例。类似地,在无效证书的情况下的双重连接尝试可能触发检测。

大多数被检查的恶意软件使用基于HTTP的C&C通道。这些恶意软件样本生成的HTTP请求通常使用伪造的 User-Agent获取请求。其中大多数恶意软件伪造了安装的ie版本的 User-Agent。因此,检测伪造 User-Agent可能为C&C通道检测提供一种方法。

这里有一些指标可以通过被动地查看网络流量来检测C&C通道会话:

证书不是由受信任的CA签名的

域名是随机的(即不存在)

有效期为一个月。

6 基于时间

为了能够接收新的命令,bot必须经常向C&C服务器发送流量。这样的流量是自动发送的,通常是定期发送的。用户生成的流量的行为要少得多,因此可以通过测量这种规律来检测bot。

7 异常检测

异常检测是基于这样一种假设,即构建一个合法的流量内容模型是可能的。在检测命令和控制信道时,网络流量的异常检测可以是非常强大的工具。不幸的是,最有效的方法是在第一个妥协之前就开始(定义什么是“好”的网络)。然而,一些形式的异常检测仍然增加了巨大的价值:

开发一组快速签名,以确保端口80和443上的每个TCP会话分别包含有效的HTTP或SSL通信。使用诸如FlowGrep之类的工具,或者检查失败的代理日志。对于所有未通过应用程序代理传递的流量,这将是一个有用的操作,并且不会被阻止直接访问internet资源。

对于internet上的HTTP服务器的持久连接,即使是在正常的办公时间之外,也应该是例外,而不是规则,所以有效的异常可以被过滤掉,这使得这是识别破坏的有效机制。攻击者是否与您的组织在同一时区运行?

对远程web服务器上相同文件的持久请求,但是使用不同的参数可以表示通过HTTP进行的数据窃取。

8 基于相关性

减少bot检测的假阳性数量的一个方法是在提高警报之前需要几个相关事件。这使得系统可以使用本身具有高假阳性率的事件。然而,通过要求多个事件,系统能够过滤掉大部分误报。事件可能与单个主机或一组主机相关。

使用相关性来检测bot的优点是,与仅使用单个事件相比,假阳性的数量较少。与此同时,这可能是一个劣势,因为隐形bot只产生一两个事件,可能不会被检测到。


APT检测指标-第3部分_第4张图片
C&C Channel Detection Technique

四 社交网络

为了击败基于社交网络的僵尸网络,组织必须事先考虑攻击者。无论通道、提供者或帐户,社交网络消息都是文本。因此,如果恶意软件想要使用社交网络为他们的C&C服务,他们就会在文本中对他们的命令进行编码。就像合法的消息可能包含web链接一样,C&C消息(例如,下载有效负载的链接)也可能包含在内。

五 基于web的攻击/检测特性。

通过使用HTTP连接作为通信通道,基于web的恶意软件攻击可以避免防火墙的检测并增加攻击的威胁。其中一个攻击特征是它的小流量签名,它也非常适合在正常的交通流中。由于大多数防火墙不过滤HTTP流量,因此不容易检测到任何异常行为。

此外,快速通量域技术允许一个完全限定的域名(FQDN)指向多个IP地址。这些IP地址可以分散在世界各地,使一个恶意的域名难以被跟踪和分析。攻击者可以使快速通量域经常与各种IP地址相关联。

然而,一个需要大量IPs的快速通量域是一个有用的特性。快速通量域技术的检测和连接规律性的使用可以作为基于web的检测的基础。除了提高检测的准确性外,还可以检测不同类型的僵尸网络/恶意软件。

六 结论

通过使用恶意软件分析的结果来磨练C&C通道检测能力,一个组织可以开始修复一个恶意软件事件。任何确定的C&C频道都可以作为破坏(IOCs)的有用指标,可以用来检测相同或类似的恶意软件的其他实例。与C&C相关的IOCs包括网络通信中所看到的域名、IP地址、协议,甚至是字节的模式,它们可以表示命令或编码数据。Matt Jonkman的团队定期发布已知命令和控制通道的更新签名。如果建立这样一个系统听起来有点像工作,那就看一下BotHunter。


APT检测指标-第3部分_第5张图片

你可能感兴趣的:(APT检测指标-第3部分)