知识大全 ASP数据库被挂马的编程处理方法

Posted 数据库

篇首语:欲穷千里目,更上一层楼。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP数据库被挂马的编程处理方法相关的知识,希望对你有一定的参考价值。

ASP数据库被挂马的编程处理方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

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

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

  第二步 执行如下ASP文件 这样就可以去掉数据库当中的JS木马

  注 conn asp自己去写了

   这里放入JS木马内容 请记得改为自己数据库中的JS木马内容

  <! #include file="conn asp" >

  <%

  Server ScriptTimeOut= Set rstSchema = conn OpenSchema( )

  k=

  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 For i= to rs fields count 遍历表中字段If int(rs(i) Type)= or int(rs(i) Type)= or int(rs(i) Type)= or int(rs(i) Type)= or int(rs(i) Type)= or int(rs(i) Type)= Then 只处理字段类型为字符型的字段

  conn execute("update ["&rstSchema("TABLE_NAME")&"] set "&rs(i) name&" =replace(cast("&rs(i) name&" as varchar( )) 这里放入JS木马内容 )") response write rs(i) name &" "&rs(i) Type &" " 显示执行过的字段名

  End If

  Next

  response write "<br>"

  End If

  rstSchema MoveNext

  k=k+

  Loop

  response Write "执行成功"

  %>

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

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

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

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

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

  第三步

  根据数据库JS注入的特性(会包括<script </script>和//这样的字符) 在conn asp里面放入如下代码

  Function Cheack_Sqljs() 防止数据库外链JS注入:true为发现外链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")<> or Instr(LCase(Request Form(F_Post)) "</script>")<> ) and Instr(LCase(Request Form(F_Post)) "//")<> 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")<> or Instr(LCase(Request Form(F_Get)) "</script>")<> ) and Instr(LCase(Request Form(F_Get)) "//")<> Then

  Cheack_Sqljs=True

  Exit For

  End If

  Next

  End If

  End Function

  Function CheckDataFrom() 检查提交数据来源 True为数据从站外提交过来的

  CheckDataFrom=True

  server_v =Cstr(Request ServerVariables("HTTP_REFERER")) server_v =Cstr(Request ServerVariables("SERVER_NAME")) if mid(server_v len(server_v ))<>server_v then

  CheckDataFrom=False

  end if

  End Function

  If Cheack_Sqljs or CheckDataFrom Then

  Response Write "<Script Language=JavaScript>alert( 禁止执行 非法操作 );</Script>" Response End()

  End If

cha138/Article/program/net/201311/14256

相关参考

知识大全 讲解SQL Server数据库被挂马的解决方案

讲解SQLServer数据库被挂马的解决方案  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  案例

知识大全 ASP.NET数据库编程之处理文件访问许可

ASP.NET数据库编程之处理文件访问许可  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一个MDB

知识大全 了解ASP.NET中的IFRAME框架挂马

了解ASP.NET中的IFRAME框架挂马  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  安全工

知识大全 ASP.NET数据库编程入门

ASP.NET数据库编程入门  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  因为Access并不

知识大全 asp.net编程程序优化要注意的问题

  一SqlDataRead和Dataset的选择  Sqldataread优点读取数据非常快如果对返回的数据不需做大量处理的情况下建议使用SqlDataReader其性能要比datset好很多缺点直

知识大全 ASP.NET数据库编程快速入门之技术慨述

ASP.NET数据库编程快速入门之技术慨述  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  大约有

知识大全 数据库综合开发实践

  一套原来在Access上开发的桌面系统网页调阅使用ASP编程数据维护系统使C++Builder编程由于Access是一个桌面的共享型数据库所以在通用性和网络开发方面都存在一些问题因此需要将该系统移

知识大全 ASP.NET 2.0高级数据处理之数据绑定

ASP.NET2.0高级数据处理之数据绑定  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在前面的模

知识大全 ASP.NET 2.0高级数据处理之主从数据表

ASP.NET2.0高级数据处理之主从数据表  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在前面的

知识大全 ASP.NET 2.0高级数据处理之处理控件事件

ASP.NET2.0高级数据处理之处理控件事件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在前面