今天一个同事跟我说,他的一个站被挂了黑链,找了半天没找出来哪里被挂的。一开始我还以为是他的管理员账号密码被盗,但后来想想wordpress的安全性应该没那么差,而且他的站做的也不好,没人会来盗他的账号。考虑到是不是整个空间或者服务器被入侵了,里面的站都被挂上了链接。后来我要了账号密码,看了下他们的后台代码,才发现原来是插件搞的鬼。

这个黑链在首页上是看不到的,但在首页源码中可以看到。这个插件是国产插件,作用是统计搜索引擎蜘蛛在你的站爬过的页面,看似一个做SEO的插件,实际上是为了给作者挂上黑链。我们可以编辑插件看看它的代码:

function XXX(){
	if(is_home()){
		echo "<a style="padding: 2px 4px; background: #eee; font-size: 12px; text-decoration: none;" href="http://www.***.net.cn">**</a>";
	}

这里定义了一个方法,用来写入这个黑链,但在什么时候会调用这个方法呢?

add_action( 'wp_footer', 'XXX' );

通过这一行代码,就在wp_footer函数中加入了XXX这个方法的执行,那么在页面底部代码生成后就会加入上面的a标签,但我们在查看主题的footer文件和index文件都看不出什么问题。所以插件中挂黑链的问题我们应该引起重视,因为很多人并不会去查页面的源码,也就发现不了网站被挂了黑链,就会影响到网站的SEO。

很多人开发主题,开发插件,会加上自己的链接,如果是明着加那也可以原谅,但如果加暗链,那性质就是黑客了,这种插件就应该去投诉,不让它出现在wordpress的官网上。如果你们有使用一些不太热门的插件,建议检查一下插件的代码,或者看看网站源码有没有被加入链接,不然辛辛苦苦做站效果就真的白费了。

黑链