zoukankan      html  css  js  c++  java
  • 数据库被注入js 木马 解决方法 通过

              今天上班,刚做好的一个网站挂了二个多月,被挂马了,并且是在数据库时面. 表现特征为 <script src=http://z360.net></script>

              在网上查询了一下,找到一此方法,刚开始并不知道是数据库里面被挂马了,找了一遍网页没有发现任何的问题.说明是数据库的问题了.所以就打开数据库来查看一下,大部分字段已经有<script src=http://z360.net></script>  这样的特征了,

       所以就是网上查了一下解决方案:

    解决方法为 :

                

    declare @ReplaceSourceStr varchar(100),@ReplaceDescStr varchar(100)
    select @ReplaceSourceStr='<script>',@ReplaceDescStr=''
    declare my_cursor cursor scroll
    for
    select case when cols.xtype=35 or cols.xtype=99 then
    'update '+tbls.name+' set ' + cols.name + '=replace(cast('+cols.name+' as varchar(8000)),'''+@ReplaceSourceStr+''','''+@ReplaceDescStr+''')'
    else
    'update '+tbls.name+' set ' + cols.name + '=replace('+cols.name+','''+@ReplaceSourceStr+''','''+@ReplaceDescStr+''')'
    end
    from
    (select * from sysobjects where xtype='u') tbls
    inner join
    syscolumns cols on cols.id=tbls.id
    where cols.xtype in (select xtype from systypes where name in('varchar','nvarchar','ntext','text','char' ))


    open my_cursor
    declare @fname varchar(2000),@sum int
    set @sum=0
    fetch next from my_cursor into @fname
    while(@@fetch_status=0)
    begin
    set @sum=@sum+1
    exec(@fname)
    fetch next from my_cursor into @fname
    end
    print @sum
    close my_cursor
    deallocate my_cursor

     

    它的功能为:   就是把这个数据库下,所有的表中的varchar','nvarchar','ntext','text','char'类型的字段,里中的,都替换掉

     

     

    最后将:

     

     select @ReplaceSourceStr='<script>',
     把这个<script> 换成你被注入的js

     

    大功告成

     

     

     

    一个人的孤独,一个人的封闭,不如一起努力!

  • 相关阅读:
    codevs 3115 高精度练习之减法 swap
    codevs 3116 高精度练习之加法
    poj 3984 迷宫问题
    codevs m进制转化成10进制
    codevs 1214 线段覆盖
    codevs 3143 二叉树的序遍历
    codevs 3145 汉诺塔
    HDU 5093 Battle ships [二分图匹配]
    HDU 5074 Hatsune Miku [dp] ——2014鞍山现场赛E题
    ZOJ 3793 First Digit (逗比题)
  • 原文地址:https://www.cnblogs.com/yhongl/p/3937949.html
Copyright © 2011-2022 走看看