zoukankan      html  css  js  c++  java
  • 清除注入sq里面的js木马l



    declare @delStr nvarchar(500
    set @delStr='<script src=http://8f8el3l.cn/0.js></script>' --要被替换掉字符 
    /*
    *********以下为操作实体************/ 
    set nocount on 

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

    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 
            
    --xtype in (231,167,239,175) 为char,varchar,nchar,nvarchar类型 
            select name from syscolumns where xtype in (231,167,239,175and id=@tbID 
      
    open cur1 
      
    fetch next from cur1 into @columnName 
      
    while @@fetch_status=0 
      
    begin 
          
    set @sql='update [' + @tableName + '] set ['+ @columnName +']= replace(['+@columnName+'],'''+@delStr+''','''') 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 

    ------------检测

    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= ''   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
  • 相关阅读:
    es6基础系列二:Number
    es6基础系列一:let和const
    linux常用命令
    input 事件与汉字输入法:使用compositionend事件解决
    正则表达式
    php 调试环境配置(mac)
    前端实习生:10个月的总结
    人生路:程序员、飞行员?
    科三流水账
    阻止pc端浏览器缩放js代码
  • 原文地址:https://www.cnblogs.com/wangjun8868/p/1534890.html
Copyright © 2011-2022 走看看