Site icon Sophos News

El ransomware Qilin roba credenciales almacenadas en Google Chrome

ransomware Qilin

Durante una investigación reciente de una brecha del ransomware Qilin, el equipo de Sophos X-Ops identificó actividad de atacantes que conducía al robo masivo de credenciales almacenadas en navegadores Google Chrome en un subconjunto de endpoints de la red, una técnica de recolección de credenciales con implicaciones potenciales mucho más allá de la organización de la víctima original. Se trata de una táctica inusual, que podría ser un multiplicador adicional para el caos ya inherente a las situaciones de ransomware.

¿Qué es Qilin?

El grupo de ransomware Qilin lleva funcionando algo más de dos años. Fue noticia en junio de 2024 debido a un ataque a Synnovis, un proveedor de servicios gubernamentales a varios proveedores sanitarios y hospitales del Reino Unido. Antes de la actividad descrita en este post, los ataques de Qilin solían implicar una “doble extorsión”, es decir, robar los datos de la víctima, cifrar sus sistemas y luego amenazar con revelar o vender los datos robados si la víctima no paga por la clave de cifrado, una táctica de la que hemos hablado recientemente en nuestra investigación ”Otra vuelta de tuerca”.

El equipo de IR de Sophos observó la actividad descrita en este post en julio de 2024. Para proporcionar algo de contexto, esta actividad se detectó en un único controlador de dominio dentro del dominio Active Directory del objetivo; otros controladores de dominio en ese dominio AD estaban infectados, pero Qilin no les afectaba.

Maniobras iniciales

El atacante obtuvo acceso inicial al entorno mediante credenciales comprometidas. Desgraciadamente, este método de acceso inicial no es nuevo para Qilin (ni para otras bandas de ransomware). Nuestra investigación indicó que el portal VPN carecía de protección de autenticación multifactor (MFA).

El tiempo de permanencia del atacante entre el acceso inicial a la red y el movimiento posterior fue de dieciocho días, lo que puede indicar o no que un intermediario de acceso inicial (IAB) realizó la incursión real. En cualquier caso, dieciocho días después de producirse el acceso inicial, aumentó la actividad del atacante en el sistema, con artefactos que mostraban un movimiento lateral hacia un controlador de dominio utilizando credenciales comprometidas.

Una vez que el atacante llegó al controlador de dominio en cuestión, editó la política de dominio por defecto para introducir un Objeto de Política de Grupo (GPO) basado en el inicio de sesión que contenía dos elementos. El primero, un script de PowerShell llamado IPScanner.ps1, se escribió en un directorio temporal dentro del recurso compartido SYSVOL (SYStem VOLume) (el directorio NTFS compartido ubicado en cada controlador de dominio dentro de un dominio de Active Directory) en el controlador de dominio específico implicado. Contenía un script de 19 líneas que intentaba recopilar datos de credenciales almacenados en el navegador Chrome.

El segundo elemento, un script por lotes llamado logon.bat, contenía los comandos para ejecutar el primer script. Esta combinación dio como resultado la recolección de credenciales guardadas en los navegadores Chrome de las máquinas conectadas a la red. Como estos dos scripts estaban en un GPO de inicio de sesión, se ejecutaban en cada máquina cliente al iniciar sesión.

En los endpoints

Cada vez que se producía un inicio de sesión en un endpoint, el logon.bat iniciaba el script IPScanner.ps1, que a su vez creaba dos archivos: un archivo de base de datos SQLite llamado LD y un archivo de texto llamado temp.log, como se ve en la Figura 1.

Figura 1: llamamos Hemlock (cicuta) a este dispositivo de demostración porque es venenoso: los dos archivos creados por el script de inicio en una máquina infectada

Estos archivos se escribieron en un directorio recién creado en el recurso compartido SYSVOL del dominio y se nombraron con el nombre de host del dispositivo o dispositivos en los que se ejecutaron (en nuestro ejemplo, Hemlock)

La estructura del archivo de base de datos LD se muestra en la Figura 2.

Figura 2: dentro de LD, el archivo de base de datos SQLite colocado en SYSVOL

En un alarde de confianza en que no serían descubiertos ni perderían su acceso a la red, el atacante dejó esta GPO activa en la red durante más de tres días. Esto dio a los usuarios la oportunidad de conectarse a sus dispositivos y, sin saberlo, activar el script de obtención de credenciales en sus sistemas. De nuevo, como todo esto se hizo utilizando un GPO de inicio de sesión, cada usuario experimentaría este robo de credenciales cada vez que se conectara.

