使用Prefetch文件的攻击者的狩猎技术和策略



自XP以来,跟踪文件或预取文件已出现在Windows上。从那时起,他们帮助数字取证和计算机事件响应专家找到了包括恶意软件在内的软件启动痕迹。 Group-IB的计算机取证领域的领先专家Oleg Skulkin讨论了使用Prefetch文件可以找到的内容以及如何进行操作。

预取文件存储在%SystemRoot%\ Prefetch目录中,用于加速启动程序的过程。如果查看这些文件中的任何一个,我们将看到它的名称由两部分组成:可执行文件的名称和路径中的校验和,由八个字符组成。

从取证的角度来看,预取文件包含许多有用的信息:可执行文件的名称,启动次数,与可执行文件交互的文件和目录的列表,当然还有时间戳。通常,取证使用特定预取文件的创建日期来确定程序首次启动的日期。此外,这些文件还存储最后一次启动的日期,并从版本26(Windows 8.1)开始,即最近七个启动的时间戳。

让我们使用其中一个Prefetch文件,使用Eric Zimmerman的PECmd从其中提取数据,然后查看每个部分。为了演示,我将从CCLEANER64.EXE-DE05DBE1.pf文件中提取数据

因此,让我们从上面开始。当然,我们具有用于创建,修改和访问文件的时间戳:


它们后面是可执行文件的名称,路径的校验和,可执行文件的大小以及预取文件的版本:


由于我们正在使用Windows 10,因此我们将看到启动次数,上次启动的日期和时间,以及另外七个表示先前启动日期的时间戳:


它们后面是有关卷的信息,包括其序列号和创建日期:


最后但并非最不重要的是,可执行文件与之交互的目录和文件的列表:


因此,可执行文件与之交互的目录和文件正是我今天要关注的。正是这些数据使数字取证专家能够响应计算机事件或主动搜索威胁,从而不仅可以确定文件执行的事实,而且在某些情况下还可以重建攻击者的特定策略和技术。如今,攻击者经常使用诸如SDelete之类的工具来永久删除数据,因此对于任何现代防御者(计算机法医专家,事件响应专家,ThreatHunter专家)来说,至少具有恢复使用某些战术和技术痕迹的能力非常必要。

让我们从初始访问策略(TA0001)和最受欢迎的技术-鱼叉式附件(T1193)开始。一些网络犯罪集团在选择此类附件方面很有创造力。例如,静默组为此使用CHM(Microsoft编译的HTML帮助)文件。因此,我们还有另一种技术-编译HTML文件(T1223)。这些文件是使用hh.exe启动的,因此,如果我们从其Prefetch文件中提取数据,则会发现受害者打开了哪个文件:


我们将继续使用实际示例,并继续执行下一个执行策略(TA0002)和CSMTP技术(T1191)。攻击者可以使用Microsoft连接管理器配置文件安装程序(CMSTP.exe)运行恶意脚本。钴带就是一个​​很好的例子。如果我们从cmstp.exe预取文件中提取数据,则可以再次找出确切的开始位置:


另一种流行的技术是Regsvr32(T1117)。攻击者还经常使用Regsvr32.exe来启动。这是Cobalt组的另一个示例:如果我们从Prefetch文件regsvr32.exe中提取数据,那么我们将再次看到启动的内容:


以下策略是持久性(TA0003)和特权升级(TA0004),以及应用匀速(T1138)作为一种技术。 Carbanak / FIN7使用了此技术来保护系统。通常使用sdbinst.exe与具有程序兼容性信息(.sdb)的数据库一起使用。因此,此可执行文件的预取文件可以帮助我们找出此类数据库的名称及其位置:


如您在插图中所看到的,我们不仅有用于安装的文件名,而且还有已安装的数据库的名。

让我们看一下使用管理共享资源(T1077)的最常见的网络旅行示例(TA0008)PsExec。将在目标系统上创建一个名为PSEXECSVC的服务(当然,如果攻击者使用-r选项,则可以使用任何其他名称),因此,如果我们从Prefetch文件中提取数据,我们将看到它已启动:


也许我将以开始时的内容结束-删除文件(T1107)。如前所述,许多攻击者在攻击生命周期的不同阶段使用SDelete永久删除文件。如果我们查看sdelete.exe Prefetch文件中的数据,我们将看到确切删除的内容:



当然,这并不是在分析Prefetch文件时可以找到的详尽的技术列表,但这应该足以理解这样的文件不仅可以找到启动的痕迹,而且可以重构攻击者的特定策略和技术。

Source: https://habr.com/ru/post/undefined/


All Articles