No hace mucho postee sobre este mismo tema. Poco tiempo después solicité a un Administrador que borrara el post. Los motivos no importan. Ahora, por otros motivos, que tampoco importan, vuelvo a comentarlo. A ver si alguien me aclara ciertas ideas. Va a ser un poquito largo... A los interesados, id ocupando vuestras localidades, la función empieza ya....
Antes de nada, GRACIAS a Novlucker por indicarme en el anterior post -borrado- datos que han resultado de vital importancia para seguir investigando. Sin su ayuda, no me hubiera dado cuenta ni de la mitad de las cuestiones que expondré a continuación.
Os pongo en situación:
- Dominio de unos 100 ordenadores -o más- infectados por el troyano Qbot / QaKbot.
Fichero examinado por VirusTotal: http://www.mediafire.com/?k44b4ysibd9lo3m - Equipo de prueba: Windows XP SP3 con IE7 y McAfee 8.5 Sdat 6183 / W7 con IE8 con el mismo antivirus
Sí, lo sé. Ese antivirus a mí tampoco me convence. Pero... Es lo que hay.
Para empezar, a los interesados, os cuelgo las muestras 'del amigo':
http://www.mediafire.com/?r1rep0l2u6j54d2 (contraseña virus)
Conforme lo observado. El gusano -asqueroso, baboso y arrastrao- se comporta de la siguiente manera:
Citar
- Actúa como Keylogger guardando contraseñas y demás cuestiones que realice el correspondiente usuario.
Aquí encontraréis más datos. Lo único que la ruta de ejecución es diferente.
- Se acopla/inyecta a los procesos "explorer" e "iexplore".
- Impide la ejecución de las extensiones 'exe'. Indicando errores con cada aplicación que queramos iniciar. Por ejemplo el antivirus: "La aplicación o DLL <nombre aplicación>. <ruta del gusanos/nombre del gusanos> no es una imagen válida de Windows.")
- Crea la carpeta que veréis en el link en la ruta: "C:\Documents and Settings\All Users".
- En cuanto se ejecuta -archivo de nombre aleatorio que llamaremos 'gusano'-. Realiza conexiones a varios ftp y/o páginas web.
- Crea un fichero dbg.txt en 'la raíz' mostrando cómo se va comportando. Vamos, que 'el creador del amigo', parece que se ríe en nuestra cara, diciéndonos todo lo que está haciendo y cómo lo está haciendo.
- Crea una clave en HKLM\Software\Microsoft\Windows\CurrentVersion\Run con nombre 'gusano' para asegurarse la ejecución en el inicio de Windows.
- Crea una tarea para lanzarse cada 'x' tiempo de 'gusano'.
- Va creando varios archivos en la raíz. Sin atributos de oculto ni sistema. Se presupone que estos archivos son muestras de nuevos virus/troyano, puestos que son detectados por McAfee con otro nombre (Generic.dx!uwy). Además, se ha comprobado que, en ordenadores infectados durante varios días, tienen MalwareVariado. Incluso muestras de Conficker.C
- Crea copia de sí mismo en C:\Windows\temp. de 'gusano'.
- Crea carpeta de nombre 'gusano' en "c:\Documents and Settings\LocalService".
- Se propaga por la LAN mediante NetBios. Puertos 139 y 445.
Eso es lo que he podido ver. Ahora bien, después de eliminar todo lo comentado, en el siguente reinicio, al poco tiempo, vuelve a infectar la máquina. Lo cual, me plantea la siguiente cuestión. El ordenador se vuelve a infectar porque (1) No se elimina por completo Ó (2) Porque, al utilizar los puertos 139 y 445, abiertos por defecto en Windows para las conexiones de unidades compartidas e impresoras, mientras haya otros equipos infectados, podrá seguir accediendo (y reinfectando) a los ordenadores que han sido limpiados.
Al parecer, utiliza el mismo método que en su momento Conficker. Vulnerabilidad que, en principio, fue solucionada por Microsoft con el correspondiente parche. O quizá no se trate de ninguna vulnerabildad. Quizá, sencillamente, como se ha comentado utiliza esos puertos que, por defecto, están abiertos y, en un dominio, con tantos ordenadores es inviable cerrarlos.
CONEXIONES
Vistas mediante el mencionado fichero dbg.txt que crea en la raíz.
FTPs a los que se conecta para subir los datos almacenados de los usuarios.
Citar
[ftphost_1] _var_value=[72.29.90.67]
[ftphost_2] _var_value=[ftp.flwest.com]
[ftphost_3] _var_value=[ftp.maybournehotelprojects.co.uk]
[ftphost_4] _var_value=[66.219.30.219]
[ftphost_5] _var_value=[72.29.92.27]
[ftphost_6] _var_value=[174.122.112.234]
[ftphost_7] _var_value=[74.55.65.186]
[ftphost_2] _var_value=[ftp.flwest.com]
[ftphost_3] _var_value=[ftp.maybournehotelprojects.co.uk]
[ftphost_4] _var_value=[66.219.30.219]
[ftphost_5] _var_value=[72.29.92.27]
[ftphost_6] _var_value=[174.122.112.234]
[ftphost_7] _var_value=[74.55.65.186]
Conexiones que realiza al ejecutarse.
Supongo que, tal y como se ha dicho anteriormente, para descargarse muestras de más malware. Comprobadas mediante TcpView:
Citar
p35.ich-9.com (174.122.112.234) (Estados Unidos)
pass51.dizinc.com (72.29.92.27) (Estados Unidos)
p35.ich-9.com (174.122.112.234) (Estados Unidos)
john316.hostkansas.com (74.55.65.186) (Estados Unidos)
212.117.174.170.server.lu (Luxemburgo).
91.213.8.192 (Ucrania).
Deploy.akamaitechnologies.com
cv4.compuvisionenlinea.com
6.1c.78ae.static.theplanet.com
pass51.dizinc.com (72.29.92.27) (Estados Unidos)
p35.ich-9.com (174.122.112.234) (Estados Unidos)
john316.hostkansas.com (74.55.65.186) (Estados Unidos)
212.117.174.170.server.lu (Luxemburgo).
91.213.8.192 (Ucrania).
Deploy.akamaitechnologies.com
cv4.compuvisionenlinea.com
6.1c.78ae.static.theplanet.com
CUESTIONES VISTAS EN ARCHIVO dbg.txt
Ruta donde se instala. Inyectándose en el proceso "iexplore"
Citar
qbot: DllMain(): c:\documents and settings\all users\xeay\xeay.dll is loaded by proccess [c:\archivos de programa\internet explorer\iexplore.exe])
A ver si alguien lo interpreta...
Citar
qbot: load_conf() started
qbot: load_conf() do lock conf file
qbot: CreateMutex("xea.dll_gl") success hMutex=0000060C!
qbot: load_conf() do sxor2_open()
qbot: sxor2_open(): crypt_buf_len=1138 rlen: 1138
qbot: sxor2_decrypt_full(): format is good ver=2
qbot: sxor2_decrypt_full(): ver=2 do sxor_decrypt()
qbot: ===>>> load_conf(): sxor2_parse_strings() done: ctx->str_i=26
qbot: expand_vars() ok: 10 -> 10 bytes
qbot: SessSpyPostThreadProc() started
qbot: ===>>> Created thread id=85c [sesspostthread]
qbot: SessSpyPipeReadMessage(): Waiting for connections pipe_name=[\\.\pipe\xeay]...
qbot: force_exec_pid(): Remote thread finished ok. pid=0
qbot: force_exec_pid(""c:\documents and settings\all users\xeay\xeaypv.exe" "c:\documents and settings\all users\xeay\xeaygi.dll"") success: pid=3624
qbot: force_exec_pid() returned 0
qbot: ===>>> Created thread id=970 [swatcher]
qbot: ===>>> Created thread id=c84 [flasher]
qbot: DllMain(): DLL_THREAD_ATTACH
qbot: DllMain(): DLL_THREAD_ATTACH
qbot: ===>>> &call_stack_marker=03F7FF94
qbot: ===>>> cValues=8
qbot: ===>>> set_var(): var_name=[irc_pass] _var_value=[Zdnimast212424252627] var_value=[Zdnimast212424252627]
qbot: load_conf() do lock conf file
qbot: CreateMutex("xea.dll_gl") success hMutex=0000060C!
qbot: load_conf() do sxor2_open()
qbot: sxor2_open(): crypt_buf_len=1138 rlen: 1138
qbot: sxor2_decrypt_full(): format is good ver=2
qbot: sxor2_decrypt_full(): ver=2 do sxor_decrypt()
qbot: ===>>> load_conf(): sxor2_parse_strings() done: ctx->str_i=26
qbot: expand_vars() ok: 10 -> 10 bytes
qbot: SessSpyPostThreadProc() started
qbot: ===>>> Created thread id=85c [sesspostthread]
qbot: SessSpyPipeReadMessage(): Waiting for connections pipe_name=[\\.\pipe\xeay]...
qbot: force_exec_pid(): Remote thread finished ok. pid=0
qbot: force_exec_pid(""c:\documents and settings\all users\xeay\xeaypv.exe" "c:\documents and settings\all users\xeay\xeaygi.dll"") success: pid=3624
qbot: force_exec_pid() returned 0
qbot: ===>>> Created thread id=970 [swatcher]
qbot: ===>>> Created thread id=c84 [flasher]
qbot: DllMain(): DLL_THREAD_ATTACH
qbot: DllMain(): DLL_THREAD_ATTACH
qbot: ===>>> &call_stack_marker=03F7FF94
qbot: ===>>> cValues=8
qbot: ===>>> set_var(): var_name=[irc_pass] _var_value=[Zdnimast212424252627] var_value=[Zdnimast212424252627]
Renombrando a nuestro amigo...
Citar
qbot: ===>>> set_var(): var_name=[alias__qbotinj.exe] _var_value=[xeay.exe] var_value=[xeay.exe]
qbot: ===>>> set_var(): var_name=[alias__qbot.dll] _var_value=[xeay.dll] var_value=[xeay.dll]
qbot: ===>>> set_var(): var_name=[alias__qbotnti.exe] _var_value=[xeaypv.exe] var_value=[xeaypv.exe]
qbot: ===>>> set_var(): var_name=[alias_seclog.txt] _var_value=[xe.dll] var_value=[xe.dll]
qbot: ===>>> set_var(): var_name=[alias_si.txt] _var_value=[vbywvu5] var_value=[vbywvu5]
qbot: ===>>> set_var(): var_name=[alias_ps_dump] _var_value=[pufi] var_value=[pufi]
qbot: ===>>> set_var(): var_name=[alias_qa.bin] _var_value=[nbyh9q] var_value=[nbyh9q]
qbot: ===>>> set_var(): var_name=[alias__qbot.dll] _var_value=[xeay.dll] var_value=[xeay.dll]
qbot: ===>>> set_var(): var_name=[alias__qbotnti.exe] _var_value=[xeaypv.exe] var_value=[xeaypv.exe]
qbot: ===>>> set_var(): var_name=[alias_seclog.txt] _var_value=[xe.dll] var_value=[xe.dll]
qbot: ===>>> set_var(): var_name=[alias_si.txt] _var_value=[vbywvu5] var_value=[vbywvu5]
qbot: ===>>> set_var(): var_name=[alias_ps_dump] _var_value=[pufi] var_value=[pufi]
qbot: ===>>> set_var(): var_name=[alias_qa.bin] _var_value=[nbyh9q] var_value=[nbyh9q]
Felicidades a los que hayan llegado hasta aquí...
LA DUDA como comentaba al principio, es... ¿Cómo erradicarlo?
- Cortar NetBios es inviable.
- McAfee, en la mayoría de ordenadores, ni lo huele
- Eliminarlo manualmente no tiene complicación. Se matan los procesos "explorer" e "iexplore" y mediante consola se van limpiando las rutas indicadas anteriormente. Además, una vez borrada la carpeta de "AllUsers", se puede volver a cargar el proceso explorer y borrarlo fácilmente.
Si el Sr. Qbot no puede conectar con los ftp's para trasmitir los datos almacenados, pierde funcionalidad y se asegura la confidencialidad de los usuarios. Por otro lado, si tampoco puede conectarse a páginas desde las cuales, deduzco, se descarga más malware, tampoco podrá infectar más, si cabe, los ordenadores. Mientras... A ver si el Mr. McAfee se digna a borrarlo por completo...
Se aceptan sugerencias...
Por último, un dato curioso:
Fecha 26 Abril 2010
Citar
Symantec aseguraba en su blog: “Un aspecto poco usual de Qakbot es que, aunque su propósito es robar información asociada a los usuarios finales, también tiene éxito a la hora de comprometer los ordenadores en entornos corporativos y departamentos gubernamentales”.
Y es que Qakbot ya ha comprometido más de 1.100 ordenadores en todo el mundo, concretamente hay unos 100 ordenadores comprometidos en una red gubernamental regional de Brasil, y también ha llegado a infectar la red de la organización nacional de salud de Reino Unido. Los datos incluyen información de tarjetas de crédito, credenciales de redes sociales y correos web e historiales de búsquedas en Internet.
Y es que Qakbot ya ha comprometido más de 1.100 ordenadores en todo el mundo, concretamente hay unos 100 ordenadores comprometidos en una red gubernamental regional de Brasil, y también ha llegado a infectar la red de la organización nacional de salud de Reino Unido. Los datos incluyen información de tarjetas de crédito, credenciales de redes sociales y correos web e historiales de búsquedas en Internet.
Por último... Encontrado en el fichero dbg.txt:
Citar
qbot: ===>>> set_var(): var_name=[cleanup] _var_value=["c:\documents and settings\all users\xeay\xeaypv.exe" xeaygi.dll remove] var_value=["c:\documents and settings\all users\xeay\xeaypv.exe" xeaygi.dll remove]
Según eso, el gusano se 'autoeliminaría'/limpiaría mediante ese comando, pero... Conforme las pruebas realizadas... Na de na.
Se aceptan opiniones. Mientras, voy a tomarme unas copitas con 'el amigo'. A ver si le emborracho, lo amordazo y lo empaqueto en cualquier cohete hacia la luna...
Saludos.