佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > ASP網站中數據庫被掛木馬的解決方案

ASP網站中數據庫被掛木馬的解決方案

熱門標簽:阿里云 銀行業(yè)務 服務器配置 Linux服務器 Mysql連接數設置 團購網站 電子圍欄 科大訊飛語音識別系統

本文我們詳細介紹了ASP數據庫被掛木馬的詳細解決方案之編程處理的方法,解決方案分為以下三步:

第一步:

為現有數據庫做好備份。

第二步:

執(zhí)行如下ASP文件,這樣就可以去掉數據庫當中的JS木馬:

注:conn.asp自己去寫了。

'這里放入JS木馬內容:請記得改為自己數據庫中的JS木馬內容。

!--#include file="conn.asp"--> 
 
% 
 
Server.ScriptTimeOut=180 Set rstSchema = conn.OpenSchema(20) 
 
k=1 
 
Do Until rstSchema.EOF '遍歷數據庫表 
 
If rstSchema("TABLE_TYPE")="TABLE" Then 
 
response.write K".font color=red>b>"rstSchema("TABLE_NAME")  "/b>/font>:" '顯示表名Set rs=Server.CreateObject("ADODB.Recordset") 
 
sql="select * from ["  rstSchema("TABLE_NAME")"]" 
 
rs.open sql,conn,1,3 For i=0 to rs.fields.count-1 '遍歷表中字段If int(rs(i).Type)=129  
 
or int(rs(i).Type)=130 or int(rs(i).Type)=200 or int(rs(i).Type)=201 or int(rs(i).Type)=202 or int(rs(i).Type)=203 Then'只處理字段類型為字符型的字段 
 
conn.execute("update ["rstSchema("TABLE_NAME")"] set "rs(i).name" =replace(cast("rs(i).name" 
 
 as varchar(8000)),'這里放入JS木馬內容','')") response.write rs(i).name " "rs(i).Type " "'顯示執(zhí)行過的字段名。 
 
End If 
 
Next 
 
response.write "br>" 
 
End If 
 
rstSchema.MoveNext 
 
kk=k+1 
 
Loop 
 
response.Write "執(zhí)行成功" 
 
%> 

如果數據庫表很多的話,上面的遍歷數據庫結構未執(zhí)行完就被IIS給停止了。在這時候可以在:

If rstSchema("TABLE_TYPE")="TABLE" Then

當中適當加入k值的范圍,如:

If rstSchema("TABLE_TYPE")="TABLE" k>10 and k20 Then

這樣的話就一次只操作9個表。

第三步:

根據數據庫JS注入的特性(會包括script、/script>和http://這樣的字符),在conn.asp里面放入如下代碼:

Function Cheack_Sqljs()'防止數據庫外鏈JS注入:true為發(fā)現外鏈JS注入。 
 
Dim F_Post,F_Get 
 
Cheack_Sqljs=False 
 
If Request.Form>"" Then'表單提交時的檢測For Each F_Post In Request.Form If (Instr(LCase(Request.Form(F_Post)), 
 
"script")>0 or Instr(LCase(Request.Form(F_Post)),"/script>")>0)  
 
and Instr(LCase(Request.Form(F_Post)),"http://")>0 Then 
 
Cheack_Sqljs=True 
 
Exit For 
 
End If 
 
Next 
 
End If 
 
If Request.QueryString>"" Then'QueryString提交時的檢測For Each F_Get In Request.QueryString  
 
If (Instr(LCase(Request.Form(F_Get)),"script")>0 orInstr(LCase(Request.Form(F_Get)),"/script>")>0)  
 
and Instr(LCase(Request.Form(F_Get)),"http://")>0 Then 
 
Cheack_Sqljs=True 
 
Exit For 
 
End If 
 
Next 
 
End If 
 
End Function 
 
Function CheckDataFrom()'檢查提交數據來源:True為數據從站外提交過來的 
 
CheckDataFrom=True 
 
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER")) server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))  
 
if mid(server_v1,8,len(server_v2))>server_v2 then 
 
CheckDataFrom=False 
 
end if 
 
End Function 
 
If Cheack_Sqljs or CheckDataFrom Then 
 
Response.Write "Script Language=JavaScript>alert('禁止執(zhí)行,非法操作。');/Script>" Response.End() 
 
End If 

關于ASP數據庫被掛木馬時的編程處理方法就介紹到這里了,希望本次的介紹能夠帶給您一些收獲,謝謝!

您可能感興趣的文章:
  • 一句話木馬入侵EASYNEWS新聞管理系統
  • JSP一句話木馬代碼
  • asp.net jscript 一句話木馬
  • asp一句話木馬原理分析
  • asp,php一句話木馬整理方便查找木馬
  • 一句話木馬的原理及利用分析(asp,aspx,php,jsp)
  • asp實現讀取數據庫輸出json代碼
  • 淺談ASP數據庫下載漏洞
  • ASP.NET列出數據庫活躍鏈接的方法
  • MySQL結合使用數據庫分析工具SchemaSpy的方法
  • ASP通過ODBC連接SQL Server 2008數據庫的方法
  • asp.net上傳文件到數據庫的解決方案
  • ASP語言實現對SQL SERVER數據庫的操作
  • asp控制xml數據庫的經典代碼

標簽:萍鄉(xiāng) 江蘇 衡水 廣元 蚌埠 大理 衢州 棗莊

巨人網絡通訊聲明:本文標題《ASP網站中數據庫被掛木馬的解決方案》,本文關鍵詞  ;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    九龙坡区| 札达县| 千阳县| 稷山县| 唐山市| 永昌县| 西和县| 青川县| 德安县| 同江市| 新疆| 于都县| 峨山| 龙海市| 和田县| 泸定县| 淳安县| 临朐县| 祁东县| 咸阳市| 八宿县| 攀枝花市| 庄浪县| 渝中区| 江永县| 湛江市| 英德市| 苏尼特右旗| 深圳市| 虎林市| 特克斯县| 蒲江县| 乳山市| 彩票| 深圳市| 印江| 自治县| 呼图壁县| 宜春市| 兴安县| 盐亭县|