Para dificultar la evaluación del alcance del ataque, una vez robados y filtrados los archivos que contenían las credenciales recolectadas, el atacante borró todos los archivos y eliminó los registros de eventos tanto del controlador de dominio como de las máquinas infectadas. Tras borrar las pruebas, procedieron a cifrar los archivos y soltar la nota de rescate, como se muestra en la Figura 3. Este ransomware deja una copia de la nota en cada directorio del dispositivo en el que se ejecuta.

Figura 3: nota de rescate de Qilin

El grupo Qilin volvió a utilizar GPO como mecanismo para afectar a la red, haciendo que creara una tarea programada para ejecutar un archivo por lotes llamado run.bat, que descargaba y ejecutaba el ransomware.

Impacto

En este ataque, el script IPScanner.ps1 tenía como objetivo los navegadores Chrome, estadísticamente la opción con más probabilidades de devolver una abundante cosecha de contraseñas, ya que Chrome posee actualmente algo más del 65% del mercado de navegadores. El éxito de cada intento dependería exactamente de qué credenciales almacenaba cada usuario en el navegador. En cuanto al número de contraseñas que podrían obtenerse de cada máquina infectada, una encuesta reciente indica que el usuario medio tiene 87 contraseñas relacionadas con el trabajo, y aproximadamente el doble de contraseñas personales.

Un ataque de este tipo con éxito significaría que los defensores no solo deben cambiar todas las contraseñas del Directorio Activo, sino que también deberían (en teoría) pedir a los usuarios finales que cambien sus contraseñas de docenas, potencialmente cientos, de sitios de terceros para los que los usuarios han guardado sus combinaciones de nombre de usuario y contraseña en el navegador Chrome. Por supuesto, los defensores no tendrían forma de obligar a los usuarios a hacerlo. En cuanto a la experiencia del usuario final, aunque prácticamente todos los usuarios de Internet han recibido a estas alturas al menos un aviso de “su información ha sido violada” de un sitio que ha perdido el control de los datos de sus usuarios, en esta situación es al revés: un usuario, docenas o cientos de violaciones separadas.

Quizá sea interesante que, en este ataque concreto, se cifraron otros controladores de dominio del mismo dominio de Active Directory, pero el controlador de dominio en el que se configuró originalmente este GPO concreto quedó sin cifrar por el ransomware. Lo que esto haya podido ser (un fallo, un descuido, una prueba A/B del atacante) está fuera del alcance de nuestra investigación (y de este post).

Conclusión

Como era de esperar, los grupos de ransomware siguen cambiando de táctica y ampliando su repertorio de técnicas. El grupo de ransomware Qilin puede haber decidido que, limitándose a atacar los activos de red de sus organizaciones objetivo, se estaban perdiendo algo.

Si ellos, u otros atacantes, han decidido minar también en busca de credenciales almacenadas en endpoints (lo que podría proporcionarles un pie en un objetivo posterior, o un montón de información sobre objetivos de alto valor que explotar por otros medios), puede que se haya abierto un nuevo y oscuro capítulo en la historia de la ciberdelincuencia.

Agradecimientos

Anand Ajjan, de SophosLabs, así como Ollie Jones y Alexander Giles, del equipo de Respuesta a Incidentes, han contribuido a este análisis.

Respuesta y reparación

Las organizaciones y los particulares deben confiar en aplicaciones gestoras de contraseñas que empleen las prácticas recomendadas por la industria para el desarrollo de software, y que sean probadas periódicamente por un tercero independiente. El uso de un gestor de contraseñas basado en navegador ha demostrado ser inseguro una y otra vez, siendo este artículo la prueba más reciente.

La autenticación multifactor habría sido una medida preventiva eficaz en esta situación, como hemos dicho en otras ocasiones. Aunque el uso de la AMF sigue aumentando, un estudio de Lastpass de 2024 indica que, aunque la adopción de la AMF en empresas con más de 10.000 empleados es de un 87%, ese nivel de adopción cae en picado: del 78% en empresas con 1.001-1.000 empleados hasta un 27% de adopción en empresas con 25 empleados o menos. Hablando claro, las empresas deben hacerlo mejor, por su propia seguridad y, en este caso, también por la de otras empresas.

Nuestra propia consulta Powershell.01 fue decisiva para identificar comandos PowerShell sospechosos ejecutados en el curso del ataque. Esa consulta está disponible gratuitamente en nuestro Github, junto con muchas otras.

Sophos detecta el ransomware Qilin como Troj/Qilin-B y con detecciones de comportamiento como Impact_6a y Lateral_8a. El script descrito anteriormente se detecta como Troj/Ransom-HDV.

Exit mobile version