Hi,Dear all   这段时间总是遇到这种问题: 网站中所有凡是JS的文件都被注入<iframe src="****"></iframe>的代码.
   而且还都很有规律,定期会注入一次.
   把文件夹的属性设置为只读了还是会被写入.  实在不知怎么弄,希望大家可以帮我多多指点下.  ^_^

解决方案 »

  1.   

    出现这种情况 一般是站点被黑了 请查看你站点的文件夹权限 是不是USER用户给打开了写入权限
      

  2.   


    删除所有注入字段
    DECLARE @fieldtype sysnameSET @fieldtype='varchar'
    --删除处理DECLARE hCForEach CURSOR GLOBALFORSELECT 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 tWHERE o.id=c.id     AND OBJECTPROPERTY(o.id,N'IsUserTable')=1    AND c.xusertype=t.xusertype    AND t.name=@fieldtypeEXEC sp_MSforeach_Worker @command1=N'?'
      

  3.   

    看见这些问题N次了,一个很简单的方法,用麦咖啡+自定义规则,禁止写入网页文件http://hi.baidu.com/784622846/blog/item/2d206d46b268ef0d6a63e503.html最后把sql语句改为参数化,,过滤掉单引号和-
      

  4.   

    这个问题我也遇到过,基本上原因是由于服务器产生漏洞或是程序有漏洞间接的被小黑上传了木马所致。解决起来没有什么好办法,手动删除吧,或者遍历JS文件,将<iframe>..</iframe>过滤掉
      

  5.   

    我的网站也被注过,如果你的POST已经过滤过一些函数和特殊符号的话,
    那攻击者就是用的GET 或 COOKIE攻击了,对于这种形式,
    解决方式有四种
    1比如 view.aspx?id='20000000'  
       以上页面,你如果直接  select * from 表 where id='"+request.querstring['id']+"'" 的话.
     攻击者可以构造新SQL语句来对你的数据表进行增删改.
     你可以对 request方法做严格过滤.2你可以写存储过程,这种我就不讲了,我自己对这也不是很熟.你可以自己查找资料.3在服务器的IIS上安装IIS防火墙,如果是虚拟主机,那就没办法了, 现在网上IIS防火墙有很多种,
     当然也有免费版的,你自己找一下吧,我就不提那种了,免的有做广告之嫌.价格正常在三百到三千左右.4线路上布置WEB应用防火墙 接在普通墙与应用服务器之间 不过代价比较高,本人单位就用了这个,呵呵,价格吗,三十万左右吧