濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 淘特ASP木馬掃描器的代碼

淘特ASP木馬掃描器的代碼

熱門標(biāo)簽:長春公司外呼系統(tǒng)中心 成都ai外呼系統(tǒng)線路 虛擬電話外呼系統(tǒng) 鄭州智能外呼電銷機(jī)器人廠家 云南便宜外呼系統(tǒng)平臺(tái) 沈陽電話機(jī)器人公司 廣東語音外呼系統(tǒng)公司 沈陽三五防封電銷卡 鄢陵學(xué)校如何做地圖標(biāo)注
+-----------------+
|淘特ASP木馬掃描器|
+-----------------+
  本程序可以掃描服務(wù)器上的所有指定類型(asp,cer,asa,cdx)的文件,查出可疑的木馬程序。系統(tǒng)采用掃描程序與病毒庫分離的形式,
以后升級(jí)只需像殺毒軟件那樣升級(jí)病毒庫就可以了。目前可以查殺所有流行的ASP木馬程序。

  系統(tǒng)提供了全站掃描、按文件夾和指定文件掃描三種掃描方式,如果網(wǎng)站文件比較少的話,推薦使用"全站掃描",如果文件比較多,推薦
使用按文件夾掃描。掃描過程,系統(tǒng)會(huì)記錄被掃描過的文件列表,同時(shí)對(duì)懷疑是木馬程序的文件以列表的形式展現(xiàn),為了便于比較最近有可能
被上傳過ASP木馬程序,系統(tǒng)特別對(duì)當(dāng)前時(shí)間7日內(nèi)修改、創(chuàng)建的文件以加紅顯示;系統(tǒng)會(huì)對(duì)懷疑是木馬的文件作出"級(jí)別"判斷,并加以顏色區(qū)分
;建議對(duì)級(jí)別為"一般"的程序作手動(dòng)檢查后,再作處理,對(duì)級(jí)別為"嚴(yán)重"的文件,可以點(diǎn)擊"文件名稱"下的文件鏈接,一般打開后木馬程序都會(huì)
有一個(gè)登錄提示,這時(shí)就點(diǎn)擊"文件名稱"下的"刪除"鏈接,直接將文件從服務(wù)器中刪除即可。如果擔(dān)心會(huì)誤刪除,可以先點(diǎn)擊"下載"將文件備份。
使用方法:
將本程序解壓后的文件上傳至服務(wù)器中。執(zhí)行:http://你的網(wǎng)址/scan.asp

+-----------------+
|登錄密碼:totscan|
+-----------------+
virus_lib.asp
復(fù)制代碼 代碼如下:

%
dim virus(1,7),virus_Regx(1,4)
'定義木馬組件
virus(0,0)="WScript"
virus(1,0)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>WScript 多為木馬關(guān)鍵字"
virus(0,1)="Shell"
virus(1,1)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>Shell 多為木馬關(guān)鍵字"
virus(0,2)="Shell.Application"
virus(1,2)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp 組件,一般多為木馬所用"
'海陽組件
virus(0,3)="clsid:72C24DD5-D70A-438B-8A42-98424B88AFB8"
virus(1,3)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp WScript 組件,一般多為木馬所用"
virus(0,4)="clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B"
virus(1,4)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp wscript 組件,一般多為木馬所用"
virus(0,5)="clsid:093FF999-1EA0-4079-9525-9614C3504B74"
virus(1,5)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp net 組件,一般多為木馬所用"
virus(0,6)="clsid:F935DC26-1CF0-11D0-ADB9-00C04FD58A0B"
virus(1,6)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp net 組件,一般多為木馬所用"
virus(0,7)="clsid:0D43FE01-F093-11CF-8940-00A0C9054228"
virus(1,7)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>asp fso 組件,一般多為木馬所用"

