Water Pamola對許多目標網路商店都下了帶有內嵌XSS腳本的訂單。一旦網路商店帶有這種XSS漏洞,當網路商店管理者在管理後台打開訂單時就會載入惡意腳本。
該腳本執行的惡意行為包括頁面擷取、帳密網路釣魚、Web Shell感染和惡意軟體派送。這波活動的目標可能是竊取信用卡資料, 類似入侵數千家網路商店的Magecart盜卡組織惡意活動。
從2019年開始,趨勢科技就一直在追踪被稱為Water Pamola的威脅活動。這活動最初是利用夾帶惡意附件的垃圾郵件來入侵日本、澳洲和歐洲國家的網路商店。
但是從2020年初起,我們注意到Water Pamola活動發生了一些變化。現在的受害者主要出現在日本。根據最新的監測資料,攻擊不再透過垃圾郵件發動。而是當管理者在網路商店管理後台查看客戶訂單時,就會觸發惡意腳本執行。
經過進一步的搜尋,我們注意到一家網路商店管理者詢問關於一個奇怪訂單的問題,裡面一般是客戶地址或公司名稱欄位的地方被插入了JavaScript程式碼。此腳本很可能是利用商店管理後台的跨站腳本(XSS)漏洞啟動。
上面是某論壇的文字截圖,Google翻譯為:問題,有一個訂單似乎是個惡作劇訂單。在地址和公司名稱裡包含下列字元。
該腳本會連到Water Pamola伺服器並下載其他惡意程式碼。綜合來看,這讓我們相信Water Pamola對許多目標網路商店都下了帶有內嵌XSS腳本的訂單。一旦網路商店帶有這種XSS漏洞,當受害者(即目標商店管理者)在管理後台打開訂單時就會載入。
我們收集了許多傳送給不同目標的攻擊腳本。腳本執行的惡意行為包括頁面擷取、帳密網路釣魚、Web Shell感染和惡意軟體派送。
此活動似乎是為了有利可圖。在一個案例中,被Water Pamola攻擊的網站透露自己遭受了資料外洩。他們的伺服器被非法存取,包括姓名、信用卡號、卡片到期日和信用卡安全碼在內的個人資料可能被外洩。這次資料外洩事件可能與Water Pamola有關,暗示了這波活動的目標是竊取信用卡資料(類似Magecart惡意活動)。
XSS攻擊分析
如前所述,Water Pamola傳送帶有惡意XSS腳本的線上購物訂單來攻擊網路商店管理者。
值得一提的是,它們的目標並非是特定的電子商務框架,而是所有的電子商務系統。只要商店的電子商務系統具有XSS漏洞,那麼一旦有人(如系統管理者或商店員工)開啟了該訂單,惡意腳本就會在管理後台被載入並執行。
這些腳本是用一個稱為「XSS.ME」的XSS攻擊框架來管理,此框架可以幫攻擊者處理其攻擊腳本和竊取資訊。該框架的原始碼分享在許多中國論壇上。該框架提供的基本攻擊腳本可以回報受害者的位置和瀏覽器Cookie。趨勢科技觀察到攻擊時所用的腳本經過了客製化。攻擊者傳送了多種不同的XSS腳本,裡面包括以下一種或多種行為:
網頁擷取
該腳本向指定網址發送HTTP GET請求,並將收到的回應轉送到Water Pamola的伺服器。這通常用在攻擊早期階段,來從受害者的管理頁面擷取內容。這樣可以讓駭客了解環境並設計適合受害者環境的攻擊腳本。
帳密網路釣魚
某些腳本顯示出該活動試圖用兩種不同方法來獲取電子商務網站的管理者帳密。第一種是在網頁上加入假登入表單。此腳本會hook滑鼠點擊事件。只要受害者在假表單輸入帳密並點擊網頁上的任何位置,則腳本就會取得帳密,利用base64進行編碼,用客製化字串替換某些字元,然後上傳到Water Pamola的伺服器。
另一種方法是顯示授權錯誤訊息,然後將使用者導向會要求使用者輸入其帳號密碼的釣魚網站。釣魚網站的子網域會設定成符合目標的網域名稱,如「“{victim’s domain}[.]basic-authentication[.]live”」。
圖5. 將網頁內容替換成授權錯誤訊息並將使用者導向釣魚網站的腳本
Webshell/PHP後門注入
有些惡意腳本會試圖安裝後門程式到用EC-CUBE框架建立的網站上,此框架在日本很流行。我們發現的攻擊方式只適用於EC-CUBE的Series 2。當前的版本是Series 4,Series 2目前處在延伸支援階段。
有三種不同方法被用來上傳後門程式。第一種是呼叫框架提供的本機API來上傳PHP Web Shell檔案。Web Shell檔案名稱為「ec_ver.php」、「log3.php」或「temp.php」。Web Shell可以執行任何透過HTTP POST請求發送給Web Shell的PHP程式碼。
請注意圖6的螢幕截圖:在此中文部落格中提到具有相同「only_pcd」關鍵字的相同Web Shell。該文章描述了一個有兩個組件的Web Shell – 一個PHP腳本和一個HTML上傳用檔案,不過第二個組件並不需要,因為可以用任何客製化或第三方工具(如Fiddler)來建立正確的POST請求。
第二種方法是修改網頁標頭來注入PHP程式碼,此程式碼會執行HTTP請求中參數「ec_ver2update」發送的任何PHP程式碼。請注意,下面的PHP程式碼經過混淆處理過。首先,$IDFX變數用XOR操作(見字元^)來解碼字串「create_function」,然後將產生的base64字串解碼為@eval($_REQUEST[‘ec_ver2update’]);這是後門程式碼。
第三種方法是在電子商務框架內安裝MakePlugin.tar.gz內的惡意外掛。該外掛是用來將多個PHP Web Shell檔案植入伺服器。
惡意軟體派送
在此案例中,攻擊腳本會顯示一個警告提示,上面寫著:「你的Flash版本太舊,請安裝最新版本再重試!」然後將受害者導向他們所控制的假Flash安裝程式下載網站。(請注意,Adobe已宣布自2020年12月31日起終止支援Flash。)
如果受害者下載並執行此頁面的安裝程式,就會感染Gh0stRat惡意軟體變種,之前也被稱為Gh0stCringe或CineregRAT。此遠端存取木馬的程式碼是基於流出的Gh0st RAT原始碼;不過網路流量的加密有經過客製化,並且新增了一些功能(如竊取QQ號碼)。與此活動有關的Gh0st RAT樣本是混淆過的執行檔,會在記憶體內解密主要的惡意程式碼,並執行名為「Shellex」的主要匯出函式。
假Flash安裝程式分析
如前所述,XSS攻擊腳本將受害者導向假Flash下載網站。點擊安裝後會下載一個.ZIP壓縮檔,裡面包含了合法檔案及惡意檔案,這些檔案通常是DLL格式。當執行合法檔案時會載入這些程式庫檔案。
在此樣本中,AdobeAirFlashInstaller.exe(合法檔案)會載入xerces-c_2_1_0_0.dll(修改過的合法檔案),然後再載入ulibs.dll(惡意檔案)。Ulibs.dll會載入一個Adob.dll(這其實是個ZIP壓縮檔)。解壓縮Adob.dll內容後會顯示並執行兩個合法且經過簽章的執行檔,然後再進行一遍類似的載入過程。
在這裡,svchost.exe(來自騰訊的合法簽章過Launcher.exe檔案的重新命名版)會載入Utility.dll(修改過的合法檔案)。此檔案包含一個名為.newimp(new import)的新分段,加入參照oplib.dll程式庫的新匯入項。然後會載入此oplib.dll程式庫。
此新匯入項很可能是透過名為Stud_PE的工具手動加入。該工具有個Import Adder的功能,而「.newimp」是包含新加匯入項的新分段預設名稱。接著Olibi.dll會從Windowsfiles資料夾載入一個lib.DAT檔案,解碼和解密內容(使用十六進位字串;XOR 0x42)後載入到新建立的svchost.exe程序。此外,還會設定透過設定登錄檔和工作排程來達到持續性的目的。
最後,此感染鏈的最後一步是Gh0st RAT變種。它會用Socket連線C&C,並使用簡單的SUB 0x46,XOR 0x19加密。
此Gh0st RAT變種新加了用來竊取QQ使用者資訊的功能,例如在選定電腦上的使用者列表及其QQ號碼。
在這裡提到底下的程式碼會取得目前電腦上登入的QQ號。
圖18. 用來取得使用者QQ號碼的程式碼
保護電子商務平台抵禦Water Pamola攻擊
Water Pamola透過將XSS腳本加進購物訂單來攻擊網路商店。還會利用社交工程 social engineering )來誘騙帳密或提示下載遠端存取工具。網路商店管理者應該要認識到攻擊不僅會來自垃圾郵件,還可能來自意料之外的感染媒介。同時建議管理者要確保更新網站所用的電子商務平台版本,防止任何可能的漏洞攻擊(包括XSS)。
企業可以用趨勢科技端點解決方案(如趨勢科技Smart Protection Suites和Worry-Free Business Security)來得到保護。透過偵測惡意檔案和垃圾郵件,以及封鎖所有相關惡意網址來保護使用者和企業免於威脅。
入侵指標可以在此附錄中取得。
@原文出處:Water Pamola Attacked Online Shops Via Malicious Orders 作者:Jaromir Horejsi,Joseph C Chen