雙十一前夜,還想著通過同城交友或是某些不可描述的網站一解單身的煩惱?別急,不妨先來看看這些網站給光棍發的「福利」!
最近,360安全中心監測到一起網站彈窗廣告掛馬事件,彈出的網絡廣告出現掛馬,廣告內容以同城交友等偽裝色情誘惑信息為主,通過對整個掛馬攻擊的過程分析發現該掛馬腳本以及攻擊負載(Payload) 在通過中招者網絡時進行加密,並在最後階段通過進行解密執行。攻擊負載甚至還利用regsrv32 實用程序執行一個.sct文件來繞過AppLocker 的腳本規則。
下面就對該掛馬木馬進行簡單分析:
通過監控追蹤發現主要來源於外掛以及色情網站的自動彈窗廣告,用戶使用此類外掛自動彈出同城交友廣告或瀏覽某些色情網站就可能觸髮帶漏洞攻擊的頁面,如果此時受害者的機器沒有打相應補丁的話,就會觸發相應漏洞,開始下載木馬並執行:
圖1
圖2
該頁面客戶嵌入的js腳本過程如下:
圖3
掛馬代碼加密過程簡圖:
圖4
第一個頁面http://174.*.96.42/index.php?id=011:
主要功能:每次伺服器都會生成一個隨機的validate值放入表單中,這個值每次刷新得到的結果都不一樣,通過這個值作為瀏覽器的會話標記。
此外,攻擊者使用IE官方的HTML條件注釋來進行瀏覽器版本判斷,這種判斷對於常見的前端設計是有效的,但是對於瀏覽器漏洞利用卻是錯誤的,因為不同瀏覽器都會開啟不同程度的兼容模式,導致錯誤的兼容性設置結果,所以不如直接判斷瀏覽器版本好。
根據瀏覽器的上述的結果,構造最終需要提交的表單數據,並進行GET提交
圖5
圖6
第二個頁面:
GET提交的地址http://174...42/p/servlet?token=&id=49457&validate=XXXXXXXXXX
參數中有servlet,故猜測有可能後臺是java。
這個請求會被302重定向到另外一個頁面:
http://174...43/rt/ab06add394fb469b6510973131acb870.html?id=49457
這個頁面會根據ID返回Rabbit或者RC4的加密後的Load代碼,頁面載入了額外的兩個js庫文件(encrypt.min.js、tinyjs.min.js),提供相關的對稱和非對稱加密算法。
圖7
解密得到的結果:
代碼中會預製一個RSA公鑰,然後使用隨機數生成函數來生成一段字符串作為後續的對稱加密密鑰,並將該數據POST到伺服器,此外還會動態生成一個字符串,兩者拼接後作為後續通訊加密的密鑰。POST請求會從服務端返回這個密鑰加密的漏洞利用代碼。此時會根據接收到的數據選項,選擇使用RC4還是Rabbit算法進行解密並執行。
圖 8
漏洞利用:最終解密執行的漏洞利用代碼可以很明顯看出是CVE-2016-0189。
圖9
漏洞利用成功後,會利用regsvr32調用sct文件執行對應腳本。
(Regsvr32是Windows命令行實用工具用於註冊動態連結庫文件,向系統註冊控制項或者卸載控制項的命令,以命令行方式運行。國外網友 Casey Smith@subTee發現通過調用 regsrv32實用程序執行一條命令或者.sct文件有可能繞過 AppLocker的腳本規則。由於該實用程序是具有微軟官方籤名的所以好處自不用多說了,並且支持TLS加密,遵循重定向方式,且不會在磁碟上留下痕跡。鑑於這麼多優點,掛馬者自然不會錯過)
regsrv32命令行參數選項:
/s 靜默執行
/n 指定不調用DllRegisterServer,此選項必須與/i共同使用
/i 調用DllInstall將它傳遞到可選的[cmdline],在與 /u 共同使用時,它調用__DllUnstall
圖10
Sct文件:
文件中包含了經過base64編碼後的惡意dll文件,利用ActiveXObject寫入到本地文件,
在使用腳本操作二進位文件時,常常會因為不可見字符報錯,所以掛馬者通常會選擇先對二進位文件作base64編碼再操作,最後通過解碼還原出二進位文件;
圖11
以下是測試將sct文件中的Base64部分轉換成dll文件的js腳本:
圖12
然後會通過regsvr32加特定的參數執行:參數中包含lua腳本的下載連結。
圖13
在config.lua文件中其判斷了是否為網吧環境,若是網吧環境則只安裝小黑記事本(xiaohei.lua)和abc看圖(abc.lua);否則安裝如下圖所示多款軟體。
圖14
圖15
以duba.lua為例其中的lua腳本內容如下,主要判斷未安裝推廣軟體的環境下進行下載安裝:
圖16
最終普通中招用戶機器上被推廣安裝上10款推廣軟體:
圖17
根據監測及同源分析,該木馬在早期的版本中還加入了「隱魂」木馬,不過在近期傳播的樣本中並沒有發現「隱魂」木馬。
[360安全中心在8月份截獲的感染MBR(磁碟主引導記錄)的「隱魂」木馬]
史上反偵察力最強木馬「隱魂」:撐起色情播放器百萬推廣陷阱 http://www.freebuf.com/articles/web/143912.html
「隱魂」木馬篡改主頁分析:史上反偵察力最強木馬的犯罪素描 http://www.freebuf.com/articles/system/144792.html
結語:攻擊者對相關加密算法比較了解,選用了較為少見的Rabbit對稱加密算法;攻擊者具備一定的前端開發經驗,代碼容錯性強,兼容性高了;後臺不再是靜態文件,而採用了動態生成內容,生成的網址也是一次性的;所有的js代碼均經過了混淆變量的操作。
攻擊者逐步開始學習國外流行Exploitkit的做法,動態生成攻擊頁面,並對漏洞利用代碼加密,防止網關過濾和流量包重放分析,加大了分析難度,也有助於保密攻擊代碼。
對於普通用戶建議應該儘量避免使用外掛輔助、避免點擊偽裝色情網站的惡意廣告、開啟安全軟體進行防護。
*本文作者:360安全衛士,轉載請註明來自 FreeBuf.COM