教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 网站编程 > ASP教程 >

ASP数据库被挂马的一般处理3步方法

时间:2012-03-30 01:05来源:未知 作者:ken 点击:

数据库被挂马我相信很多人都碰到过。在这里,我讲下我处理的方法。

    第一步:为现有数据库做好备份。

    第二步:执行如下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 & " "'显示执行过的字段名。

  End If

 Next

 Response.Write "<br>"

End If

rstSchema.MoveNext

k = k + 1

Loop

Response.Write "执行成功" %>


如果数据库表很多的话,上面的遍历数据库结构未执行完就被IIS给停止了。在这时候可以在:

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

 当中适当加入k值的范围,如:

 If rstSchema("TABLE_TYPE") = "TABLE" k > 10 And k < 20 Then

  这样的话就一次只操作9个表。

(责任编辑:ken)

TAG标签: asp 木马 挂马
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
栏目列表
最新内容