Técnicas de caza y tácticas de atacantes que usan archivos Prefetch



Los archivos de rastreo, o archivos Prefetch, han aparecido en Windows desde XP. Desde entonces, han ayudado a forenses digitales y especialistas en respuesta a incidentes informáticos a encontrar rastros de lanzamientos de software, incluido malware. Oleg Skulkin , especialista líder en informática forense en Group-IB, habla sobre lo que puede encontrar con los archivos Prefetch y cómo hacerlo.

Los archivos de captación previa se almacenan en el directorio% SystemRoot% \ Prefetch y se utilizan para acelerar el proceso de lanzamiento de programas. Si observamos alguno de estos archivos, veremos que su nombre consta de dos partes: el nombre del archivo ejecutable y la suma de comprobación de la ruta, que consta de ocho caracteres.

Los archivos de captación previa contienen mucha información útil desde el punto de vista forense: el nombre del archivo ejecutable, el número de lanzamientos, las listas de archivos y directorios con los que interactuó el archivo ejecutable y, por supuesto, las marcas de tiempo. Por lo general, los forenses usan la fecha de creación de un archivo Prefetch particular para determinar la fecha en que se inicia el programa por primera vez. Además, estos archivos almacenan la fecha de su último lanzamiento y, a partir de la versión 26 (Windows 8.1), las marcas de tiempo de los últimos siete lanzamientos.

Tomemos uno de los archivos Prefetch, extraigamos los datos de él usando PECmd de Eric Zimmerman y miremos cada parte. Para la demostración, extraeré los datos del archivo CCLEANER64.EXE-DE05DBE1.pf .

Entonces, comencemos desde arriba. Por supuesto, tenemos marcas de tiempo para crear, modificar y acceder al archivo:


Les sigue el nombre del archivo ejecutable, la suma de comprobación de la ruta, el tamaño del archivo ejecutable y la versión del archivo Prefetch:


Como estamos trabajando con Windows 10, veremos la cantidad de lanzamientos, la fecha y la hora del último lanzamiento y otras siete marcas de tiempo que indican las fechas de lanzamiento anteriores:


Les sigue información sobre el volumen, incluido su número de serie y la fecha de creación:


Y por último, pero no menos importante, una lista de directorios y archivos con los que interactuó el ejecutable:


Entonces, los directorios y archivos con los que interactuó el ejecutable son justo en lo que quiero centrarme hoy. Son estos datos los que permiten a los especialistas en análisis forense digital, que responden a incidentes informáticos o búsquedas proactivas de amenazas, establecer no solo el hecho de la ejecución de un archivo, sino, en algunos casos, reconstruir tácticas y técnicas específicas de los atacantes. Hoy en día, los atacantes suelen utilizar herramientas para eliminar datos de forma permanente, por ejemplo, SDelete, por lo que la capacidad de recuperar al menos rastros del uso de ciertas tácticas y técnicas es simplemente necesaria para cualquier defensor moderno: un especialista en informática forense, especialista en respuesta a incidentes, experto en ThreatHunter.

Comencemos con las tácticas de acceso inicial (TA0001) y la técnica más popular: accesorio de pesca submarina (T1193). Algunos grupos cibercriminales son muy creativos sobre la elección de tales archivos adjuntos. Por ejemplo, el grupo Silence utilizó archivos CHM (Ayuda HTML compilada de Microsoft) para esto. Por lo tanto, tenemos otra técnica más: el archivo HTML compilado (T1223). Dichos archivos se inician usando hh.exe , por lo tanto, si extraemos los datos de su archivo Prefetch, descubriremos qué archivo abrió la víctima:


Continuamos trabajando con ejemplos de la vida real y pasamos a las próximas tácticas de Ejecución (TA0002) y la técnica CSMTP (T1191). Los atacantes pueden usar el instalador de perfiles de Microsoft Connection Manager (CMSTP.exe) para ejecutar scripts maliciosos. Un buen ejemplo es la banda de cobalto. Si extraemos los datos del archivo de captación previa cmstp.exe , nuevamente podemos averiguar qué se inició exactamente:


Otra técnica popular es Regsvr32 (T1117). Regsvr32.exe también es utilizado a menudo por los atacantes para iniciar. Aquí hay otro ejemplo del grupo Cobalt: si extraemos datos del archivo Prefetch regsvr32.exe , nuevamente veremos qué se lanzó:


Las siguientes tácticas son Persistencia (TA0003) y Escalada de privilegios (TA0004), así como Aplicación Shimming (T1138) como técnica. Esta técnica fue utilizada por Carbanak / FIN7 para asegurar el sistema. Por lo general, trabajar con bases de datos con información sobre compatibilidad de programas (.sdb) utilizaba sdbinst.exe . Por lo tanto, el archivo de captación previa de este archivo ejecutable puede ayudarnos a encontrar los nombres de dichas bases de datos y su ubicación:


Como puede ver en la ilustración, no solo tenemos el nombre del archivo utilizado para la instalación, sino también el nombre de la base de datos instalada.

Echemos un vistazo a uno de los ejemplos más comunes de viajes en red (TA0008), PsExec, que utiliza recursos administrativos compartidos (T1077). Se creará un servicio llamado PSEXECSVC (por supuesto, cualquier otro nombre si los atacantes usaron la opción -r ) en el sistema de destino, por lo tanto, si extraemos los datos del archivo Prefetch, veremos que se lanzó:


Acabaré, tal vez, con lo que comencé: eliminar archivos (T1107). Como señalé, muchos atacantes usan SDelete para eliminar permanentemente archivos en diferentes etapas del ciclo de vida del ataque. Si echamos un vistazo a los datos del archivo Prefetch sdelete.exe , veremos qué se eliminó exactamente:



Por supuesto, esta no es una lista exhaustiva de técnicas que se pueden encontrar durante el análisis de los archivos Prefetch, pero esto debería ser suficiente para comprender que dichos archivos no solo pueden encontrar rastros del lanzamiento, sino también reconstruir tácticas y técnicas específicas de los atacantes.

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


All Articles