替换数据库Script注入

来源:互联网 发布:pr恢复默认界面mac 编辑:程序博客网 时间:2024/06/03 17:29

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://3b3.org/c.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;

原创粉丝点击