Resumen general
Los investigadores de Proofpoint detectaron recientemente un ataque de malvertising (o publicidad maliciosa) a gran escala perpetrado por el grupo conocido como KovCoreG, conocidos por distribuir el malware de anuncios fraudulentos llamado Kovter y por ser los cabecillas del modelo de afiliación que distribuye el Kovter más ampliamente. Esta cadena de ataque dejó al descubierto a millones de víctimas potenciales en los EE. UU., Canadá, el Reino Unido y Australia, utilizando para ello ligeras variaciones de un mecanismo de actualizaciones falsas de navegador que funcionó en los tres principales navegadores web usados en Windows. El ataque ha estado activo por más de un año y continúa haciendo estragos en otros lugares, pero esta trayectoria de infección específica se desactivó cuando el operador del sitio y la red de anuncios fueron notificados de la actividad.
Antecedentes
A pesar de los drásticos descensos en la actividad de los kits de exploits durante el año pasado, el malvertising sigue siendo una fuente de ingresos atractiva para actores que pueden lograr una escala de aplicación lo suficientemente grande y entregar el malware eficazmente en un entorno en el que las máquinas vulnerables son cada vez menos abundantes. Para aumentar sus tasas de infección y evadir mejor la detección por parte de proveedores e investigadores, los actores de amenazas se han volcado al uso de técnicas avanzadas de filtrado e ingeniería social en vez de usar los exploits indiscriminadamente.
Pocos grupos son capaces de infiltrarse en la cadena de anuncios de las páginas web más visitadas. Recientemente, hemos visto a algunos de estos grupos, incluyendo a SadClowns [1], GooNky [2], VirtualDonna [3] and AdGholas [4]. Si bien hemos hablado de Kovter anteriormente [14], no hemos tenido oportunidad de analizar en profundidad una operación del KovCoreG (alias MaxTDS por FoxIT InTELL). En este artículo se habla de una reciente campaña de KovCoreG y se describe lo que se sabe del estado actual de su muy activo mecanismo de ingeniería social [5-11].
La cadena de infección
La cadena de infección en esta campaña apareció en PornHub (que ocupa la posición #21 de Alexa para los EE. UU. y la posición #38 a nivel mundial al momento de escribir este documento), y abusaba de la red de anuncios de Traffic Junky. Es importante resaltar que tanto PornHub como Traffic Junky actuaron rápidamente para remediar esta amenaza al recibir la notificación.
Estudiamos tres casos de la cadena en Windows: Chrome, Firefox y Microsoft Edge/Internet Explorer (Figura 1). Hablaremos en detalle de la variante de Chrome, pero los tres casos operan de manera similar.
Figura 1: las tres plantillas de ingeniería social de KovCoreG que observamos
La Figura 2 muestra la cadena de infección completa de KovCoreG en PornHub mediante el “callback” de Kovter a su centro de comando y control (C&C).
Figura 2: 1 de octubre de 2017 - Cadena de infección completa de KovCoreG
La cadena comienza por un redireccionamiento malintencionado en avertizingms[.]com, que inserta una llamada alojada detrás de KeyCDN, una gran red de distribución de contenidos.
Parece que las impresiones del malvertising están restringidas por filtrados tanto geográficos como de ISP. Para los usuarios que superan estos filtros, la cadena entrega un paquete que contiene un JavaScript sumamente ofuscado, que es idéntico al utilizado por Neutrino y NeutrAds [15]. Sin embargo, debemos resaltar que no creemos que haya una conexión fuerte entre ambos grupos, más allá de compartir el código o un codificador común con un nuevo cliente/socio.
Figura 3: KovCoreG enviando una llamada de señuelo al evadir visitantes o sistemas no deseados
El análisis de este primer paso está en curso, pero contiene varios componentes, incluyendo el filtrado y la determinación de huella digital del huso horario, dimensiones de la pantalla, idioma (usuario/navegador), longitud del historial de las ventanas actuales del navegador y creación de ID únicos mediante Mumour [12].
Las Figuras 4-6 muestran las falsas pantallas de actualización que aparecen durante la cadena de infección, invitando al usuario a abrir el archivo descargado. Los archivos varían dependiendo del navegador que se use.
Figura 4: la plantilla para navegador Chrome - KovCoreG simula una “Actualización crítica de Chrome” y entrega un archivo zip runme.js después de que el usuario hace clic
Figura 5: la plantilla para navegador Firefox - KovCoreG simula una “Actualización crítica de Firefox” y entrega un archivo firefox-patch.js después de que el usuario hace clic
Figura 6: la plantilla para navegador Microsoft Edge/Internet Explorer - KovCoreG simula una “Actualización de Flash Player” falsa (“Su Flash Player podría estar desactualizado”) y entrega un archivo FlashPlayer.hta después de que el usuario hace clic
Figura 7: archivo zip runme.js de una falsa actualización de Chrome; la víctima debe abrir explícitamente este archivo, porque la cadena no se basa en exploits
El archivo runme.js file asociado con la falsa actualización de Chrome lleva al mismo servidor que aloja el mecanismo de ingeniería social. Esto añade una capa adicional de protección contra la reproducción o el estudio. Los analistas no podrán llegar al siguiente paso en la cadena si su IP no ha hecho “check-in” en el host del malvertising. Esto hacer muy poco probable que se pueda ejecutar un JavaScript individualmente, y ofrece la carga útil en un entorno de pruebas. Esta es la causa más probable de que el componente de la cadena no se haya documentado antes.
Después, el JavaScript descarga los archivos “flv” y “mp4”. El archivo “flv” consta de los dígitos “704” seguidos por una clave rc4. El archivo “mp4” es una carga útil intermedia, encriptada con la clave rc4 del archivo “flv”, que posteriormente se codifica hexadecimalmente. En este caso, el “704” seguramente sea el ID interno de la campaña.
La carga útil intermedia en sí es más JavaScript, que en este caso incluye un script codificado de Powershell que incrusta un shellcode. Este shellcode descarga y lanza un archivo “avi”, que es la carga útil de Kovter, con una codificación RC4 que, en ese pase en particular, usa la clave “hxXRKLVPuRrkRwuaPa” almacenada en el shellcode.
Kovter es conocido, entre otras cosas, por su singular mecanismo de persistencia. Las Figuras 8-10 muestran, respectivamente, un asiento de registro y un acceso directo al archivo .bat, y al archivo .bat en sí. Estos son engranajes del mecanismo, que han sido descritos anteriormente por Microsoft [13].
Figura 8: artefacto del mecanismo de persistencia de Kovter (entrada de registro)
Figura 9: artefacto del mecanismo de persistencia de Kovter (acceso directo al archivo .bat)
Figura 10: artefacto del mecanismo de persistencia de Kovter
Conclusión
La combinación de grandes campañas de publicidad maliciosa en páginas web de muy alto ranking con sofisticados mecanismos de ingeniería social que convencen a los usuarios de que se infecten a sí mismos implican que la potencial exposición al malware es bastante elevada, llegando a millones de internautas. Una vez más, podemos ver actores aprovechándose del factor humano mientras adaptan las herramientas y enfoques a un entorno en el que los ataques tradicionales de kits de exploit son menos eficaces. Si bien en este caso la carga útil es malware de fraude con anuncios, también podría haber sido ransomware, un ladrón de información o cualquier otro tipo de malware. Pero más allá de esto, los actores de amenazas están siguiendo al dinero y buscando combinaciones más eficaces de ingeniería social, selección de objetivos y prefiltrado para infectar a nuevas víctimas a gran escala.
Agradecimientos:
Queremos agradecer a
- @Malc0de por su colaboración en este estudio.
- Pornhub, KeyCDN y Traffic Junky por su rápida acción al ser notificados.
Referencias
[2] https://www.proofpoint.com/us/threat-insight/post/The-Shadow-Knows
[3] http://malware.dontneedcoffee.com/2015/10/a-doubleclick-https-open-redirect-used.html
[5] https://support.mozilla.org/en-US/kb/i-found-fake-firefox-update
[6] https://twitter.com/compvla/status/810923447601790976
[7] https://productforums.google.com/forum/#!topic/chrome/mLKWHEAGBSo
[8] https://www.bleepingcomputer.com/news/security/skype-malvertising-campaign-pushes-fake-flash-player/
[9] https://twitter.com/JAMESWT_MHT/status/867678039798403072
[10] https://bartblaze.blogspot.co.uk/2017/09/malicious-adclick-networks-common-or.html
[11] http://executemalware.com/?p=432
[12] https://andywalpole.me/blog/140739/using-javascript-create-guid-from-users-browser-information
[14] https://www.proofpoint.com/us/threat-insight/post/spike-kovter-ad-fraud-malware-clever-macro-trick
Indicadores de compromiso (IOC, del inglés “Indicators Of Compromise”)
IOC |
IOC Type |
Description |
www.advertizingms[.com|204.155.152.173 |
dominio|IP |
Servidor Epom sospechoso 2017-10-01 |
*-6949.kxcdn.com |
dominios |
Subdominio de un cliente rebelde 2017-10-01 |
phohww11888[.org|192.129.215.155 |
dominio|IP |
KovCoreG soceng host 2017-10-01 |
cipaewallsandfloors[.net|192.129.162.107 |
dominio|IP |
KovCoreG soceng host 2017-10-01 |
b8ad6ce352f502e6c9d2b47db7d2e72eb3c04747cef552b17bb2e5056d6778b9 |
sha256 |
T016d6n7t96x2hc43r5f3u6gs61d.zip (runme.js en zip) 2017-10-01
|
4ebc6eb334656403853b51ac42fb932a8ee14c96d3db72bca3ab92fe39657db3 |
sha256 |
FlashPlayer.hta 2017-10-01 |
a9efd709d60e5c3f0b2d51202d7621e35ba983e24aedc9fba54fb7b9aae14f35 |
sha256 |
Firefox-patch.js 2017-10-01
|
0e4763d4f9687cb88f198af8cfce4bfb7148b5b7ca6dc02061b0baff253eea12 |
sha256 |
Kovter 2017-10-01
|
f449dbfba228ad4b70c636b8c46e0bff1db9139d0ec92337883f89fbdaff225e |
sha256 |
Kovter 2017-10-01 |
Firmas Suricata/Snort ET y ETPRO
2823606 || ETPRO CURRENT_EVENTS Posible redireccionamiento malintencionado a EK Dec 04 2016
2022636 || ET INFO SUSPICIOUS Archivo JS único dentro de una descarga ZIP (observado como cebo en campañas de malspam)
2018358 || ET INFO GENERIC SUSPICIOUS POST a formato “Dotted Quad” con navegador falso 1
2810582 || ETPRO TROJAN WIN32/KOVTER.B “Check-in” 2
Apéndice A:
Ejemplo de configuración de Kovter:
cp1: 198.106.131.66:80,128.227.37.159:53635,145.88.81.116:80,19.240.49.245:80,53.92.175.216:80,162.162.89.123:80,32.229.45.97:443,4.225.180.41:8080,238.186.215.63:80,38.82.31.87:80,112.140.163.32:80,45.193.7.134:80,175.165.34.220:80,241.224.231.165:80,104.147.195.64:80,240.101.37.16:8080,108.127.72.16:443,171.61.97.177:443,157.97.103.190:443,110.176.29.85:80,38.189.233.232:80,217.98.225.232:49411,77.104.102.93:80,18.153.103.194:80,4.36.195.194:80,49.115.126.134:80,163.67.178.140:443,111.102.161.80:80,191.157.182.37:80,54.147.36.248:49420,29.178.233.125:26103,93.250.105.38:8080,172.216.42.235:443,143.140.150.221:80,52.147.112.46:80,165.192.115.158:80,154.186.98.132:443,69.224.50.174:80,207.90.221.249:80,37.137.209.187:80,29.238.249.141:80,74.51.220.188:80,140.87.139.238:8080,194.52.186.243:8080,192.195.60.158:8080,129.194.69.83:443,171.111.108.165:80,239.46.99.172:41118,3.137.221.221:57410,18.151.63.243:80,2.47.245.189:80,184.3.3.54:443,113.162.84.109:443,67.155.140.238:80,124.241.35.89:80,109.107.102.171:8080,189.173.140.179:80,60.108.109.62:80,28.175.68.111:443,109.177.183.248:80,80.116.145.114:443,95.223.57.196:8080,150.130.56.35:80,162.94.161.16:80,68.43.75.135:443,103.243.74.30:80,110.97.122.223:56537,217.190.103.158:80,252.32.129.31:80,36.125.246.51:80,59.93.100.193:80,181.65.232.162:51668,86.4.165.53:80,126.243.153.28:80,150.60.190.180:80,225.50.135.20:80,194.113.174.132:80,121.57.168.97:80,210.183.222.119:8080,245.224.169.18:22549,63.77.218.243:80,188.37.101.207:8080,40.65.30.171:80,151.227.80.248:443,35.175.158.154:443,174.143.123.87:443,152.150.237.115:443,203.47.174.49:80,88.63.60.3:24597,230.55.202.166:52832,122.68.242.21:80,144.73.35.41:40286,17.156.104.220:8080,22.14.201.51:443,9.110.104.239:80,79.38.11.244:80,132.57.113.153:80,243.42.115.22:80,82.39.237.185:80,184.206.16.130:80,117.138.112.220:80,176.44.160.187:80,31.64.88.144:80,89.110.147.2:43937,190.114.255.205:26337,185.120.14.76:443,142.58.189.80:8080,193.146.45.23:33617,98.102.72.235:443,85.25.147.17:443,83.244.194.235:80,23.238.20.223:25153,148.243.122.57:443,190.95.194.164:443,130.131.2.244:8080,84.70.191.66:80,250.206.210.124:50346,71.7.64.36:8080,239.79.33.171:80,64.234.199.207:80,74.83.197.63:443,133.172.91.132:23896,85.82.64.209:80,135.216.97.170:80,81.248.122.251:80,185.230.47.137:80,121.219.110.183:443,135.60.116.225:443,225.55.17.34:443,50.168.224.146:80,58.227.76.179:80,179.108.196.226:8080,91.208.219.18:37136,98.77.12.68:80,237.123.29.16:80,79.183.99.225:80,156.196.85.80:80,9.187.104.234:443,213.70.128.176:443,25.19.163.36:80,175.18.209.204:80,84.27.216.183:80,84.192.55.163:55289,64.95.202.42:80,159.111.143.80:80,167.99.106.203:443,26.220.139.229:443,1.213.151.251:54905,234.187.238.142:443,46.236.232.87:80,198.139.215.141:41121,58.246.254.243:80,218.127.244.216:80,245.173.244.240:80,
cp1cptm: 30
cptmkey: e086aa137fa19f67d27b39d0eca18610
keypass: 65537:19522997575054907426554839772202893949064667436330012851486601573672578014023529616671665555927323094351879155591436487128820172552469735659517542751735426712295686609130477424093114196023150427769866831977132493325789625582690673761599383991535000872703053188107144540678963887449541977716556272360743912300213554790082676478081366256001689695367664109647204683040472995564506452532881927504362622488073259160546226002887661491089819185150097820082274803050015187526359970203832566435923214708589228221527050531432943671054442357162433286543257082235512170086631319042116775032280820629831168914542642499106397564761
passdebug: 0
debugelg: 1
elgdl_sl: 0
dl_slb_dll: 0
b_dllnonul: http://109.120.179.92/upload2.php
nonuldnet32: http://download.microsoft.com/download/0/8/c/08c19fa4-4c4f-4ffb-9d6c-150906578c9e/NetFx20SP1_x86.exe
dnet32dnet64: http://download.microsoft.com/download/9/8/6/98610406-c2b7-45a4-bdc3-9db1b1c5f7e2/NetFx20SP1_x64.exe
dnet64pshellxp: http://download.microsoft.com/download/E/C/E/ECE99583-2003-455D-B681-68DB610B44A4/WindowsXP-KB968930-x86-ENG.exe
pshellxppshellvistax32: http://download.microsoft.com/download/A/7/5/A75BC017-63CE-47D6-8FA4-AFB5C21BAC54/Windows6.0-KB968930-x86.msu
pshellvistax32pshellvistax64: http://download.microsoft.com/download/3/C/8/3C8CF51E-1D9D-4DAA-AAEA-5C48D1CD055C/Windows6.0-KB968930-x64.msu
pshellvistax64pshell2k3x32: http://download.microsoft.com/download/1/1/7/117FB25C-BB2D-41E1-B01E-0FEB0BC72C30/WindowsServer2003-KB968930-x86-ENG.exe
pshell2k3x32pshell2k3x64: http://download.microsoft.com/download/B/D/9/BD9BB1FF-6609-4B10-9334-6D0C58066AA7/WindowsServer2003-KB968930-x64-ENG.exe
pshell2k3x64cl_fv: 0
cl_fvfl_fu: https://fpdownload.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_24_active_x.exe
fl_fumainanti: DD1D:1:DD1DDD2D:1:DD2DDD3D:1:DD3DDD4D:1:DD4DDD5D:0:DD5DDD6D:1:DD6DDD7D:1:DD7DDD8D:1:DD8DDD9D:1:DD9DDD10D:1:DD10DDD11D:0:DD11DDD12D:1:DD12DDD13D:1:DD13DDD14D:1:DD14DDD15D:1:DD15DDD16D:1:DD16DDD17D:1:DD17Dal:http://109.120.179.92/upload.php:al