一个很有趣的小工具:Exe2swf
<P><FONT color=#f70909>来源:lam's blog</FONT> </P><P>最近好象又开始流行播放器里插<a href="http://hackbase.com/hacker" target="_blank" >木马</A>了,我于是在网上转了转,看有没有什么好东西能预防的.</P>
<P>结果在安天CERT小组 看到了这个:</P>
<P><b><a href="http://down.hackbase.com/" target="_blank" >软件</A>名称:</b>exe2swf
<b>适用系统:</b>WIN 9x/ME/2000/NT
<b>文件大小:</b>11K
<b>文件说明:</b>FLASH格式文件转换器为了防止有人在可执行的FLASH格式文件(.exe)中夹插<a href="http://hackbase.com/hacker" target="_blank" >木马</A>,或者用flash图标的<a href="http://hackbase.com/hacker" target="_blank" >木马</A>冒充flash文件,编写了一个简单的<a href="http://hackbase.com/hacker/tool" target="_blank" >工具</A>。</P>
<P>下载:<a href="http://soft.hackbase.com/37/20050319/6389.html" target="_blank" >http://soft.hackbase.com/37/20050319/6389.html</A></P>
<P>哈,但是还有还想不到的呢,我找到了一段可以实验这个功能的<a href="http://hackbase.com/hacker" target="_blank" >代码</A></P>
<P>作者:海娃</P>
<P><b>用法</b>:</P>
<OL>
<LI>将下面<a href="http://hackbase.com/hacker" target="_blank" >代码</A>存为 <FONT size=+0>exe2swf.vbs</FONT>
<LI>将exe格式的flash拖放在此文件上,即可生成swf文件,</LI></OL>
<P>
<a href="mailt'haiwa@http://www.51windows.Net" target="_blank" ><FONT color=#0000ff>'haiwa@http://www.51windows.Net</FONT></A>
'感谢jimbob提供帮助.
dim AsoR,FlashFileName
Set ArgObj = WScript.Arguments</P>
<P>dim PositionStart,OKed,Tag,EndSize
PositionStart = 920000'flash 4的播放器的大致字节数
EndSize = 8 'exe文件结尾字节数,其它版本可以设置为0
FlashFileName = ArgObj(0)'传递路径</P>
<P>set AsoR=CreateObject("Adodb.Stream")
AsoR.Mode=3
AsoR.Type=1
AsoR.Open
set AsoW=CreateObject("Adodb.Stream")
AsoW.Mode=3
AsoW.Type=1
AsoW.Open
AsoR.LoadFromFile(FlashFileName)</P>
<P>OKed = true
dim filesize
filesize = AsoR.size</P>
<P>if filesize>PositionStart then
while OKed
AsoR.Position = PositionStart
Tag = Bin2Str(AsoR.read(20))
if instr(Tag,"0000000") >0 then
PositionStart = PositionStart + 1
else
PositionStart = PositionStart + 20
end if
if Tag = "00000000000000000708783" or Tag = "00000000000000000678783" then
OKed = false
end if
'if PositionStart > filesize then
' OKed = false
'end if
wend
else
msgbox "文件错误"
end if
PositionStart = PositionStart + 16
'msgbox PositionStart
AsoR.Position = PositionStart
AsoW.write AsoR.read(filesize-int(PositionStart)-int(EndSize))</P>
<P>'新文件名
dim newFileName
'newFileName = left(FlashFileName,len(FlashFileName)-4) & ".swf"
newFileName = FlashFileName & ".swf"</P>
<P>Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(newFileName)) Then
overwrite = msgbox(newFileName&" 已存在"& vbnewline &"要替换它吗?",308,"文件已经存在 - exe2swf脚本")
if overwrite=6 then
AsoW.SaveToFile newFileName, 2
else
msgbox "操作被取消",0,"exe2swf脚本"
end if
else
AsoW.SaveToFile newFileName, 1
end if</P>
<P>AsoR.close
set AsoR=nothing
AsoW.close
set AsoW=nothing</P>
<P>Function Bin2Str(Bin)
Dim I, Str
For I=1 to LenB(Bin)
clow=MidB(Bin,I,1)
if ASCB(clow)<128 then
Str = Str & (ASCB(clow))
else
I=I+1
if I <= LenB(Bin) then Str = Str & (ASCW(MidB(Bin,I,1)&clow))
end if
Next
Bin2Str = Str
End Function</P>
<P>
<CENTER></CENTER> 从哪里开始啊,麻烦给个分割线吧,谢谢 是呀,分不清呀………………………… 不知道有什么用 {:3_48:}{:3_48:}
页:
[1]