[原创]文本特征码定位器(6-10 Update)
信息来源:邪恶八进制信息安全团队([url]www.eviloctal.com[/url])文章作者:lake2
没什么技术含量,上次免杀一个网页的时候发现没有这种文本的定位器,所以自己弄了个。VB写的,需要FSO支持。定位完毕自动生成report.html文件,打开之,红色的即为该杀毒软件的病毒特征码,如果替换字节设的越小,定位越准,当然消耗的时间空间就越大:)
呵呵,另外,在此祝八进制的各位朋友儿童节快乐哦~~~~
PS: 应5楼剑心兄的要求,我把主要代码贴出来
[code]
Sub CheckDir()
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FolderExists(KillDir) = False Then
If Check1.Value = 1 Then
MkDir (KillDir)
Else
MsgBox "输出文件夹不存在,中止执行!", vbOKOnly + vbExclamation, "Error"
Unload Me
End If
End If
Set FSO = Nothing
End Sub
Sub ReplaceFile()
Dim FileTxt, Filetxt2, htmlString As String
Dim i As Long
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f = FSO.OpenTextFile(KillFile, ForReading)
FileTxt = f.ReadAll()
Set f = Nothing
i = 1
Do While i <= Len(FileTxt)
Filetxt2 = Left(FileTxt, i - 1) & Replace(FileTxt, Mid(FileTxt, i, Lenght.Text), Space(Lenght.Text), i, 1)
Set k = FSO.OpenTextFile(KillDir & "\" & i, ForWriting, True)
k.write Filetxt2
i = i + Lenght.Text
k.Close
Set k = Nothing
If i > Len(FileTxt) Then
ProgressBar1.Value = 100
Else
ProgressBar1.Value = i / Len(FileTxt) * 100
End If
Loop
MsgBox "杀毒完毕之后再点确定!", vbOKOnly, "Good"
htmlString = "<title>lake2的文本特征码定位器报告</title><meta http-equiv=""Content-Type"" content=""text/html; charset=gb2312"">"
htmlString = htmlString + "<style type=""text/css""><!--body,td,th {font-size: 12px;}--></style>"
htmlString = htmlString + "报告(红字就是特征码啦)<br><hr><br>"
i = 1
Do While i <= Len(FileTxt)
If Dir(KillDir & "\" & i) <> "" Then
htmlString = htmlString + "<font color=red>" & Encode(Mid(FileTxt, i, Lenght.Text)) & "</font>"
Else
htmlString = htmlString + Encode(Mid(FileTxt, i, Lenght.Text))
End If
i = i + Lenght.Text
If i > Len(FileTxt) Then
ProgressBar1.Value = 100
Else
ProgressBar1.Value = i / Len(FileTxt) * 100
End If
Loop
Set s = FSO.OpenTextFile(App.Path & "\report.html", ForWriting, True)
s.write htmlString
s.Close
Set s = Nothing
Set FSO = Nothing
MsgBox "定位完毕,请查看报告!", vbOKOnly, "Good"
End Sub
Function Encode(Str)
Dim temp As String
temp = Replace(Str, "<", "<")
temp = Replace(temp, ">", ">")
temp = Replace(temp, vbCrLf, "<br>")
Encode = temp
End Function
[/code]
原理很简单,就是按定长字节替换掉原文件生成无数新文件(文件名就是被替换字节的位置,方便判断特征码),然后用杀毒软件杀掉查出的病毒。剩下的文件就是不含特征码的文本了,根据文件名,就找出特征码的位置,再从原文件里面读出相应位置的代码即为特征码 有个小小的bug(不知道算不算 ^_^)
当没选择文件
直接点定位时
程序会出错 [quote][b]这里是引用第[/b][color=#ff0000][1 楼][/color][b]的[color=#000066]n3tl04d[/color]于[/b]2006-06-01 10:26[b]发表的:[/b]
有个小小的bug(不知道算不算 ^_^)
当没选择文件
直接点定位时
程序会出错[/quote]
被 RtlRaiseException 处理了 还有这种工具,我去试试。可是文本免杀好象作用不大(我的个人观点)。 [s:35] 不是很好。对于大一点的脚本就要卡死,而且没啥用。
对于小马还可以。 [quote][b]这里是引用第[/b][color=#ff0000][0 楼][/color][b]的[color=#000066]lake2[/color]于[/b]2006-06-01 08:28[b]发表的:[/b][原创]文本特征码定位器
信息来源:邪恶八进制信息安全团队([url]www.eviloctal.com[/url])
文章作者:lake2
没什么技术含量,上次免杀一个网页的时候发现没有这种文本的定位器,所以自己弄了个。VB写的,需要FSO支持。定位完毕自动生成report.html文件,打开之,红色的即为该杀毒软件的病毒特征码,如果替换字节设的越小,定位越准,当然消耗的时间空间就越大:)
呵呵,另外,在此祝八进制的各位朋友儿童节快乐哦~~~~[/quote]
很希望看看原理或者代码 耐着性子看了一下,希望各位大侠以后再贴源代码的时候能适当地加一点注释,不然看着真的很累哦,顺便问一下,这种程序用C++能写么?VC++里的图形除了API还有没有其他的方法,我还没学到API的?VB学了一点,但用着不太适应,写界面还可以,但应用的发展潜力不够好,呵呵,拙见,莫笑。 [color=crimson]要是文本特征码定位器意见[/color]
要是文本特征码定位器意见
定位的文件是HTML的 生成的文件里面的文件格式能改就好了
免杀HTML的文件 明明瑞星是杀的可就是因为 文件后缀格式不对导致文件不能 被杀
定不出来位置 希望能改进 一哈 这样用起来就根好了
页:
[1]