某日,深信服劉同學,一位辦事處擁有多年應急經驗的老手,像往常一樣忙碌而嫻熟的處理所在區域的各種安全應急事件。突然,某客戶求助,稱深信服的安全感知產品檢測到了異常威脅,需要協助分析處置。
0×01 劉同學
劉同學打開安全感知平臺,找到對應主機,發現報的是虛擬貨幣挖礦。劉同學會心一笑,挖礦檢測有近乎100%的準確率,抓個挖礦小病毒,跟日常打怪一樣簡單。
安全感知平臺
但是接下來的事情,突破了劉同學的認知,差點看瞎他的雙眼。
0×02 看瞎雙眼
那是一臺Linux服務器,劉同學通過ps命令就輕易定位到了挖礦進程,但是接下來的事情并不輕松,他嘗試了各種方式,始終無法找到挖礦進程對應的文件。
挖礦進程
這種不合常理的現象,令他百思不得其解,甚至懷疑中了rootkit病毒,但嘗試rootkit掃描工具,仍然一無所獲。
挖礦進程對應文件指向兩處,一處是 /usr/sbin/apache ,一處是 /tmp/.ICE-unix/. ./m 。
但是無論他使用何種命令,甚至逐一檢查了rc.d、crontab、init下面的各種啟動項,翻遍了臨時目錄、用戶目錄、進程目錄……花費了很多時間,望眼欲穿,都無法找到哪怕一個病毒文件。
cd到對應目錄,使用ls -al就是看不到任何可疑文件,按道理應該不會自刪除。
看不到任何可疑文件
劉同學向總部請求協助的時候,表示自己“已經瞎了”!
0×03 柳暗花明
總部EDR安全團隊接到這個協助請求的時候,還是有很大壓力的,同時也聯合了安全感知的安全專家參與分析。
劉同學一直是嫻熟的應急人員,能讓他“看瞎”的,并不多,可能水比較深。
總部安全專家遠程接入后,也按照劉同學提供的信息,進行一一確認,同樣也沒有找到有效信息。
接下來,使用大法,直接把挖礦進程的內存dump出來,觀察其關鍵字符串。
使用strings -n 8將字符串過濾出來,看到如下信息:
使用strings -n 8將字符串過濾出來
這引起了我們的警覺,總感覺哪里不對。
我們重新再cd到/tmp/.ICE-unix/,再一次使用ls -al查看該目錄下面所有文件。
目錄下面所有文件
停在這里(上圖),大概盯了有好幾分鐘時間,陷入了沉思……
突然,再一猛看,端倪就出來了,某個字符貌似不對。仔細觀察上圖(后期特意放大了幾倍),倒數第三行,貌似不對,它的兩個點“空隙”比別的稍微“大”了那么一丟丟(要拿尺子量的那種大,目測毫米級別) 。
某個字符貌似不對
真實遠程界面,一般字體都非常小,上面是正常的畫面(大屏小字體),這邊后期加了黑色背景來體現差異。所以,每次進入到這個目錄,劉同學就自然而然的以為只有“.”和“..”,殊不知,還有一個“. .”(這里面的兩個點之間是有一個空格的)。
一個點是當前目錄,兩個點是上級目錄,兩個點加個空格就是一個全新的目錄。
再往上翻,dump內存引起我們警覺的那一行,回頭一想,ASCII碼40就是表示空格啊!
0×04 樣本剖析
要進入那個吊詭的文件夾,還不能直接cd . .(注意,這兩點之間有空格),需要cd “. .”,即加一個雙引號,防止轉義。
該文件夾下一共有10個文件,其中x、a、u、r為惡意腳本,?、b、c、d,h和m惡意可執行文件。
樣本剖析
執行流程 x -> a -> u -> r -> h (隱藏 & 運行 m ) -> m (挖礦),為了執行真正的挖礦,繞了一大圈。
入口腳本x (以下所有#標注的漢字,均為我們后期備注說明)
入口腳本x
釋放腳本a
釋放腳本a
清除腳本u
清除腳本u
啟動腳本r,如下圖,進程路徑同時也偽裝成了/usr/sbin/apache,是一個不存在的路徑。
啟動腳本r
./h是進程偽裝工具XHide,網上有開源代碼,那個/usr/sbin/apache路徑就是XHide偽裝的。
偽裝工具XHide
原理也很簡單,調用execv創建目標進程。
創建目標進程
挖礦病毒就是開源的xmrig,從config.json中讀取錢包地址后開始挖礦。
開源的xmrig
為了做隱藏,黑客做了一些小技巧,一個是利用肉眼視覺慣性和疲勞,創建了一個肉眼難以察覺的目錄,另外一個小技巧,就是利用Xhide黑客工具偽裝出了一個不存在的文件位置/usr/sbin/apache,放了一個煙霧彈。
仔細想想,黑客做的這些小技巧,確實蒙蔽了大多數的人,也起到了四兩撥千斤的效果!
0×05 追根溯源
隱藏的根因我們已經挖到了,入侵根因呢?
我們在/var/log/secure日志當中發現了有端倪的現象,這個Linux系統安全日志,記錄用戶和工作組變化情況、用戶登陸認證情況,其有大量認證失敗的日志。
源地址為XX的IP大量嘗試了不同的用戶名與密碼。從23日凌晨開始一直在持續,用戶名是按照字符排序進行嘗試,于凌晨XX點XX分XX秒時刻成功爆破。
0×06 回首總結
這里,我們再一次回顧這個事件。有一點,用戶做得特別好,就是及時關注了深信服安全感知平臺的安全事件,極早了排除安全隱患。
挖礦病毒是當前安全事件中最為流行的一種病毒,深信服安全感知對這類病毒有近乎100%的準確率。
此外,建議用戶對Linux主機進行安全基線的加固,增加密碼的復雜度與帳號鎖定策略。
這里還有一點,如果用戶部署了深信服終端檢測響應平臺(EDR),那么用戶將直接可以對告警主機進行查殺,無需人工干預,即可做到快速處置。對于肉眼難以發現的空格隱藏問題,必然是無障礙清理的!再也不用擔心“眼瞎”了。
回首總結
0×07 相關IOC
BBD807BCC2596FD7EEC38BFCBED9F5A5
60103B3D5FD524BBDA4682E5B0C6560E
|