三天前,Morphisec實驗室的研究人員發現一波針對多個國家的大范圍網絡攻擊活動。Morphisec的研究人員稱之為“Pied Piper”,主要的攻擊方式是通過向多個國家實施網絡釣魚來投送遠控木馬程序(RAT)。
此次攻擊活動中傳播的一個木馬程序版本為“FlawedAmmyy RAT”。 該木馬使攻擊者可以完全控制受害者的PC系統,可以竊取系統文件、登錄憑證,以及實現遠程截屏、控制攝像頭及麥克風。此外,它還為攻擊者開展橫向滲透攻擊打下了基礎,可以作為主要供應鏈攻擊的潛在入口點。
如下文所述,如果該攻擊活動順利實施的話,將對會Godiva Chocolates,Yogurtland和Pinkberry在內的多家知名食品連鎖企業供應商產生潛在影響。 如果不禁用C&C服務器的話,我們可以假設其他人很快也會受到此網絡攻擊活動的影響。
近幾個月來,FlawinAmmyy遠控木馬程序的使用量激增,上個月它已躋身Checkpoint全球威脅指數前十名。正如Proofpoint研究人員去年3月份所透露的那樣,此次攻擊活動所使用的FlawinAmmyy遠控木馬程序是基于已泄露的AmmyyAdmin遠控木馬程序的源代碼程序開發的變種程序。
隨著對該活動的深入調查掌握,基于元數據和其他指標,同一個攻擊活動參與者正在交付另一個版本的遠控木馬程序,該版本以遠程操控器(RMS)RAT作為有效載荷。RMS RAT是建立在一個隨時可用的非商業庫之上的,該庫有助于分析代碼中出現的異常。
此攻擊活動的所有版本都以網絡釣魚作為攻擊起點,欺騙受害者啟用宏功能。攻擊活動會分多個階段進行,最終將會提供一個完全簽名的可執行RAT。
基于元數據分析,我們懷疑發起這次攻擊活動的幕后黑手為Proofpoint所描述的TA505。截至本文發表時,攻擊活動仍在繼續。Morphisec已向有關當局報告了這次攻擊活動的細節,以便對攻擊活動所使用的C&C服務器采取措施。
本文我們將重點介紹Ammyy RAT的攻擊鏈,并指出其與RMS RAT攻擊鏈的區別。
技術介紹
網絡釣魚
此次的“Pied Piper”攻擊活動與之前的網絡釣魚攻擊活動相似, 之前的網絡釣魚所使用的遠控木馬程序為Ammyy Admin RAT。這些武器化的文檔采用了相同的彩色圖像,誘使受害者啟用宏功能來瀏覽Microsoft Office文檔。在此次攻擊活動中,攻擊者使用了weaponized .pub (Microsoft Publisher)文檔以及更標準的.doc文件。Morphisec研究人員檢查了多個不同文件名的文檔。有些文件名為invoice_.pub,更多的則為invoice_laspinasfoods.doc。根據文件的元數據來分析,這些文檔似乎是在最近幾天創建的,目前還在繼續創建其他類似文件。

此次的“Pied Piper”攻擊活動與之前的網絡釣魚攻擊活動相似, 之前的網絡釣魚所使用的遠控木馬程序為Ammyy Admin RAT。這些武器化的文檔采用了相同的彩色圖像,誘使受害者啟用宏功能來瀏覽Microsoft Office文檔。在此次攻擊活動中,攻擊者使用了weaponized .pub (Microsoft Publisher)文檔以及更標準的.doc文件。Morphisec研究人員檢查了多個不同文件名的文檔。有些文件名為invoice_.pub,更多的則為invoice_laspinasfoods.doc。根據文件的元數據來分析,這些文檔似乎是在最近幾天創建的,目前還在繼續創建其他類似文件。

圖為西班牙語的釣魚Word文檔

圖為德語的釣魚Word文檔
宏代碼分析
當宏代碼被執行時,將會在Windows計劃任務中添加一項計劃任務,該任務將在下一個攻擊階段被執行。這是惡意程序作者為規避殺軟系統而設計的,同時也是打破攻擊鏈的一種常見做法,而不是直接去執行下一階段的Word程序進程。 在Ammyy RAT和RMS RAT兩種攻擊方式中,已添加的計劃任務會執行PowerShell命令,該命令會對從一個指定域名下載的MSI程序進行相同的解密(所有域名都會在附錄中記載)。



在已分析出的大多數情況下,MSI的名稱是“WpnUserService”。在所有情況下,MSI都包含一個可執行文件MYEXE,該文件會根據它傳遞的RAT類型而進行不同的簽名。這個可執行文件只是用于下一個階段的下載者程序,而不是RAT本身。 在下面的圖示中,我們對與Ammyy RAT程序相關的MYEXE進行了逆向分析(這是最近編譯的一個變種程序)。

通過截圖,我們可以清楚地看到可執行文件會檢測一些常見的病毒查殺系統,如果檢測到其中一個,它將會使用一個不同的路徑(通過Svchost.exe來執行)。 如果沒有找到病毒查殺系統,它將從下一臺IP服務器(仍然不是C2服務器)下載一個臨時文件。此臨時文件是Ammyy RAT加密文件,將在后面的階段進行解密。 從下面的截圖可以看出,可執行文件編寫了一個自定義的GetProcAddress函數,并根據在程序運行時計算的哈希值(SHIFT 7 + xor)加載內存中的所有函數地址。
|