T1601.001: 修补系统镜像

Defense Impairment

摘要

攻击者可能修改网络设备的操作系统,以引入新能力或削弱现有防御。(Citation: Killing the myth of Cisco IOS rootkits)(Citation: Killing IOS diversity myth)(Citation: Cisco IOS Shellcode)(Citation: Cisco IOS Forensics Developments)(Citation: Juniper Netscreen of the Dead) 某些网络设备采用单体式架构构建,整个操作系统和设备的大部分功能都包含在单个文件中。攻击者可能在存储中更改此文件,以便在未来启动时加载,或在运行时在内存中更改。 要在存储中更改操作系统,攻击者通常会使用设备操作员可用的标准程序。这可能涉及通过网络设备上使用的典型协议(如 TFTP、FTP、SCP 或控制台连接)下载新文件。原始文件可能被覆盖,也可能在其旁边写入一个新文件,并重新配置设备以从被攻陷的镜像启动。 要在内存中更改操作系统,攻击者通常可以使用以下两种方法之一。在第一种方法中,攻击者利用原始、未经更改的运行操作系统中的原生调试命令,直接修改包含正在运行的操作系统的相关内存地址。此方法通常需要对设备的管理级别访问权限。 在内存中更改操作系统的第二种方法中,攻击者利用引导加载程序。引导加载程序是设备启动时加载的第一段软件,它随后会启动操作系统。攻击者可能使用先前植入引导加载程序中的恶意代码(例如通过 [ROMMONkit](https://attack.mitre.org/techniques/T1542/004) 方法),直接操纵内存中正在运行的操作系统代码。引导加载程序中的这种恶意代码为攻击者提供了直接操纵内存的能力,使他们能够在运行时修补活动操作系统。 通过修改存储在系统镜像文件中的指令,攻击者可以削弱现有防御,或提供设备此前不具备的新能力。可被妨碍的现有防御示例包括通过[削弱加密](https://attack.mitre.org/techniques/T1600)妨碍加密、通过[网络设备身份验证](https://attack.mitre.org/techniques/T1556/004)妨碍身份验证,以及通过[网络边界桥接](https://attack.mitre.org/techniques/T1599)妨碍边界防御。为攻击者目的添加的新能力包括[键盘记录](https://attack.mitre.org/techniques/T1056/001)、[多跳代理](https://attack.mitre.org/techniques/T1090/003)和[端口敲门](https://attack.mitre.org/techniques/T1205/001)。 攻击者还可能攻陷操作系统中现有的命令,以产生虚假输出误导防御者。当此方法与[降级系统镜像](https://attack.mitre.org/techniques/T1601/002)结合使用时,一个被攻陷的系统命令示例可能是更改显示当前运行操作系统版本的命令的输出。通过修补操作系统,攻击者可以更改此命令,使其改为显示他们通过系统降级替换掉的原始更高修订版本号。 当操作系统在存储中被修补时,可以在常驻存储(通常是某种闪存,即非易失性存储)中实现,也可以通过[TFTP 引导](https://attack.mitre.org/techniques/T1542/005)实现。 当此技术针对内存中正在运行的操作系统而非存储副本执行时,该技术无法在重启后保留。然而,操作系统的实时内存修改可以与 [ROMMONkit](https://attack.mitre.org/techniques/T1542/004) 结合以实现持久化。

来源归属

来源:MITRE ATT&CK · 置信度:high

平台

  • Network Devices

战术

Defense Impairment

参考来源