CheckRes, PowershellRAT y otros.  Lo que encontramos en el arsenal de grupos APT chinos – Hacker

Los grupos APT chinos fueron especialmente activos el año pasado. Al mismo tiempo, cada uno de ellos tenía su propio conjunto de herramientas único. Después de examinar millas de líneas de código malicioso capturado durante la investigación de incidentes, encontramos muchos trucos interesantes, que discutiremos en este artículo.

Contenido

CheckRes

Descargar

Este malware utiliza cinco archivos para lanzar su payload principal, que secuencialmente se lanzan entre sí. El funcionamiento se puede ver en la siguiente figura. La carga principal la inicia el archivo cmd, que aparece en el sistema al comienzo del malware. Pero al mismo tiempo, el archivo en sí

cmd se inicia mediante un script VBS que aún no existe en el sistema. Tal enfoque integrado para lanzar la carga principal probablemente sea necesario para evitar el análisis de comportamiento.

Схема загрузки CheckRes

Esquema de descarga de CheckRes

Módulos

Al comienzo de la carga útil, los módulos se cargan desde el servidor remoto.

Solicitud POST para obtener el módulo

Загрузка модулей CheckResCORREO

/

cgi- papelera/pd.

<

p id="p3">cgi/

http/parámetro_

<

p id="p4">

identificación.

000 HTTP/

una.0

Aceptar :

imagen/Загрузка модулей CheckResgif,

Загрузка модулей CheckResimagen/

X-

xbitmap,Загрузка модулей CheckRes

Загрузка модулей CheckResЗагрузка модулей CheckResimagen /

Загрузка модулей CheckRes jpeg, Загрузка модулей CheckRes imagen/ Загрузка модулей CheckRespjpeg, Загрузка модулей CheckRes

aplicación licación/

vnd.Загрузка модулей CheckRes

milisegundo-Загрузка модулей CheckRessobresalir,Загрузка модулей CheckRes

aplica cación/Загрузка модулей CheckResMS Word,

Загрузка модулей CheckRes

aplicación/vnd.

milisegundo-

PowerPoint, */

Загрузка модулей CheckResAceptar-

Modismo:

Delaware-

en

Usuario-Загрузка модулей CheckRes

Agente:

Загрузка модулей CheckRes

Mozilla/cuatro.0 ( compatible; Загрузка модулей CheckResЗагрузка модулей CheckResMSIE Загрузка модулей CheckRes

6.0; Загрузка модулей CheckRes

Ventanas

NT

5. 0)

Anfitrión:

<

IP> Загрузка модулей CheckRes

Contenido-

Escriba: aplicación/x-

www - formulario-

codificado en URL

Contenido-

Longitud: Загрузка модулей CheckRes

31

Conexión: Загрузка модулей CheckRes

Mantener-

Vivo

laboratorio =3999/

06171252&tamaño e=1&Загрузка модулей CheckRes

datos=F Загрузка модулей CheckRes

Se pueden cargar hasta 16 módulos desde el servidor.

Cargando módulos CheckRes

Los módulos vienen en el cuerpo de una solicitud HTTP. Están envueltos, codificados en Base64 y rodeados por la etiqueta

< actualizar>.

Los módulos son archivos DLL donde el encabezado del resguardo de MS-DOS está lleno de ceros (como se ve en la captura de pantalla a continuación). Al cargar desde C&C, se analiza la tabla de importaciones y reubicaciones. A continuación, se llama al punto de entrada del archivo DLL donde se crea el subproceso para ejecutar el módulo. Es necesario crear un subproceso si desea que el módulo se ejecute continuamente, porque el archivo ejecutable se ejecuta en un solo subproceso.

Encabezado del módulo CheckRes

Cada módulo genera información sobre su trabajo en un archivo ubicado en la siguiente ruta :

%perfildetodoslosusuarios%{F3F85CAE-

3398-45f6- 98C2-

7DBFD3F3042C}

El archivo de salida de cada módulo tiene su propia extensión (por ejemplo, .cap, .ks t, .rdd). El contenido del archivo se cifra mediante la operación XOR con el generador de números pseudoaleatorios "Mersenne Twirl".

Mersenne Twirl

Módulos para cifrar los datos de salida, utilice un generador de números pseudoaleatorios no criptográficos "vórtice de Mersenne" con el valor inicial (semilla) 11. Todos los parámetros siguen el algoritmo estándar para generar valores de 32 bits. Cada módulo tiene varios rasgos característicos relacionados con la implementación del algoritmo. Primero, esta es la inicialización inicial de la matriz, que se repite dos veces: en el primer llenado, el valor inicial se establece en 5489. Luego, sin afectar el llenado anterior, la matriz se vuelve a llenar con un valor inicial de 11

    Закаливание псевдослучайного числа

    Array de inicialización doble

  • Hay una característica más: se usa una matriz que es igual a dos órdenes de la secuencia recurrente, a saber, 1248. Por lo tanto, la primera mitad de la matriz se inicializa inicialmente , después de lo cual, según el algoritmo, la segunda mitad de la matriz se genera en base a la primera parte. Cuando se utilizan los 624 elementos generados de la segunda mitad, se sobrescribe el primero. Y sobre la base de la segunda mitad, la primera mitad ya está llena de acuerdo con la relación de recurrencia

    Como resultado, la mitad de la matriz siempre contiene datos para generar la otra mitad. Se podría suponer que esto se hizo para simplificar la implementación: usar un bucle para llenar la matriz con números ya pseudoaleatorios en lugar de dos. Pero al llenar la primera parte, aún debe dividir el algoritmo de llenado de matriz en dos ciclos, como se implementa aquí.

    Y la última característica se refiere al "endurecimiento" de un número pseudoaleatorio. Al principio El algoritmo lógico asume primero un cambio de bit por una constante, y luego se realiza un Y lógico bit a bit.Aquí, se cambia el orden, lo que afectó a las constantes utilizadas para esta operación. Entonces, la constante 0xefc60000 se representa aquí como el valor 0xFFFFDF8C.

    Endurecimiento de números pseudoaleatorios

  • ShadowPad Light 2021

      ShadowPad Light es una versión ligera del ShadowPad original sin ofuscación de código. Aunque esta muestra es muy similar a la ShadowPad original, tiene sus propias peculiaridades.

      Cargando

      ShadowPad Light viene en tres archivos:

      hpdigital.

      <

      div class="wrapper" readability="7">exe es un archivo ejecutable legítimo firmado por HP;

    • hpqhvsei.

      <

      div class="wrapper" readability="7">dll: una biblioteca maliciosa que se carga mediante la técnica de secuestro de DLL; hpqlpvdt.

      tmp

      es una carga cifrada que contiene un descompresor y una carga útil maliciosa, y también almacena el conjunto inicial de módulos necesarios para el funcionamiento.

Por admin

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *