当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 讲解SQL Server数据库被挂马的解决方案

MSSQL
SQL查询结果集对注入的影响及利用
Access入门:Access的特点及其概念问答
关于SQL注入的几类错误和产生的原理
使用SQL语句取随机数的方法
SQL教程:提高SQL执行效率的几点建议
SQL Server数据库常用的T-SQL命令
实战:全面了解SQLServer注入过程
SQL Server 2000的SA密码被破解实例
union组合结果集时的order问题
MSSQL汉字转拼音函数实现语句
sqlserver 中ntext字段的批量替换(updatetext的用法)
sqlserver 常用存储过程集锦
MSSQL 删除数据库里某个用户所有表里的数据
MSSQL 多字段根据范围求最大值实现方法
MSSQL 首字母替换成大写字母
MSSQL 提取汉字实现语句
sqlserver 字符串分拆 语句
实现按关健字模糊查询,并按匹配度排序的SQL语句
SQLSERVER中union,cube,rollup,cumpute运算符使用说明
sqlserver 禁用触发器和启用触发器的语句

MSSQL 中的 讲解SQL Server数据库被挂马的解决方案


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 50 ::
收藏到网摘: n/a

案例:一个网站遭遇入侵,破坏相当严重,SQL数据库被挂马,所有的表里面大部分字段都被多次重复插入挂马代码,查看日志,还好没有涉及到服务器的安全,只是数据库那里出现了很多异常警告而已,网站确实存在漏洞。

没有办法,我只得修复数据库,因为他们没有数据库备份,根本就没有办法还原数据库啊,何况连事务日志都没有开启,试着恢复了几次都不成功,恢复数据库没有一点希望,我只得乖乖的帮他们清理挂马代码,不可能手工删除挂马代码,毕竟数据太大了,不可能去直接修改,通过四处搜寻得到了一个勉强有效的解决办法,每个表里面去执行一下这个sql语句:

update tablename set @ziduanming =replace(cast(@ziduanming as varchar(8000)),'',null)

上面的sql语句可以对应修改表,字段名,和替换内容。

其实,sql数据库挂马是一种较新的挂马方法,只要网站存在注入,并且连接数据库是db owner权限就可以进行数据库挂马,估计这次攻击的流程应该是自动化的,通过先进的扫描技术批量收集到几万网站的SQL注入漏洞,针对漏洞攻击,进行自动化的SQL注入挂马。这次应该有很多网站遭殃了,asp+mssql的是主要被攻击对象!

SQL Server数据库挂马的解决办法:

正确清理木马,注意数据库不能随便修改或删除,被挂上马后,更需要谨慎的操作。建议,先备份然后再小心清理。

如果以前没有备份的话,就利用我上面的sql命令进行修复,

如何预防SQL数据库挂马:

1、清理网站上所有注入点。

2、为网站配置可靠的防注入程序。

3、最好在网站源码中做好过滤,在数据库中限制字符的类型和长度。

4、养成经常备份数据库的习惯。大家可能无法保证天天备份数据库,但也会保证每周备份一次,如果有时间保证天天备份数据库。

5、最好是请专业的网站安全公司,对您的站和服务器做彻底的安全评估