數十款游戲被捆綁Steam盜號木馬
近期,360互聯網安全中心接到用戶反饋稱:在下載并安裝某些游戲后,Steam賬號出現異常,疑似被盜號。經技術溯源分析發現,不法分子通過篡改數十款熱門游戲安裝包,將惡意Steam盜號木馬程序與正常游戲文件進行捆綁。而用戶一旦啟動這些游戲,木馬便會同步激活后臺隱藏進程實施盜號行為,具有極高隱蔽性。
樣本說明
行為總述
本次捕獲到的被二次打包的是一款名為“LensLife”的游戲安裝包,我們便以此安裝包為例進行分析。本次捕獲到的木馬樣本的攻擊流程簡圖如下:
圖1. 木馬流程簡圖
代碼分析
該樣本的主程序使用了python的cx_Freeze模塊進行打包,啟動后首先會讀取配置文件library.dat中所指向的壓縮包,并獲取壓縮包中的pyc文件(編譯過后的python腳本):
圖2. 樣本讀取壓縮包中的python腳本
將這些pyc文件反編譯成可閱讀的python代碼并進行分析,發現其主要功能為:拷貝執行加載器程序Translate.exe以及正常游戲程序LensLife.exe。而此時執行的這個Translate.exe加載器是由cx_Freeze打包的加載器,其功能取決于加載的library.dat配置文件中所指向的pyc腳本內容。該樣本加載了帶有惡意代碼的pyc文件,由于加載器本身并無惡意而加載的載荷又為pyc腳本,因此其行為可能會繞過一些安全軟件的防護功能。
樣本執行加載器的相關代碼如下圖所示:
圖3. 主程序執行Translate.exe加載器的相關代碼
而在我們的測試,也通過對進程樹的監控發現該主程序啟動后,會同時執行兩條進程鏈,其中一條的功能就是加載并執行惡意代碼。
圖4. 樣本啟動后的運行進程樹?
而與此同時,另一條進程鏈則會執行正常的游戲主程序,這也意味著被蒙在鼓里的受害用戶是可以游玩自己下載到的游戲的。
圖5. 游戲主程序正常啟動?
與此同時,后臺啟動的腳本加載器Translate.exe在加載惡意腳本后,會每隔5秒使用tasklist和findstr查找steam.exe進程,并通過對內存內容的搜索來尋找?Steam的Token數據。
圖6. 木馬搜索Steam進程并嘗試尋找Token數據
木馬一旦在設備內存中成功獲取到Token后,會進一步根據JWT協議對數據進行解碼。最終,將解碼后的數據以POST方法回傳到其C2服務器中(hxxp://124.220.17.177:6678/aerh.php)。
圖7. 解碼并推送Token數據?
分析人員利用CE對Token進行手動定位,驗證了該功能的可行性。
圖8. 利用CE驗證對Token的定位操作
之后,我們將定位到的數據依據JWT協議進行解密,其內容如下:
圖9. 依據JWT協議解密后的數據
根據公開信息,解密出的Token信息中包含了用戶的ID、登錄令牌、令牌標識符以及各類時間戳及驗證信息。而木馬作者有可能利用這些信息登錄到受害用戶的Steam賬號中并竊取其虛擬財產。
關聯分析
經過關聯分析,發現有數十款游戲被重新打包加入惡意盜號木馬,目前發現的相關游戲如下:
圖10. 部分被重新打包加入盜號木馬的游戲名?
通過對360大數據的統計分析,發現受害用戶區域分布如下:
圖11. 盜號木馬受害用戶分布?
安全建議
目前360安全產品可對該木馬進行有效防御,建議用戶:
1.???? 保持安全防護軟件防護功能開啟,并及時更新病毒庫;
2.???? 避免下載非官方渠道的游戲程序;
3.???? 定期更新Steam賬號雙重驗證機制。