攔截流量注入廣告:針對macOS的SearchPageInstaller惡意軟體分析
前言
惡意軟體開發者總是會尋找新的方法來躲避安全檢測,並創造更多的利益。近期,研究人員又發現了一種針對macOS使用者的新型攻擊技術,接下來我們一起開啟虛擬機器,看看這一次攻擊者又想出了什麼高招!
老把戲,新玩法!
SearchPageInstaller(SPI)是一款惡意廣告軟體,它從2017年就已經開始活躍了,不過在研究人員檢測到的最新樣本中,我們發現它開始使用 mitmproxy.org/" rel="nofollow,noindex" target="_blank">mitmproxy 了,而且這個版本已經是好幾個月之前的版本了:
這款惡意軟體使用了一種新型的方法來通過廣告賺取收益,普通的惡意廣告軟體主要使用的是重定向瀏覽器頁面的方式,但SPI會向用戶搜尋結果頁面的HTML程式碼頂部注入惡意廣告。首先,攻擊者需要在受感染主機中啟用HTTP和HTTPS代理,系統設定中網路管理面板的代理標籤頁配置就是證據:
然後在命令列介面通過命令 system_profiler SPNetworkDataType | grep 'Proxy Enabled'
來啟用配置:
在對受SearchPageInstaller感染的Web頁面程式碼進行審計之後,我們可以看到SPI注入的惡意程式碼,這裡它會替換掉其他所有的廣告:
指令碼源來自於chaumonttechnology.com,VirusTotal的兩個檢測引擎都已經將該主機標記為了惡意主機:
中間人攻擊
關於Web代理,SPI使用了mitmproxy(一款開源的HTTPS代理工具)和指令碼inject.py來向Web頁面的程式碼注入惡意指令碼程式碼:
這是因為mitmproxy能夠在客戶端與伺服器端之間以“中間人”的形式來工作,然後通過建立偽造的證書來讓客戶端以為它就是伺服器,讓伺服器以為它就是客戶端。當用戶不小心輸入了管理密碼之後,SPI的程式碼將會自動安裝mitmproxy CA證書,下面是我們在macOS 10.14 Mojave上檢測到的攻擊場景:
授權之後,mitmproxy CA證書以及其他所需的證書都可以通過中間人攻擊來捕捉到,並且會全部寫入到隱藏的~/mitmproxy目錄中:
惡意軟體檢測
正如我們所看到的那樣,SearchPageInstaller啟動之後,它首先會嘗試獲取安裝新證書的許可權。接下來,它會嘗試修改目標主機上的網路代理設定,這個操作需要管理員許可權,因此它會彈出另一個認證請求視窗:
下面給出的是整個攻擊的實現過程,我們可以看到惡意軟體建立的每一個程序以及對應的生成事件:
右側面板的放大檢視可以檢視當前選定的事件,比如說我們這裡選中的就是mitmdump程式碼執行情況[20],它是mitmproxy提供的命令列工具。
Mitmdump工具可以檢視、記錄和傳送HTTP流量。我們可以看到程序呼叫inject.py指令碼並向其提供引數。這些命令可以讓mitmproxy在通過HTTPS連線時忽略那些能夠匹配正則表示式的特定域名,這樣可以繞開那些採用了證書繫結保護機制的特定流量。
接下來,Mitmdump程序會生成一個shell程序[23],並呼叫uname工具[21]來獲取目標裝置的架構資訊。
下面給出的是每一個程序的網路通訊流量:
這樣一來,當攻擊者拿到了目標裝置的基礎配置之後,就可以在感染完成或攻擊結束之後將目標裝置還原為之前的配置。
總結
實際上,在對SPI的行為進行了分析之後,我們認為它是一個相對來說低風險的惡意廣告活動,不過由於它能夠修改HTTP明文資料以及加密流量,因此我們仍然需要嚴肅對待它。需要注意的是,目前很多反病毒軟體可能仍然允許mitmproxy程序執行,因為很多開發人員會將其當做一種合法軟體來使用。
* 參考來源: sentinelone ,FB小編Alpha_h4ck編譯,轉載請註明來自FreeBuf.COM