關于客戶網站被掛馬的事件解決分享
事件背景:
近期深分多個一線反饋,在icrm系統\呼叫中心平臺中打開某些賬號的網站時,會跳轉到等非用戶網站。現象如下:
1. 客戶網站在搜索引擎中搜索的結果,可以看到,已經被快照收錄成錯誤的網站。
2. 點擊上面的跳轉鏈接,則打開一個網站
3. 但是直接敲網址訪問則是正常顯示。
直覺分析,客戶被掛馬了。
什么是掛馬?
百度百科上的說法:
所謂的掛馬,就是黑客通過各種手段,包括SQL注入,網站敏感文件掃描,服務器漏洞,網站程序0day, 等各種方法獲得網站管理員賬號,然后登陸網站后臺,通過數據庫“備份/恢復”或者上傳漏洞獲得一個webshell。利用獲得的webshell修改網站頁面的內容,向頁面中加入惡意轉向代碼。也可以直接通過弱口令獲得服務器或者網站FTP,然后直接對網站頁面直接進行修改。當你訪問被加入惡意代碼的頁面時,你就會自動的訪問被轉向的地址或者下載木馬病毒。
這里注意兩點,1.被掛馬,說明服務器并不安全,程序或者系統存在漏洞,或者管理的賬號密碼已經被泄露;2.黑客已經獲得了服務器或網站的權限,能操作文件。
掛馬的危害:
這個案例的危害在于,被掛馬的網站,所有通過百度域名來源跳轉的流量,都被跳到惡意網站。
從客戶角度來看:
1. 在百度投入的流量被劫持,有顯示,但是跳入不到網站中,相當于損失了這部分流量,白白花費了金錢;
2. 客戶的網站被掛馬一段時間后,在快照收錄時會被處理成惡意網站,降低網站質量,影響客戶形象
對百度影響:
1. 由于只有百度搜索來源的流量被跳轉到惡意網站,客戶可能會覺得是不是百度跳轉做了什么手腳導致出問題,影響百度形象和信任度。
2. 快照收錄時收錄了惡意網站信息,不能正常顯示客戶網站,影響推廣效果和質量,服務質量降低。
發現問題時我們第一反應是跟客戶解釋這不是百度的問題,是可能您的服務器被黑客攻破了修改了程序,然后才導致這樣的情況的。可是盛怒之下客戶根本聽不進去,空間運營商(客戶網站是掛在某家云資源運營商上的)一口咬定不背鍋。客戶已經著急到威脅投訴和停止投放了,于是客服只能反饋到工作臺維護群里,看看能不能處理這樣的問題。
事件分析和處理
首先分析這個掛馬的動機,因為并不是什么電商或者保密網站,黑客并沒有竊取什么信息或者直接偷取什么利益,唯一的收益是將網站的流量進行劫持,當然也不排除有同行作惡的事件。
此外,直接訪問網站能正常訪問,只是在從搜索跳入時進行了跳轉(跟蹤發現了網站請求302的狀態),而且是在訪問了域名url后直接被302跳轉。說明木馬或者惡意代碼做了來源(refer)限定判斷。
而進一步排查二級頁面(如首頁往下某個欄目頁面),即使從搜索引擎跳入也不會被轉到惡意網站。則初步分析,應該是在首頁處理上做了手腳。
使用瀏覽器另存網頁,獲取首頁的源碼,初步查看了一下,html段并沒有發現異常代碼。然后分別查看js文件內容,也沒有被附加別的代碼。
重新分析整個異常流程:
首先需要確定的是走的路徑1還是路徑2,如果是路徑1,則說明是index.html代碼有問題;如果是路徑2,則可能是域名登陸頁有問題、或者是在應用層進行了轉發。
從瀏覽器調試工具或者抓包工具看到,baidu 跳轉url已經將請求轉發到了www.abc.com域,但是在域響應返回值上看到,直接返回302 ,則說明服務直接進行了跳轉,沒有經過index.html 一類的響應頁面,所以得知走的是路徑2 。
初步懷疑是客戶的cms內容管理程序的網站首頁文件出了問題(如index.php,index.jsp)等。經客戶同意后,登陸其服務后臺。得知是一個php寫的cms程序。找到了默認首頁index.php
發現其頭部有這么一段:
經過與這個cms程序產品標準版比對,得知開始的代碼并不是正常代碼,而是一段被加入的代碼,但是代碼被加密了,通過別的方式解碼比對后得知,這里是一個重定向語句。刪掉后,重新生成首頁,問題解決。
其他方式的掛馬
簡單的頁面修改:
Index.html頁面底部被拼接一段js,直接刪除就可以了。此外,jquery的js文件,因為使用較為廣泛,所以也容易被掛馬。
稍微復雜的掛馬:
Gif文件掛馬,gif文件請求本身也可以是一個文本文件,而且會被當作js執行,所以也經常偽裝成木馬文件,檢查的方式,可以查看文件預覽圖,如果是文本文件,則預覽圖無法正常顯示。
XSS漏洞掛馬:
本身原理是利用一些編寫不嚴謹的flash文件執行了惡意代碼加載特定文件,來控制進行文件跳轉。如常用的分享按鈕生成代碼等。例子參見 http://www.2cto.com/article/201504/394183.html |