'定義木馬關(guān)鍵字
virus_Regx(0,0)="@\s*LANGUAGE\s*=\s*[""]?\s*(vbscript|jscript|javascript).encode\b"
virus_Regx(1,0)="級(jí)別:font color=""green"">嚴(yán)重!/font>br>腳本被加密了,一般ASP文件是不會(huì)加密的。"
virus_Regx(0,1)="\bEval\b"
virus_Regx(1,1)="級(jí)別:font color=""gray"">一般!/font>br>eval()函數(shù)可以執(zhí)行任意ASP代碼,被一些后門利用。其形式一般是:ev""al(X)br>但是javascript代碼中也可以使用,有可能是誤報(bào)。"
virus_Regx(0,2)="[^.]\bExecute\b"
virus_Regx(1,2)="級(jí)別:font color=""gray"">一般!/font>br>execute()函數(shù)可以執(zhí)行任意ASP代碼,被一些后門利用。其形式一般是:ex""ecute(X)。"
virus_Regx(0,3)="Server.(Execute|Transfer)([ \t]*|\()[^""]\)"
virus_Regx(1,3)="級(jí)別:font color=""gray"">一般!/font>br>不能跟蹤檢查Server.e""xecute()函數(shù)執(zhí)行的文件。請(qǐng)管理員自行檢查。"
virus_Regx(0,4)="CreateObject[ |\t]*\(.*\)$[^adodb.recordset]"
virus_Regx(1,4)="級(jí)別:font color=""gray"">一般!/font>br>Crea""teObject函數(shù)使用了變形技術(shù),仔細(xì)復(fù)查"
%>

scan.asp
復(fù)制代碼 代碼如下:

%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
!--#include file="virus_lib.asp"-->
%
server.ScriptTimeout =90000
dim act
act=request.QueryString("act")
Const PASSWORD = "totscan"
if act="login" then
    if request.Form("pwd") = PASSWORD then session("login")="ok"
end if
%>
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
html>
head>
meta http-equiv="Content-Type" content="text/html; charset=gb2312">
title>Asp木馬掃描器/title>
script language="JavaScript" type="text/JavaScript">

function ConfirmDel()
{
   if(confirm("確認(rèn)刪除?并且不能恢復(fù)!"))
     return true;
   else
     return false;

}
/script>
/head>

body>
div align="center">h2>Asp木馬掃描器/h2>/div>
hr>
%
If Session("login") > "ok" then
    call LoginForm()
