WORDPRESS站点被挂马?如何预防、检测和应对?

何为“挂马”?

所谓的挂马,就是黑客通过各种手段,包括SQL注入,网站敏感文件扫描,服务器漏洞,网站程序0day, 等各种方法获得网站管理员账号,然后登陆网站后台,通过数据库 备份/恢复 或者上传漏洞获得一个webshell。利用获得的webshell修改网站页面的内容,向页面中加入恶意转向代码。也可以直接通过弱口令获得服务器或者网站FTP,然后直接对网站页面直接进行修改。当你访问被加入恶意代码的页面时,你就会自动的访问被转向的地址或者下载木马病毒。 ——摘自百度百科

由此可见,挂马一般是由于两方面原因造成的:其一,服务器环境不安全;其二,网站源码有漏洞。

常见的挂马手法?

js挂马(如iframe,html标签歪用(如< img src=”http://domain.com/getcookie.js” />)等)、PHP挂马(如用php的eval函数。要执行的邪恶代码可直接写出来,也可保存在数据库里面)、SQL注入等。

如何最大程度预防挂马?

1.尽量避免使用免费主机、劣质主机,建议购买像 阿里云 这样有实力的公司的主机服务。

2.尽量使用官方的WordPress源码包、主题和插件,或到主题作者那里下载或购买原版,避免各种”破解版“主题或插件

常见的WordPress挂马及排查方法?

1.WordPress主题,尤其是functions.php文件,可能会感染你主题目录下的所有主题(查看例子)。此外,查看网站源代码的头部和尾部,看看是否包含不明链接、js文件等。

2.WordPress插件,插件的执行权力比较大,排查难度也较大,一般是在插件的主要执行文件中。如果查不出来,建议删除所有插件,然后重新从官方安装。

3.wp-config.php,这是WordPress的主要配置文件,如果这个被改了,说明你的数据库信息应该已经完全泄露了。看看哪些代码比较可疑,删除之,前提是,你比较熟悉这个文件常有的设置选项。此外,检查你的数据库文件,更换数据库密码等信息。

4. .htaccess,该文件在文章根目录下,有时可能是隐藏的,最常见的就是设置域名的恶意转向。可以直接删除该.htaccess 文件,然后重新设置一下wordpress的固定连接,即可恢复网站的正常访问了。

如何检测是否被挂马?

目前网络上有不少工具,可以检测出大多数的挂马行为,比如:

在线工具类

Google Safe Browsing:http://www.google.com/safebrowsing/diagnostic?site=http://www.wpdaxue.com (后面换成你的域名)

onlinelinkscan:http://onlinelinkscan.com/

Unmask Parasites:http://www.unmaskparasites.com/

McAfee SiteAdvisor:http://www.siteadvisor.com/

360网站安全检测:http://webscan.360.cn/

安全宝:http://www.anquanbao.com/

WordPress插件

1.Exploit Scanner:http://wordpress.org/extend/plugins/exploit-scanner/

Exploit Scanner 是比较强大的安全扫描插件,可以比较全面检测你的WordPress源码文件。

2.Theme Authenticity Checker (TAC):http://wordpress.org/extend/plugins/tac/

Theme Authenticity Checker 是一个专门扫描WordPress主题的免费插件,它可以扫描你的WordPress主题文件中潜在的恶意或有害代码。

3.Hacklog Integrity:http://ihacklog.com/post/hacklog-integrity.html

该插件是 荒野无灯 大师折腾的,采用文件校验对比的方式检查出哪些文件被修改,从而方便我们排查。