• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > SqlServer中批量替换被插入的木马记录

SqlServer中批量替换被插入的木马记录

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了批量替换,木马记录等相关知识,希望本文的分享对您有所帮助

最近公司做的一个事业性质网站被黑客攻击了,通过sql注入方式,把木马注入了数据库,整个MSSQL SERVER 的数据都被附加上恶意脚本了

最近找了找 批量替换被插入的木马记录,找到了一条好的语句,用处很大,仅仅使用十几行游标语句,把整个数据库的所有表的恶 意木马清除掉了,而且在Google搜索到此记录几率很小,在此专门转载一下!为了以后自己能找得到,也希望后人能得到帮助。
原文如下:
代码如下:
declare @t varchar(555),@c varchar(555) ,@inScript varchar(8000)
set @inScript='恶意代码'
declare table_cursor cursor for select a.name,b.name from sysobjects a,syscolumns b where a.id=b.id and a.xtype='u' and (b.xtype=99 or b.xtype=35 or b.xtype=231 or b.xtype=167)
open table_cursor
fetch next from table_cursor into @t,@c
while(@@fetch_status=0)
begin
exec('update ['+@t+'] set ['+@c+']=replace(cast(['+@c+'] as varchar(8000)),'''+@inScript+''','''')' )
fetch next from table_cursor into @t,@c
end
close table_cursor
deallocate table_cursor;

彻底杜绝SQL注入
1.不要使用sa用户连接数据库
2、新建一个public权限数据库用户,并用这个用户访问数据库
3、[角色]去掉角色public对sysobjects与syscolumns对象的select访问权限
4、[用户]用户名称-> 右键-属性-权限-在sysobjects与syscolumns上面打“×”
5、通过以下代码检测(失败表示权限正确,如能显示出来则表明权限太高):
代码如下:
DECLARE @T varchar(255),
@C varchar(255)
DECLARE Table_Cursor CURSOR FOR
Select a.name,b.name from sysobjects a,syscolumns b
where a.id=b.id and a.xtype= 'u ' and (b.xtype=99 or b.xtype=35 or b.xtype=231 or b.xtype=167)
OPEN Table_Cursor
FETCH NEXT FROM Table_Cursor INTO @T,@C
WHILE(@@FETCH_STATUS=0)
BEGIN print @c
FETCH NEXT FROM Table_Cursor INTO @T,@C
END
CLOSE Table_Cursor
DEALLOCATE Table_Cursor
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Access中批量替换数据库内容的两种方法
  • SqlServer中批量替换被插入的木马记录
  • 批量替换 MySQL 指定字段中的字符串
  • mysql替换表中的字符串的sql语句
  • 批量替换sqlserver数据库挂马字段并防范sql注入攻击的代码
  • MSSQL批量替换语句 在SQL SERVER中批量替换字符串的方法
  • sqlserver 中ntext字段的批量替换(updatetext的用法)
  • Sql 批量替换所有表中内容

相关文章

  • 2018-12-05一道sql面试题附答案
  • 2018-12-05mysql错误代码查询
  • 2018-12-05同一台机器运行多个mysql
  • 2018-12-05MySQL中关于Join的使用示例分享
  • 2017-05-11mysql主从同步复制错误解决一例
  • 2017-05-11mysql常用监控脚本命令整理
  • 2018-12-05各大数据库分段查询技术的实现方式
  • 2018-12-05介绍一个简单的数据库Database 教程(一)
  • 2018-12-05oracle 数据泵导入导出介绍
  • 2018-12-05MySQL 事务

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • MySQL安装图文详解
    • MySQL之——CentOS6.5_x64安装配置drbd8.4.2
    • mysql中max_allowed_packet参数的配置方法(避免大数据写入或者更新失败)
    • MYSQL数据库的搬家流程
    • 把数据批量插入具有Identity列的表的方法
    • Mac下安装mysql5.7.18的详细步骤
    • Mysql数据库绿色版出现系统错误1067怎么办?
    • SQL server 管理事务和数据库介绍
    • 解决Mysql收缩事务日志及问题解决办法
    • MySQL下将一个表的数据插入到另外一个表的实现语句

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有