Los actores de amenazas podrían explotar una nueva técnica de inyección de procesos denominada Sinsajo para eludir las soluciones de seguridad y ejecutar código malicioso en sistemas comprometidos.
«La inyección se ejecuta sin asignación de espacio, configuración de permisos o incluso inicio de un hilo», dijeron los investigadores de Security Joes Thiago Peixoto, Felipe Duarte e Ido Naor en un informe compartido con The Hacker News. «La singularidad de esta técnica es que requiere una DLL vulnerable y copiar el código en la sección correcta».
La inyección de procesos es un método de ataque que permite a los adversarios inyectar código en los procesos para evadir las defensas basadas en procesos y elevar los privilegios. Al hacerlo, podría permitir la ejecución de código arbitrario en el espacio de memoria de un proceso en vivo separado.
Algunas de las técnicas de inyección de procesos más conocidas incluyen la inyección de biblioteca de enlaces dinámicos (DLL), la inyección de ejecutables portátiles, el secuestro de ejecución de subprocesos, el vaciado de procesos y el doppelgänging de procesos, entre otros.
Vale la pena señalar que cada uno de estos métodos requiere una combinación de llamadas al sistema específicas y API de Windows para llevar a cabo la inyección, lo que permite a los defensores diseñar procedimientos de detección y mitigación adecuados.
Lo que distingue a Sinsajo es que subvierte estas capas de seguridad al eliminar la necesidad de ejecutar las API de Windows, generalmente monitoreadas por las soluciones de seguridad, aprovechando los archivos ejecutables portátiles de Windows preexistentes que contienen un bloque de memoria predeterminado protegido con Lectura-Escritura-Ejecución.
Esto, a su vez, se logra usando msys-2.0.dll, que viene con «16 KB generosos de espacio RWX disponible», lo que lo convierte en un candidato ideal para cargar código malicioso y pasar desapercibido. Sin embargo, vale la pena señalar que podría haber otras DLL susceptibles con características similares.
La compañía israelí dijo que exploró dos métodos diferentes, la autoinyección y la inyección de proceso remoto, para lograr la inyección de código de una manera que no solo mejora la eficiencia del ataque, sino que también evita la detección.
En el primer enfoque, se utiliza una aplicación personalizada para cargar directamente la DLL vulnerable en su espacio de direcciones y, en última instancia, ejecutar el código deseado mediante la sección RWX. La inyección de procesos remotos, por otro lado, implica el uso de la sección RWX en la DLL vulnerable para realizar la inyección de procesos en un proceso remoto como ssh.exe.
«La singularidad de esta técnica radica en el hecho de que no es necesario asignar memoria, establecer permisos o crear un nuevo hilo dentro del proceso de destino para iniciar la ejecución de nuestro código inyectado», dijeron los investigadores.
«Esta diferenciación distingue a esta estrategia de otras técnicas existentes y dificulta que los sistemas de detección y respuesta de punto final (EDR) detecten este método».
Los hallazgos llegan semanas después de que la firma de seguridad cibernética SpecterOps detallara un nuevo método que explota una tecnología de implementación legítima de Visual Studio llamada ClickOnce para lograr la ejecución de código arbitrario y obtener acceso inicial.
Fuente y redacción: thehackernews.com