雷客图ASP站长安全助手的ASP木马查找功能

可以在线查找空间里的asp木马
复制代码 代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'设置密码
PASSWORD = "jb51net"

dim Report

if request.QueryString("act")="login" then
    if request.Form("pwd") = PASSWORD then session("pig")=1
end if
%>




ASPSecurity for Hacking



<%If Session("pig") <> 1 then%>

  Password: 
     
    
  


<%
else
    if request.QueryString("act")<>"scan" then
%>
                
                填入你要检查的路径:
                
                

                * 网站根目录的相对路径,填“\”即检查整个网站;“.”为程序所在目录
                

                

                
                
<%
    else
        server.ScriptTimeout = 600
        DimFileExt = "asp,cer,asa,cdx"
        Sun = 0
        SumFiles = 0
        SumFolders = 1
        if request.Form("path")="" then
            response.Write("No Hack")
            response.End()
        end if
        timer1 = timer
        if request.Form("path")="\" then
            TmpPath = Server.MapPath("\")
        elseif request.Form("path")="." then
            TmpPath = Server.MapPath(".")
        else
            TmpPath = Server.MapPath("\")&"\"&request.Form("path")
        end if
        Call ShowAllFile(TmpPath)
%>

  
    ASPSecurity For Hacking
  
  
    
        

扫描完毕!一共检查文件夹<%=SumFolders%>个,文件<%=SumFiles%>个,发现可疑点<%=Sun%>个
    
     
         
             
             
               文件相对路径
               特征码
               描述
               创建/修改时间
               
             


             <%=Report%>
             


             
     
    

<%
timer2 = timer
thetime=cstr(int(((timer2-timer1)*10000 )+0.5)/10)
response.write "
本页执行共用了"&thetime&"毫秒"
    end if
end if

%>


本程序取自雷客图ASP站长安全助手的ASP木马查找功能

powered by lake2



<%

'遍历处理path及其子目录所有文件
Sub ShowAllFile(Path)
    Set FSO = CreateObject("Scripting.FileSystemObject")
    if not fso.FolderExists(path) then exit sub
    Set f = FSO.GetFolder(Path)
    Set fc2 = f.files
    For Each myfile in fc2
        If CheckExt(FSO.GetExtensionName(path&"\"&myfile.name)) Then
            Call ScanFile(Path&Temp&"\"&myfile.name, "")
            SumFiles = SumFiles + 1
        End If
    Next
    Set fc = f.SubFolders
    For Each f1 in fc
        ShowAllFile path&"\"&f1.name
        SumFolders = SumFolders + 1
    Next
    Set FSO = Nothing
End Sub

'检测文件
Sub ScanFile(FilePath, InFile)
    If InFile <> "" Then
        Infiles = "该文件被"& InFile & "文件包含执行"
    End If
    Set FSOs = CreateObject("Scripting.FileSystemObject")
    on error resume next
    set ofile = fsos.OpenTextFile(FilePath)
    filetxt = Lcase(ofile.readall())
    If err Then Exit Sub end if
    if len(filetxt)>0 then
        '特征码检查
        temp = ""&replace(FilePath,server.MapPath("\")&"\","",1,1,1)&""
            'Check "WScr"&DoMyBest&"ipt.Shell"
            If instr( filetxt, Lcase("WScr"&DoMyBest&"ipt.Shell") ) or Instr( filetxt, Lcase("clsid:72C24DD5-D70A"&DoMyBest&"-438B-8A42-98424B88AFB8") ) then
                Report = Report&""&temp&"WScr"&DoMyBest&"ipt.Shell 或者 clsid:72C24DD5-D70A"&DoMyBest&"-438B-8A42-98424B88AFB8危险组件,一般被ASP木马利用。"&infiles&""&GetDateCreate(filepath)&"
"&GetDateModify(filepath)&""
                Sun = Sun + 1
            End if
            'Check "She"&DoMyBest&"ll.Application"
            If instr( filetxt, Lcase("She"&DoMyBest&"ll.Application") ) or Instr( filetxt, Lcase("clsid:13709620-C27"&DoMyBest&"9-11CE-A49E-444553540000") ) then
                Report = Report&""&temp&"She"&DoMyBest&"ll.Application 或者 clsid:13709620-C27"&DoMyBest&"9-11CE-A49E-444553540000危险组件,一般被ASP木马利用。"&infiles&""&GetDateCreate(filepath)&"
"&GetDateModify(filepath)&""
                Sun = Sun + 1
            End If
            'Check .Encode
            Set regEx = New RegExp
            regEx.IgnoreCase = True
            regEx.Global = True
            regEx.Pattern = "@\s*LANGUAGE\s*=\s*[""]?\s*(vbscript|jscript|javascript).encode\b"
            If regEx.Test(filetxt) Then
                Report = Report&""&temp&"(vbscript|jscript|javascript).Encode似乎脚本被加密了,一般ASP文件是不会加密的。"&infiles&""&GetDateCreate(filepath)&"
"&GetDateModify(filepath)&""
                Sun = Sun + 1
            End If
            'Check my ASP backdoor :(
            regEx.Pattern = "\bEv"&"al\b"
            If regEx.Test(filetxt) Then
                Report = Report&""&temp&"Ev"&"ale"&"val()函数可以执行任意ASP代码,被一些后门利用。其形式一般是:ev"&"al(X)
但是javascript代码中也可以使用,有可能是误报。"&infiles&""&GetDateCreate(filepath)&"
"&GetDateModify(filepath)&""
                Sun = Sun + 1
            End If
            'Check exe&cute backdoor
            regEx.Pattern = "[^.]\bExe"&"cute\b"
            If regEx.Test(filetxt) Then
                Report = Report&""&temp&"Exec"&"utee"&"xecute()函数可以执行任意ASP代码,被一些后门利用。其形式一般是:ex"&"ecute(X)。
"&infiles&""&GetDateCreate(filepath)&"
"&GetDateModify(filepath)&""
                Sun = Sun + 1
            End If
            Set regEx = Nothing

        'Check include file
        Set regEx = New RegExp
        regEx.IgnoreCase = True
        regEx.Global = True
        regEx.Pattern = "

你可能感兴趣的:(雷客图ASP站长安全助手的ASP木马查找功能)