伺服器被黑遭攻擊,凌晨一點緊急逆襲
凌晨 1 點,接到朋友的求助,網站被黑了,訪問網站首頁會自動定向到一個賭博網站,這個時間點都是該進入夢鄉的時間,直接開干。
本文分為以下五個部分介紹:
入侵情況分析
伺服器第一次安全處理
伺服器第二次安全處理
日誌分析和追蹤
總結及分析
入侵情況分析
查看首頁代碼
通過查看首頁(index.html/index.php)源代碼發現網站存在 3 處編碼後的代碼,如圖 1 所示,分別在 title、meta 屬性中加入了代碼,對代碼文件中的其他代碼進行查看,未發現有異常。
圖 1:首頁中的可疑代碼
Unicode 編碼轉換
從首頁中插入的代碼來看是 Unicode 編碼,將其複製到 Unicode 編碼在線解碼的網站(http://tool.chinaz.com/tools/unicode.aspx),並選擇 Unicode 轉 ASCII。
如圖 2 所示,解碼後的內容為菠菜宣傳語,換句話說就是黑鏈宣傳,網站被插入黑鏈了。
圖 2:分析網站被插入鏈接
伺服器現狀
公司網站發現情況後,由於伺服器前期運維人員已經離職,網站是託管在獨立伺服器,目前僅僅只有管理員帳號,所以無法直接進入伺服器。
在該情況下,迅速開展以下工作:
通過已知管理員帳號登錄前台和後台進行查看。登錄前台可以使用,後台無法使用,懷疑文件被修改或者刪除,無法通過後台來查看如何被入侵的。
對目標網站進行漏洞掃描。
查看同 IP 其他網站。通過查看該 IP 地址同伺服器其他網站,發現伺服器上存在 4 個其他站點,後經詢問 4 個站點均不是公司架設的。懷疑黑客在伺服器上架設站點用來進行 SEO 黑鏈服務。
網站漏洞分析
確認網站系統情況
手工通過 robots.txt 文件確認網站採用某網站 CMS v7 版本,這個系統很多漏洞,一看心裡就涼了。
發現列目錄漏洞
通過手工和掃描判斷伺服器配置上沒有禁止目錄瀏覽,導致伺服器所有目錄均可以被訪問。
如圖 3 所示,通過 upload_files 可以看到很多 447 位元組的 PHP 文件,第一感覺就是掛馬、黑鏈創建文件或者是後門文件。
後面通過分析一句話後門的大小,一句話後門文件的大小為 30 位元組,跟 447 位元組相差太遠,直接排除一句話後門,當然有可能是加密的一句話後門。
圖 3:列目錄漏洞
發現本地文件下載漏洞
通過了解此網站 CMS V7 版本存在的漏洞發現存在一個文件下載漏洞,其漏洞利用為:http://www.*******.org.cn/do/job.php?job=download&url=base64編碼文件地址,base64 編碼文件地址。
例如data/config.php需要將最後一個 p 更換為「
其對應 url 中的未編碼地址應為:data/config.ph
http://www.****.org.cn/do/job.php?job=download&url=ZGF0YS9jb25maWcucGg8
http://www.****.org.cn/do/job.php?job=download&url=ZGF0YS91Y19jb25maWcucGg8
http://www.****.org.cn/do/job.php?job=download&url=ZGF0YS9teXNxbF9jb25maWcucGg8
在瀏覽器中訪問即可下載這些文件,在本地打開即可查看代碼,如圖 4 所示,讀取到資料庫配置是 root 賬號。
圖 4:獲取網站敏感文件內容
通過同樣的方法讀取upload_files/kongzhipin.php文件,其內容如圖 5 所示,典型的 SEO 手法。
圖 5:網站 SEO 黑鏈代碼源文件
獲取本地物理地址
通過訪問cache/hack目錄下的search.php文件,成功獲取網站的真實物理路徑。
如圖 6 所示,目前有 mysql root 賬號和密碼,有真實路徑,離獲取 webshell 已經很近了。
圖 6:獲取真實物理路徑
文件上傳及 IIS 解析漏洞
如圖 7 所示,可以通過 ckfinder.html 在其上傳目錄中創建 1.asp 和 1.php 目錄,如果伺服器存在解析漏洞可以直接獲取 webshell。
圖 7:文件解析及上傳漏洞
資料庫導入漏洞
如圖 8 所示,通過文件目錄漏洞發現在資料庫備份目錄存有資料庫備份文件,前期通過文件下載漏洞獲取了資料庫用戶名和密碼,在這裡輸入後,可以使用舊數據覆蓋新數據。
在實際測試時一定要小心,一旦使用該漏洞進行測試,對資料庫將是毀滅性的,資料庫導入一般都是先 drop,後插入。
因此執行此操作後,能成功恢複數據的可能性非常低,建議網站管理人員定期備份資料庫以及代碼文件!
圖 8:資料庫導入漏洞
伺服器第一次安全處理
備份當前網站代碼及資料庫
最重要的事情就是備份,備份資料庫及其代碼文件到本地,注意是備份當前的資料庫和源代碼。
如果是要報案,則最好使用備份伺服器恢復網站和數據,被入侵伺服器留好數據,便於打擊和取證,備份源代碼和資料庫可以用在後面進行分析,對黑客進行追蹤和定位。
使用 WebShellKill 查找後門文件
查殺後門
個人覺得 WebShellKill 這個工具不錯,可以自動檢測很多已知的後門文件和一些病毒文件,它的最新版本是 2.0.9。
下載地址:http://www.d99net.net/down/WebShellKill_V2.0.9.zip
下載後選擇需要掃描的目錄即可開始查殺,如圖 9 所示,在該站點下找到幾百個黑鏈及後門文件,不看不知道,一看嚇一跳,入侵者真狠!對這些可疑文件進行查看和刪除。
圖 9:查殺後門文件
網站大馬
如圖 10 所示,在伺服器上發現多個 webshell 大馬,該 webshell 可以對文件、資料庫等進行操作,功能強大。
圖 10:網站大馬
沒有最黑,只有更黑
通過對網站進行大小查看,一個普通的網站竟然超過 20G,明顯不正常,如圖 11 所示,在 data_cache 中,黑客用來做 SEO 竟然高達 21.8552 萬個頁面,共計 15.3G。
圖 11:黑客使用緩存文件高達 15G 大小
刪除伺服器添加賬號及後門文件
通過計算機管理-「本地用戶和組」-「用戶」,查看計算機上所有的用戶
經過朋友的確認,紅色框住用戶全部為黑客添加賬號,如圖 12 所示,共計 7 個賬號,將其刪除。
圖 12:黑客添加賬號
查看管理員組和對應用戶所屬文件夾
如圖 13 所示,通過命令查看管理員及用戶賬號,並查看當前用戶的配置文件,在其配置文件中包含一些黑客攻擊工具,將這些文件全部打包壓縮,然後刪除用戶及其配置文件。
圖 13:查看管理員賬號及其黑客賬號配置文件
清理伺服器後門文件
對於伺服器後門文件清理就要靠個人經驗和技術,一方面可以藉助安裝 360 等殺毒軟體來進行自動查殺,如圖 14 所示,系統盤下一堆病毒。
通過殺毒軟體的查殺可以清理第一批,對於被入侵過的伺服器,建議是重做系統!
圖 14:使用殺毒軟體對病毒進行查殺處理
實在沒有辦法只能手工對病毒進行清理。後續可以藉助 autoruns 和 processxp 等工具對啟動項、服務、進程等進行查看。
如果發現無簽名,可以採取以下一些辦法:
將可疑文件直接上報殺毒網站進行引擎查殺。可以將樣本直接上報卡巴斯基和 360 等平台。(https://virusdesk.kaspersky.com/、http://sampleup.sd.360.cn/)
更多上報地址請查看http://www.stormcn.cn/post/782.html。
通過百度等搜索引擎搜索名稱,查看網上有無相關資料。
對可疑程序做好備份後,將其刪除。
頑固病毒需要通過冰刃以及進程管理等工具強行結束進程,然後再刪除。
通過 CurrPorts(http://www.nirsoft.net/utils/cports.zip)查看當前網路連接程序及其相關情況。
實在不放心就要用抓包程序對伺服器進行抓包,查看對外連接。
記得清理 shift 後門和放大鏡等可以利用遠程桌面啟動的後門,建議將 shift、放大鏡等程序直接清理或者禁用。
更改所有賬號及密碼
至此第一段落網站入侵清理完畢,對所有網站使用的賬號及密碼進行更改,更改所有密碼,包括遠程桌面,ftp、ssh、後台管理、資料庫賬號密碼等。
由於黑客入侵過,可能已經下載資料庫和獲取所有相關密碼,因此需要全部進行更改。
恢復網站正常運行
對網站進行恢復,使其正常運行,同時開啟防火牆,對外僅僅開放 80 埠和遠程管理埠。
伺服器第二次安全處理
伺服器再次出現掛黑鏈現象
過了兩天伺服器再次出現問題,發現網站再次出現黑鏈現象,百度搜索該網站域名,出現結果一訪問就指向賭博網站。
手動清理後門文件
再次使用 WebShellKill 工具對站點進行查看
手工對網站所有 PHP 文件進行查看
對網站所有的 PHP 文件進行搜索,安裝文件大小進行排序,對超過 20K 以上文件都需要進行查看。
如圖 15 所示,定位到大文件目錄,一看該文件多半是 webshell,如圖 16 所示,打開以後果然是 webshell,採取了加密,所以 WebShellKill 無法查殺,將該文件的 hash 值直接上報給 WebShellKill 工具。
圖 15:定位大文件位置
圖 16:查看文件內容
手工查殺狡猾的後門
對網站的文件逐個進行查看,文件中有加密字元、亂碼的,多半是 webshell。
如圖 17 所示,另外還發現存在文件上傳頁面,這種通過工具很難查殺出來。
圖 17:另外加密的 webshell
通過分析日誌文件定位後門文件
對日誌文件中的 php 文件進行搜索,逐個進行驗證,這個可以通過逆火日誌分析軟體來實現,後續有介紹。
尋找首頁黑鏈源代碼文件
對於網站首頁的黑鏈源代碼文件,通過搜索百度等均未發現有價值的處理意見,後面通過分析,其代碼一定有載入出來。
對每一個 js 文件進行源頭查看,最終獲取一個編輯器載入的 node.js 文件,其內容如圖 18 所示,明顯就是這個來實現的,將其刪除!
圖 18:獲取黑鏈源代碼文件
第二段落的處理完畢後,網站恢復正常運行,同時修補了發現的漏洞,以及部分明顯程序漏洞。
日誌分析和追蹤
對 IIS 日誌進行手工分析
將 IIS 日誌文件生成一個文件,可以利用命令來實現:cat *.log>alllog.txt。
對源代碼中存在的後門文件進行逐個梳理,整理出文件名稱。
在日誌中以文件名為關鍵字進行查看,如圖 19 所示,可以獲取曾經訪問過該文件的 IP 地址,這些地址可以用來進行跟蹤和案件打擊。
圖 19:手工追蹤黑客 IP 地址
黑客賬號配置文件分析和追蹤
獲取黑客的 QQ 號碼
通過查看黑客添加的賬號下的配置文件,可以獲取黑客曾經使用過什麼工具,訪問過什麼站點等信息,如圖 20 所示,黑客曾經在該伺服器上登錄過。
圖 20:獲取黑客訪問的 QQ 號碼
獲取黑客攻擊高校源代碼
在黑客當前賬號下,還發現三個高校站點壓縮包,如圖 21 所示。
圖 21:黑客攻擊其他目標
利用逆火對網站日誌進行分析處理
分析黑客攻擊 IP 地址
在虛擬機上安裝逆火日誌分析軟體(該軟體已經停止更新),如圖 22 所示,安裝完畢後,需要設置網站的 url、首頁文件和日誌文件名稱及位置,完畢後即可進行分析。
這裡需要注意的是如果需要定位黑客,需要在選項中進行配置,將黑客的後門文件名稱加入到文件追蹤和黑客攻擊中。
圖 22:通過日誌分析黑客 IP 地址及其相關行為
對網站進行漏洞分析
如果日誌文件足夠多,則可以通過統計分析,在訪問資源、錯誤等內容中去發現存在的漏洞和攻擊行為,這些分析將有助於修補漏洞和發現攻擊行為,對存在問題進行修復。
總結及分析
回顧整個處理過程,看似簡單,卻非常耗費時間,通過跟圈內朋友交流,我們跟黑客攻擊目標網站進行 SEO 黑鏈處理,就是一場戰爭。
伺服器上會有各種木馬和 webshell,第一次以為自己清理完畢,結果還遺留有加密的 webshell 以及上傳類型的後門,這種後門的清理非常的耗費時間,尤其是在 Windows 下。
整個過程有以下一些體會跟大家分享:
備份資料庫及代碼文件到本地或者其他伺服器。
使用 WebShellKill 自動清理第一遍,對第一遍出現的 shell 後門要進行登記或者抓圖,特別要統計文件時間。
利用文件時間對文件進行搜索,對同時間點的文件要進行特別查看。
對所有相關文件類型進行搜索,對大個頭文件一定要進行手工查看。
可以在 Windows 操作系統下載入類 Linux 系統對文件內容進行掃描,不放過文件包含後門。
對首頁掛馬的 js 文件可以進行核實,找到源頭。
將 IIS 日誌文件利用逆火日誌分析軟體進行分析處理,尋找漏洞和黑客 IP。
安裝殺毒軟體,開啟防火牆,對伺服器進行安全清理和加固,升級系統補丁程序。
作者:陳小兵
編輯:陶家龍、孫淑娟
陳小兵,高級工程師,北理工計算機學院博士在讀。擁有豐富的信息系統項目經驗以及 15 年以上網路安全經驗。現主要從事網路安全及資料庫技術研究工作。已出版《SQL Server2000培訓教程》《黑客攻防及實戰案例解析》《Web滲透及實戰案例解析》《安全之路-Web滲透及實戰案例解析第二版》、《黑客攻防實戰加密與解密》、《網路攻防實戰研究:漏洞利用與提權》、《網路攻防實戰研究:MySQL資料庫攻擊與防範》共計 7 本專著,在國內核心期刊及普通學術期刊發表論文 20 余篇,曾在《黑客防線》、《黑客X檔案》、《網管員世界》、《開放系統及世界》、《視窗世界》等雜誌發表文章 100 余篇。
TAG:51CTO |