《网络安全知识体系》
恶意软件和攻击技术(九):
恶意软件检测及识别恶意软件的存在
4 恶意软件检测
4.1识别恶意软件的存在
查找驻留在主机内的恶意程序的过程涉及识别指示恶意软件在计算机系统上存在的线索。我们将这些线索称为“妥协指标”,它们是恶意软件的“功能”或“工件”。
4.1.1大海捞针发现恶意软件
为了识别恶意软件,我们必须首先了解恶意软件如何分发到受害者的主机。恶意软件通常通过互联网下载传播。在计算机上运行的易受攻击的面向Internet的程序可以被利用将恶意软件下载到计算机上。计算机上的用户可以通过社交设计来打开电子邮件附件或访问网页,这两者都可能导致漏洞利用和恶意软件下载。
在下载到主机上时,恶意软件的内容可以在网络流量的有效负载部分(即网络数据包)中看到。作为防病毒(AV)解决方案或入侵检测系统(IDS)可以分析传输到最终主机的每个网络数据包,以查找已知的恶意内容,并阻止(阻止)下载。另一方面,以HTTPS加密的流量内容被网站广泛且越来越多地采用。使用域信誉系统,可以自动阻止来自已知与恶意活动关联的域和IP地址的网络流量,而无需分析流量的有效负载。
在计算机上安装恶意软件后,恶意软件可能驻留在主机的文件系统和/或内存中。此时,恶意软件可以休眠(可执行文件对系统不执行任何操作),直到恶意软件作者指定的稍后时间点。AV或IDS可以定期扫描主机的文件系统和内存,以查找已知的恶意程序。作为第一层防御,恶意软件检测器可以分析表明恶意可执行内容的静态特征。这些包括指令的特征,控制流图,调用图,字节值模式等。
如果在恶意软件的分发状态期间未检测到恶意软件,即检测系统错过了其在网络流量的有效负载或最终主机的文件系统和内存中的存在,则在执行时仍然可以检测到,例如,开始联系其命令和控制(C&C)服务器并通过Internet或上执行恶意操作受害者计算机系统。网络外围上的AV或IDS持续监视从终端主机传出的网络数据包。如果AV或IDS发现主机正在联系已知的恶意域名或IP地址,则可以推测主机已被恶意软件感染。此外,最终主机上的AV或IDS可以查找与已知恶意软件活动(如系统或API)关联的行为模式显示读取或写入的特定文件的调用。
规避和对策由于防病毒和IDS解决方案可以为恶意软件可执行文件生成签名,因此恶意软件作者通常会改变其恶意软件的内容。它们可以更改可执行文件的内容,同时生成其恶意软件的功能相同的副本(即,恶意软件在执行时将执行相同的动态行为)。由于已更改其静态内容,因此恶意软件可以逃避使用这些静态功能的AV或IDS。另一方面,使用动态功能(即恶意软件的功能)的AV或IDS仍然可以检测到恶意软件。
启发式方法(例如,打包工具的签名或加密引起的高熵)可用于检测和阻止表明存在打包恶意软件的内容,但这可能会导致误报,因为包装也可以被良性软件和服务(如视频游戏)用于保护专有信息。检测打包恶意软件的最可靠方法是简单地监控其运行时行为,因为打包的代码将被解压缩并执行,然后可以识别相应的恶意行为。
除了更改恶意软件可执行文件之外,攻击者还可以通过使用多态性修改有效负载来更改其恶意网络流量的内容,以便相同的攻击在多个流量捕获中看起来不同。然而,经典的多态恶意软件技术使有效载荷看起来如此不同,以至于即使是幼稚的IDS也很容易将它们与良性有效载荷区分开来。另一方面,通过多态恶意软件混合攻击,恶意有效载荷在统计上看起来与良性有效载荷相似。
恶意软件作者通常实施更新例程,类似于操作系统和应用程序(如Web浏览器和办公工具)的更新。这使恶意软件作者能够灵活地对恶意软件进行更改,不仅包括新的恶意活动,而且还要逃避AVS和IDS的检测,这些AV和IDS具有开始使用旧恶意软件的模式及其旧行为。
原文始发于微信公众号(河南等级保护测评):恶意软件和攻击技术(九):恶意软件检测及识别恶意软件的存在
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论