else
    dim pathStr
    if request("path")>"" then
        pathStr=request("path")
    else
        pathStr=server.MapPath("/")
    end if
    response.Write("a href=""javascript:history.back();"">←返回/a>br>"Chr(10))
    if act="scan" then        
        dim ScanFileType,Suspect,ScanFileNum,ScanFolderNum,BeginTime,EndTime,TmpPath,Report        
        ScanFileType = "asp,cer,asa,cdx"
        Suspect = 0
        ScanFileNum = 0
        ScanFolderNum =0        
        BeginTime = timer
        response.Write("textarea name=""textarea"" style=""width:100%"" rows=""5"">"Chr(10))
        response.Write("掃描日志:"vbcrlf)
        if(request.QueryString("file")>"") then
            Call ScanFile(request.QueryString("file"),"")
        else
            Call ScanFolder(pathStr)
        end if
        response.Write("/textarea>")
        Call ShowResult()
        EndTime = timer        
        response.write "br>font size=""2"">執(zhí)行時(shí)間:"cstr(int(((EndTime-BeginTime)*10000 )+0.5)/10)"毫秒/font>"    
    elseif act="del" then
        Call DelFile(request.QueryString("file"))
        response.Write("br>a href="""request.ServerVariables("HTTP_REFERER")""">返回/a>")
    elseif act="down" then
        Call Download(request.QueryString("file"))
    else
        call FileList(pathStr)
        call ScanForm()
    end if
end if

%>
hr>
/body>
/html>
%
Sub LoginForm
%>
form name="form1" method="post" action="?act=login">
  div align="center">Password: 
    input name="pwd" type="password" size="15"> 
    input type="submit" name="Submit" value="提交">
  /div>
/form>
%
end Sub
Sub ScanForm
%>
form action="?act=scan" method="post">
    input type="submit" value=" 全站掃描 " style="background:#fff;border:1px solid #999;padding:2px 2px 0px 2px;margin:4px;border-width:1px 3px 1px 3px" />
/form>
%
end sub
'遍歷處理path及其子目錄所有文件
Sub FileList(Path)
    Set FSO = CreateObject("Scripting.FileSystemObject")
    if not fso.FolderExists(path) then exit sub
    Set folders = FSO.GetFolder(Path)'目錄下所有對(duì)象
    Set files = folders.files
    Set subfolders = folders.SubFolders
    '列表文件夾
    For Each fl in subfolders
        response.Write("a href=""?path="Path"\"fl.name""">img src=""images/folder.gif"" border=""0"">"fl.name"/a>"Chr(10))
        response.Write("a href=""?act=scanpath="Path"\"fl.name""">掃描/a>br>"Chr(10))
    Next
    '列表文件
    For Each file_f in files
        response.Write("img src=""images/file.gif"">"file_f.name""Chr(10))
        response.Write("a href=""?act=scanfile="Path"\"file_f.name""">掃描/a>br>"Chr(10))
    Next
    set folders=nothing
    set files=nothing
    set subfolders=nothing
    Set FSO = Nothing
End Sub
Sub ShowResult
%>
table width="100%" border="0" cellpadding="0" cellspacing="0" class="CContent">
  tr>
    td class="CPanel" style="padding:5px;line-height:170%;clear:both;font-size:12px">        
掃描完畢!一共檢查文件夾font color="#FF0000">%=ScanFolderNum%>/font>個(gè),文件font color="#FF0000">%=ScanFileNum%>/font>個(gè),發(fā)現(xiàn)可疑點(diǎn)font color="#FF0000">%=Suspect%>/font>個(gè)    
/td>/tr>/table>
table width="100%" border="0" cellpadding="0" cellspacing="1" style="padding:5px; background-color:#666666;line-height:18px;clear:both;font-size:12px">
    tr>
        td width="30%" bgcolor="#FFFFFF">文件名稱/td>
        td width="20%" bgcolor="#FFFFFF">特征碼/td>
        td width="30%" bgcolor="#FFFFFF">描述/td>
        td width="20%" bgcolor="#FFFFFF">創(chuàng)建/修改時(shí)間/td>
    /tr>
    p>
    %=Report%>
    br/>
    /p>
/table>
%
end Sub
'遍歷處理path及其子目錄所有文件
Sub ScanFolder(Path)
    dim folders,files,subfolders
    ScanFolderNum = ScanFolderNum + 1
    Set FSO = CreateObject("Scripting.FileSystemObject")
    if not fso.FolderExists(path) then exit sub
    Set folders = FSO.GetFolder(Path)
    Set files = folders.files
    For Each myfile in files
        If CheckExt(FSO.GetExtensionName(path"\"myfile.name)) Then
            Call ScanFile(Path"\"myfile.name, "")            
        End If
    Next
    Set subfolders = folders.SubFolders
    For Each f1 in subfolders
        ScanFolder path"\"f1.name        
    Next
    set folders=nothing
    set files=nothing
    set subfolders=nothing
    Set FSO = Nothing
End Sub

'檢測文件
Sub ScanFile(FilePath, InFile)
    dim FSOs,ofile,filetxt,fileUri,vi
    ScanFileNum = ScanFileNum + 1
    response.Write("掃描文件:"FilePathvbcrlf)
    response.Flush()
    If InFile > "" Then
        Infiles = "該文件被a href=""http://"Request.Servervariables("server_name")"\"InFile""" target=_blank>" InFile  "/a>文件包含執(zhí)行"
    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        
        '特征碼檢查
        fileUri = "a href=""http://"Request.Servervariables("server_name")":"Request.ServerVariables("SERVER_PORT")"\"replace(FilePath,server.MapPath("\")"\","",1,1,1)""" target=_blank>"replace(FilePath,server.MapPath("\")"\","",1,1,1)"/a>br>"
        fileUri=fileUri"操作:nbsp;a href=""?act=delfile="FilePath""" onClick=""return ConfirmDel()"">刪除/a>"
        fileUri=fileUri"nbsp;a href=""?act=downfile="FilePath""">下載/a>"
        for vi=0 to ubound(virus,2)
            If instr(filetxt, Lcase(virus(0,vi))) then
                Report = Report"tr bgcolor=""#FFFFFF"">td>"fileUri"/td>td>"virus(0,vi)"/td>td>"virus(1,vi)infiles"/td>td>創(chuàng)建:"GetDateCreate(filepath)"br>修改:"GetDateModify(filepath)"/td>/tr>"
                Suspect = Suspect + 1
            End if
        next            
        for vi=0 to ubound(virus_Regx,2)
            Set regEx = New RegExp
            regEx.IgnoreCase = True
            regEx.Global = True
            regEx.Pattern = virus_Regx(0,vi)
            If regEx.Test(filetxt) Then
                Report = Report"tr bgcolor=""#FFFFFF"">td>"fileUri"/td>td>"virus_Regx(0,vi)"/td>td>"virus_Regx(1,vi)infiles"/td>td>創(chuàng)建:"GetDateCreate(filepath)"br>修改:"GetDateModify(filepath)"/td>/tr>"
                Suspect = Suspect + 1
            End If
        next        

        'Check include file
        Set regEx = New RegExp
        regEx.IgnoreCase = True
        regEx.Global = True
        regEx.Pattern = "!--\s*#include\s*file\s*=\s*"".*"""
        Set Matches = regEx.Execute(filetxt)
        For Each Match in Matches            
            tFile = Replace(Mid(Match.Value, Instr(Match.Value, """") + 1, Len(Match.Value) - Instr(Match.Value, """") - 1),"/","\")
            If Not CheckExt(FSOs.GetExtensionName(tFile)) Then
                Call ScanFile( Mid(FilePath,1,InStrRev(FilePath,"\"))tFile, replace(FilePath,server.MapPath("\")"\","",1,1,1) )
                SumFiles = SumFiles + 1
            End If
        Next
        Set Matches = Nothing
        Set regEx = Nothing

        'Check include virtual
        Set regEx = New RegExp
        regEx.IgnoreCase = True
        regEx.Global = True
        regEx.Pattern = "!--\s*#include\s*virtual\s*=\s*"".*"""
        Set Matches = regEx.Execute(filetxt)
        For Each Match in Matches
            tFile = Replace(Mid(Match.Value, Instr(Match.Value, """") + 1, Len(Match.Value) - Instr(Match.Value, """") - 1),"/","\")
            If Not CheckExt(FSOs.GetExtensionName(tFile)) Then
                Call ScanFile( Server.MapPath("\")"\"tFile, replace(FilePath,server.MapPath("\")"\","",1,1,1) )                
            End If
        Next
        Set Matches = Nothing
        Set regEx = Nothing

        'Check Server.Execute|Transfer
        Set regEx = New RegExp
        regEx.IgnoreCase = True
        regEx.Global = True
        regEx.Pattern = "Server.(Exec""ute|Transfer)([ \t]*|\()"".*"""
        Set Matches = regEx.Execute(filetxt)
        For Each Match in Matches
            tFile = Replace(Mid(Match.Value, Instr(Match.Value, """") + 1, Len(Match.Value) - Instr(Match.Value, """") - 1),"/","\")
            If Not CheckExt(FSOs.GetExtensionName(tFile)) Then
                Call ScanFile( Mid(FilePath,1,InStrRev(FilePath,"\"))tFile, replace(FilePath,server.MapPath("\")"\","",1,1,1) )                
            End If
        Next
        Set Matches = Nothing
        Set regEx = Nothing    

        
    end if
    set ofile = nothing
    set fsos = nothing
End Sub

'檢查文件后綴,如果與預(yù)定的匹配即返回TRUE
Function CheckExt(FileExt)
    If ScanFileType = "*" Then CheckExt = True
    Ext = Split(ScanFileType,",")
    For i = 0 To Ubound(Ext)
        If Lcase(FileExt) = Ext(i) Then 
            CheckExt = True
            Exit Function
        End If
    Next
End Function
'刪除文件
Sub DelFile(FilePath)
    Set fso = Server.CreateObject("Scripting.FileSystemObject")
     if fso.FileExists(FilePath) then
         fso.DeleteFile(FilePath)
         Response.Write("h2>成功刪除文件:/h2>" FilePath)
    else
        response.Write("h2>刪除失敗!文件:"FilePath"沒有找到!/2>")
     end if
     set fso=nothing
end Sub
'下載文件
sub Download(FilePath)
    dim oStream
    Set FSO = Server.CreateObject("Scripting.FileSystemObject")
    if FSO.FileExists(FilePath) then
        set oStream=Server.CreateObject("ADODB.Stream")
        oStream.Type=1
        oStream.Open
        on error resume next
        oStream.LoadFromFile(FilePath)
        if Err.Number=0 then
            Response.AddHeader "Content-Disposition", "attachment; filename="  FSO.GetFileName(FilePath)
            Response.AddHeader "Content-Length", oStream.Size
            Response.ContentType="bad/type" 'yeu cau ie hien hop thoai save-as
            Response.BinaryWrite oStream.Read
        end if
        oStream.Close
        set oStream=nothing
    end if
    set FSO=nothing
end sub
Function GetDateModify(filepath)
    dim s,days
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.GetFile(filepath) 
    s = f.DateLastModified 
    set f = nothing
    set fso = nothing
    days=DateDiff("d",Cdate(s),now())
    if(days>-7 and days7) then
        s="font color=""red"">"s"/font>"
    end if
    GetDateModify = s
End Function

Function GetDateCreate(filepath)
    dim s,days
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.GetFile(filepath) 
    s = f.DateCreated 
    set f = nothing
    set fso = nothing
    days=DateDiff("d",Cdate(s),now())
    if(days>-7 and days7) then
        s="font color=""red"">"s"/font>"
    end if
    GetDateCreate = s
End Function

%>
您可能感興趣的文章:
  • PHP Web木馬掃描器代碼 v1.0 安全測試工具
  • asp和php頁面全面封殺WVS掃描器的代碼
  • php之對(duì)抗Web掃描器的腳本技巧
  • 清除網(wǎng)頁中iframe木馬的利器-淘特ASP木馬掃描器
  • 網(wǎng)頁木馬代碼例子(里面的文件是漏洞掃描器,呵呵)
  • php木馬webshell掃描器代碼

標(biāo)簽:平頂山 湖北 防城港 朝陽 孝感 馬鞍山 四平 遼陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淘特ASP木馬掃描器的代碼》,本文關(guān)鍵詞  淘特,ASP,木馬,掃描器,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《淘特ASP木馬掃描器的代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于淘特ASP木馬掃描器的代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    田林县| 榆中县| 德阳市| 永年县| 遵义市| 泰和县| 东至县| 崇文区| 蕲春县| 离岛区| 东阳市| 同心县| 泗水县| 右玉县| 陆河县| 迁安市| 航空| 清苑县| 台安县| 廊坊市| 彭阳县| 陕西省| 纳雍县| 长沙市| 阜阳市| 乡宁县| 江川县| 弥渡县| 泸州市| 缙云县| 尼勒克县| 乌兰察布市| 龙口市| 芮城县| 西吉县| 商丘市| 芦山县| 云林县| 沿河| 锦州市| 惠东县|