我爱电脑技术论坛's Archiver

不和人说话 发表于 2008-6-3 00:16

SQL数据库挂马解决方案

今天接到田总的求助电话,火速赶回寝室上服务器查看情况,原来是一个网站被入侵了,破坏相当严重,sql数据库被挂马,所有的表里面大部分字段都被多次重复插入挂马代码,查看日志,还好没有涉及到服务器的安全,只是数据库那里出现了很多异常警告而已,网站确实存在漏洞 %a2^Rv{ ov

&\!aS*D V E   没有办法,我只得修复数据库,因为他们没有数据库备份,根本就没有办法还原数据库啊,何况连事务日志都没有开启,试着恢复了几次都不成功,恢复数据库没有一点希望,我只得乖乖的帮他们清理挂马代码,不可能手工删除挂马代码,毕竟数据太大了,不可能去直接修改,通过四处搜寻得到了一个勉强有效的解决办法,每个表里面去执行一下这个sql语句
r'K$NoI
$e^P V!\sP?   update tablename set @ziduanming =replace(cast(@ziduanming as varchar(8000)),’ ’,null) q [~)XuG

YO ?!u"X   上面的sql语句可以对应修改表,字段名,和替换内容
H+]4r }+A;m0o
y8b&B v;G   其实,sql数据库挂马是一种较新的挂马方法,只要网站存在注入,并且连接数据库是db owner权限就可以进行数据库挂马,估计这次攻击的流程应该是自动化的,通过先进的扫描技术批量收集到几万网站的SQL注入漏洞,针对漏洞攻击,进行自动化的SQL注入挂马。这次应该有很多网站遭殃了,asp+mssql的是主要被攻击对象!
NvOd,F
5U i*ao1?f^,}   本人给出解决方案
#_ hm/D |0X 2p|6qvc` dH
  sql数据库挂马的解决办法: z:NS"b/g-e@[(k

%Q`-lru4f_Ya~   正确清理木马,注意数据库不能随便修改或删除,被挂上马后,更需要谨慎的操作。建议,先备份然后再小心清理。 9J+`3Q(J6[x1s'F

5P3Db;l)?;{"I"Z#|   如果以前没有备份的话,就利用我上面的sql命令进行修复,
$\7S|7M?!Pob
OyQk1g(~3];p   如何预防sql数据库挂马: o3A Fb#t6?
.f*|pdGg2o'h T/A
  1、清理网站上所有注入点。 s4Ip)N(QiZ0`

9cG l/MH-]   2、为网站配置可靠的防注入程序。
w$pr EO B%[WT5uK
  3、最好在网站源码中做好过滤,在数据库中限制字符的类型和长度。
Ry4G$wM(H]2g
M Tm Y#f;qd%j   4、养成经常备份数据库的习惯。大家可能无法保证天天备份数据库,但也会保证每周备份一次,如果有时间保证天天备份数据库。
XAv Q){H7L )p1\'R8g%K9a xJvhi
  5、最好是请专业的网站安全公司,对您的站和服务器做彻底的安全评估。

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.