Investigación: Falsos Software de productividad con Inteligencia Artificial (AI) roban sesiones de Facebook

 En la actualidad y ya hace un buen tiempo, en la publicidad de Facebook aparece publicidad (ads) promocionando diversos productos en software de productividad basados en inteligencia artificial, además del enganche que todos estos son totalmente "gratis", lo cual, como puedes ver el título, todo esto es falso y simplemente está montado para robar cuentas a los usuarios.

Todo esto aprovechando el boom popular que son las IA que está metido en todo, y obviamente prometiendo falsas promesas, esto no es nuevo, se ha hecho antes con otros temas populares antes, como lo fue las criptomonedas y entre otros.

Esta investigación la realizo principalmente porque en videos de YouTube siempre explican que los Stealers, como es este caso, roban credenciales y sesiones de los usuarios, que hay que cuidarse, pero simplemente no explican como técnicamente lo hacen, se limitan a solo que roban datos de los navegadores, lo cual está bien que lo digan, hasta MITRE lo hace con su matriz TTP, PERO, no lo explican técnicamente como lo hacen, y este es el fin de mi publicación.

Bueno, no más vueltas y vamos al asunto, como dije, esto comienza con un ads en Facebook, en el cual se visualiza así:


Un falso software para marketing con IA.

El cual al hacer click en el enlace te manda a su sitio y en el cual aparece un link para descargar un .rar (https://dl.dropboxusercontent[.]com/s/dyel97tz0hjvtr3/Jasper_setup.rar?dl=0) y por debajo una clave para descomprimirlo.


Una vez descomprimido aparece un archivo .msi


El cual al ejecutar te aparece una ventana de instalación y en medio del proceso al casi finalizar cierra chrome (si es que está abierto) y lo vuelve a ejecutar (¿para qué? tiene su razón, más adelante lo explicaremos.)


Entre medio de lo anterior aparece lo siguiente, danger, danger. (si, cierra chrome como dije antes.)


¿Y ahora qué? pues nada, no hay software prometido ni nada, aparentemente no hace nada, no hay más que hacer. Aparentemente no hace nada, pero no es así y pare eso estamos, ahora iremos por lo que sucede por detrás, no que no vemos, vamos por eso.

Antes que el instalador terminara, en la sección anterior, este ejecuta este comando:

C:\Windows\system32\cmd.exe /c ""C:\Program Files (x86)\Setup\Setup\setup.bat" "
¿Qué hace? ejecuta el script batch "setup.bat", ¿que hay ahi? pues viendo su contenido tiene esto:

Oh! casualmente una conducta parecida a lo que vimos en pantalla.
1. cierra chrome.
2. timeout, este sirve para detener el proceso, en este caso 1 segundo, esto sirve con propósitos de evadir la detección.
3. inicia chrome nuevamente, pero ¿no se ve medio raro? sí, es raro, con este comando este restaura la sesión anterior del usuario y además carga una extension que venía con la instalación del malware, muy sospechoso ¿no?


Hay que tener en cuenta que es importante cargar la sesión anterior porque el malware asegura más el obtener sesiones validas.

Lo que sigue es hacer un análisis estático del malware, que en este caso se centra en la extension de chrome que pudimos ver anteriormente y que era cargada. Hay que tener en cuenta que posiblemente este malware anteriormente pudo hacer un reconocimiento del sistema para determinar si se encontraba en un entorno virtualizado pera el análisis dinámico de malware.

Bueno, no nos desviemos del tema, uno de los archivos importante de una extension es el archivo "manifest.json", en este se configura los permisos que se le da a las extensiones:

{
"name": "Google Translate",
"description": "View translations easily as you browse the web. By the Google Translate team",
"version": "2.18.2",
"background": {
    "service_worker": "background.js"
},
"content_scripts": [
  {
"matches": ["*://*.facebook.com/*"],
"js": ["content.js"]
  }
],
"icons": {
        "16": "favicon.png",
    "48": "favicon.png",
    "128": "favicon.png"
    },
"host_permissions": [
    "<all_urls>"
],
"permissions": [
        "cookies",
"tabs",
"scripting"
    ],
"externally_connectable": {
    "matches": [
"<all_urls>"
]
},
"manifest_version": 3,
    "update_url": "https://clients2.google.com/service/update2/crx"
}

¿Qué podemos ver en este manifiesto? La extension se hace llamar google translate, obviamente para que el usuario no vea nada anormal en este, vemos que tiene permisos para ver las cookies (sesiones), a las pestañas de navegador y de scripting, este es importante ya que como podemos ver, la carga maliciosa está en el archivo "background.js" ya que este está toda la programación.


cómo podemos ver, en esta herramienta de análisis de extensiones, se le considera crítico para la seguridad el dar acceso total a las cookies y las pestañas del navegador.


A modo de ejemplo mostrare como se obtiene las cookies de un sitio manualmente, esto mismo hace el malware en lo que explicaremos más adelante, debes visitar el sitio en este caso twitter y ejecutar el código JavaScript que ves ahi y obtendrás las cookies del sitio:




Ahora hemos llegado a la parte más importante de la investigación, además querer explicar el proceso de como roban las sesiones más allá de solo decir que estos malware lo hacen. Viendo el código de "background.js" veremos que esta ofuscado, esta es una técnica para ser ilegible el código y de esa forma los analistas no entiendan lo que hace este malware, según el nivel de experiencia de los cibercriminales estos pueden estar mejor o en menor medida ofuscado, veamos cómo se ve este:

Como ven, no se entienda nada, totalmente ilegible

PERO exciten herramientas que no ayudan a desofuscar el código, no son 100% infalibles ni tampoco te lo dejaran 100% legible, todo depende del caso, probablemente si el código no es lo suficientemente legible tendrás que hacerlo tu mismo a mano, bueno, después de desofuscar lo más posible en este caso quedo el código así, y lo explicaremos en secciones:

En esta parte del código podemos ver que obtiene todas las cookies de facebook.com y la almacena en la variable "coo".


La siguiente parte relevante del código es con la ya sesión del usuario obtenida, este obtiene el token y con este el malware obtiene los datos del usuario en ads de Facebook:

PD: el código de esta sección es mucho más largo, pero hace lo que antes explique, obtiene datos de métricas.


Y finalmente el malware envía la información por método GET, en la cual envía las cookies, las métricas de ads, el estado de cuenta aparentemente, además de usar un user-agent modificado el cual termina en "*jas|"  este sirve para identificar que es el malware el que envía el REQUEST a la web c2 (servidor del cibercriminal):
ademas como veremos en la siguiente imagen, es importante este user-agent modificado, ya que si el REQUEST es hecho por cualquier otro cliente este simplemente se ignorará y quedara como otro registro más del servidor, pero si este concuerda seguramente en el back-end tiene una implementación en que tomara los datos de la URL generada por el método GET y guardara los datos en su base de datos.

Al acceder a la web que estaba referenciada como conexión en el código del malware podemos apreciar que es una simple web montada con WordPress, en el cual no debería tener nada en especial, lo importante debería estar en el back-end el cual inspecciona, como lo dijimos antes, la URL enviada por el método GET.


Y es así como los malware roban tus sesiones y tu cuenta para sus propósitos oscuros, en este caso se centra en Facebook pero es común que te roben otras cuentas importantes, como Twitter, YouTube y otros, ademas este no es el único método, hay otros que simplemente roban el archivo "profile" (o el nombre determinado para el navegador) el cual tiene una base de datos en SQLI de las cookies, aunque con la dificultad que estos vienen cifrados, pero en realidad es una implementación bastante mala y hay métodos de descifrarla si se busca un poco.

Asi llegamos al final de esta investigación, como dije en un principio, más allá de las recomendaciones de no instalar cualquier cosa que te prometa maravillas, el cuidarse al navegar y el decir que los Stealers roban tus credenciales y sesiones, yo aquí quise mostrar como lo hacen.


IoC:
sha256 .msi: 7c20e2d0be3fb27f214e1504884495b461b087d20803a20d0c3de62fd024ded1
https://www.jas-per.life/
C2: https://managedkv.com
C2 IP: 198.252.99.154
Virustotal: Link
Mi reporte parcial original: Link

Comentarios

Entradas populares de este blog

Athlon 3000G, ¿no compatible con Windows 11?