标签归档:恶意代码

时刻警惕WordPress的恶意代码

近期在做Tomato计划的时候老是出现一个奇怪的事情,原本functions.php里面的东西删除之后老是反复出现,刚开始还没觉得有啥奇怪,以为是在复制的时候把原来的复制过来了,没往恶意代码那方面想。直到前天,自己在上传两个主题往测试站的时候,出现了主题有代码函数冲突的情况,仔细检查一下,原来删除的代码重复出现。这下子激起佐语的好奇心了。这怎么回事?结果昨天的一次搜索让佐语彻底明白,原来是感染了恶意代码了,而且还是流行很久的恶意代码。

网上有很多这段代码的解释,佐语就不一一贴出来了。具体可以看欲思博客的解释,很清晰。

欲思博客《小心WordPress主题functions.php包含的恶意代码》的原话是:

“这段代码是被加在在functions.php的?>后面的。如果发现了类似的多余函数,或者很多个?>那就要检查一下了。修改的时候记得把其他WordPress主题的functions.php设置为只读。这样才能不被感染。全部改完后再把权限修改回来。”

基本代码是这样的:

  1. function _checkactive_widgets
  2. function _get_allwidgets_cont
  3. function stripos
  4. function strripos
  5. function scandir
  6. function _getprepare_widget
  7. function __popular_posts
  8. add_action("admin_head""_checkactive_widgets");
  9. add_action(“init”, “_getprepare_widget”);
  10. _verify_isactivate_widgets
  11. _check_isactive_widget
  12. _get_allwidgetscont
  13. _prepare_widgets
  14. __popular_posts

经过检查,佐语的大部分主题都被感染了这个恶意代码,这个代码可以自动感染Theme文件夹中的所有functions.php文件,所以根据欲思的解决方法是把其他WordPress主题的functions.php设置为只读。这样才能不被感染。全部改完后再把权限修改回来。在这点上佐语也不知道怎么修改权限,干脆直接将所有主题(包括默认主题)全部删除,然后用FTP根据重新上传新的主题,使问题得以解决,简单粗暴直接明了

据大神们说这个恶意代码主要是感染functions.php文件,其他的就不得而知了。

恶意代码是怎么来的?嗯,这个真不知道,明月登楼博主在《WordPress站点恶意代码的分析和排查方法》中说到是:“给站点带来恶意代码的插件就占了 80%以上(有官网插件、网上流传的插件等等),其他的就是主题了(以破解版、盗版主题为主)。”

总体分析,佐语的主题恶意代码估计是在参考别人的主题时候感染的。毕竟有时候还是会下载到破解版的主题的。幸好发现及时,同时也让佐语得到警醒,必须时刻主题代码的安全。在这也提醒各位站长,网站安全不容忽视。