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

sqlserver 数据库被注入解决方案

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

匿名通过本文主要向大家介绍了数据库,被注入等相关知识,希望本文的分享对您有所帮助

定义要去除的字符,请注意,肯定不止一条,我的服务器就查到许多不同的代码

代码如下:
declare @delStr nvarchar(500)
set @delStr='' --这里被注入的字段串
/****************************************/

/**********以下为操作实体************/
set nocount on

declare @tableName nvarchar(100),@columnName nvarchar(100),@tbID int,@iRow int,@iResult int
declare @sql nvarchar(2000)

set @iResult=0
declare cur cursor for
select name,id from sysobjects where xtype='U'

open cur
fetch next from cur into @tableName,@tbID

while @@fetch_status=0
begin
declare cur1 cursor for
select name from syscolumns where xtype in (231,167,239,175, 35, 99) and id=@tbID
open cur1
fetch next from cur1 into @columnName
while @@fetch_status=0
begin
set @sql='update [' + @tableName + '] set ['+ @columnName +']= SUBSTRING([' + @columnName + '],' + '1, PATINDEX( ''%' + @delStr + '%'', [' + @columnName + '])-1) + ' + 'SUBSTRING([' + @columnName + '], PATINDEX( ''%' + @delStr + '%'', [' + @columnName + ']) + ' + 'len(''' + @delStr + ''') , datalength([' + @columnName + '])) where ['+@columnName+'] like ''%'+@delStr+'%'''

exec sp_executesql @sql
set @iRow=@@rowcount
set @iResult=@iResult+@iRow
if @iRow>0
begin
print '表:'+@tableName+',列:'+@columnName+'被更新'+convert(varchar(10),@iRow)+'条记录;'
end
fetch next from cur1 into @columnName


end
close cur1
deallocate cur1

fetch next from cur into @tableName,@tbID
end
print '数据库共有'+convert(varchar(10),@iResult)+'条记录被更新!!!'

close cur
deallocate cur
set nocount off
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

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

  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析远程连接管理其他机器上的MYSQL数据库
  • 解析mysql 缓存如何使用内存
  • 浅析mysql 语句的调度优先级及改变
  • 关于mysql 的时间类型选择
  • 基于mysql体系结构的深入解析
  • 解析mysqldump的delay-insert选项
  • 优化mysql数据库的经验总结

相关文章

  • 2018-12-05在MySQL中用正则表达式替换数据库中的内容的方法
  • 2018-12-05什么是mongoDB数据库
  • 2018-12-05关于中文数据的10篇文章推荐
  • 2017-05-11Mysql错误1366 - Incorrect integer value解决方法
  • 2017-05-11讲解MySQL中<=>操作符的用法
  • 2018-12-05mysql诊断启动问题、查看日志文件详解
  • 2018-12-05MySQL基础教程13 — 函数之与GROUP BY子句同时使用的函数
  • 2018-12-05ADODB 入门第1/2页
  • 2018-12-05删除表的sql语句在不同数据库中的写法详解
  • 2017-09-17Heartbeat+DRBD+MySQL高可用方案

文章分类

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

最近更新的内容

    • MySQL解压包的安装与下载的图文教程
    • mysql update语句的用法详解
    • 修改Innodb的数据页大小以优化MySQL的方法
    • 解析MySQL 主从复制的原理和配置
    • mysql的索引优化如何使用
    • consul架构的 MHA 自动切换实例详解
    • MySQL之-Replication监控及自动故障切换的详细分析
    • MySQL基本命令、常用命令总结
    • MySQL导入导出.sql文件及常用命令小结
    • win2003 mysql单向同步配置步骤[已测]

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

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