攻击者已经在绕过传统签名和恶意软件沙盒方面做得更好了,安全团队正日渐转向基于行为的检测模式,找到网络攻击的活跃标志。此类基于行为的检测方式带来了许多优势。行为检测模型专注于黑客真正做了什么,而不是通过代表漏洞利用行为的一系列签名(也被称为指标)来进行查找,因为后者往往存在滞后。比如,在边界上的IPS错过一次路过下载时,行为分析方法可以识别出作为受害者的终端用户的行为开始变得异常:有可能是尝试访问非正常资源,或者下载了非正常数量的文件。这其实正是1980年代最初版本的入侵检测系统的设计功能。
不过,如果忘记了入侵行为检测手段为什么当年失宠,也是不明智的。通常情况下,基于用户行为的分析识别出的是异常,而不是威胁。假设负责会计的Joe正在下载比通常更多的数据,但这到底是一次攻击的迹象,还是仅仅因为他是在为要做的报告准备数据?
这种用户行为模型可以让我们知道发生不正常行为的时间,但它往往并不稳定,需要分析师进一步进行实地调查。在现实世界,安全团队的时间和人才通常处于短缺状态,这意味着此类异常行为将变成检测噪音,而最终被忽视。
重新关注攻击者行为
虽然基于终端用户行为进行检测十分重要,我们仍需要用更好的检测手段对其进行补充,检测攻击者的行为。这里的攻击者行为指的是回归到检测攻击者使用的工具和技术上来。
最终,如果我们无法区好坏,那么异常将继续成为模糊的噪音,为分析师制造更多的负担。显然,在大多数环境中都无法规模化地使用人工分析方法。
如果你知道该找什么,实际上恶意工具和技术拥有可以被识别的行为。比如,攻击者经常会依赖于自制的隧道工具来控制攻击。这些工具是自制的,可以绕过签名和智能扫描。不过,这些工具同样拥有一部分共享的基本行为特征。最初的连接来源于网络内部的某个受感染终端用户设备,因此攻击流量将与通常的互联网流量融合。
在连接建立之后,远程的攻击者可以对内部主机进行实时控制,操纵攻击。从行为上来看,这个行为将会与众不同。该连接的行为将与公司内部人员和外部服务器进行通信时的情况不同。事实上,该过程与之完全相反:外部的人在通过该连接控制你的网络设备。如果基于历史行为进行分析,这种类型的行为并不属于异常。它之所以是一个重大威胁,实际上是因为它本身的行为。
这只是一个例子而已,但这种概念对于日常安全事件管理中无法衡量的各种类型威胁都成立。主机访问不常访问的域名时就会变得异常。不过,如果能够识别主机正在挖比特币,分析师就会知道真正发生的问题是什么。仅仅是这一点就能帮助分析师将此事件的优先级列到最前,避免浪费时间的手工分析。
这里的意思并不是有一种方法比其它方法都更好,而是在说在传统的签名和异常检测两者之间应当有一个关键的中间步骤。基于行为的监测模型能够看到简单的签名漏掉的东西,与仅仅看着异常不同,它提供更好的可见性。这些是理想状态下应当在企业环境中相互补充的方法。这给了我们检测威胁的不同角度,并最终让我们在威胁不断升级的过程中也能保证安全。