[譯] APT分析報告:06.猖獗的小貓——針對伊朗的APT攻擊活動詳解

這是做者新開的一個專欄,主要翻譯國外知名的安全廠商APT報告文章,瞭解它們的安全技術,學習它們溯源APT組織的方法,但願對您有所幫助。前文分享了Turla新型水坑攻擊後門(NetFlash和PyFlash),經過僞造Adobe Flash更新,欺騙受害者下載兩個新型惡意軟件NetFlash和PyFlash,從而實現惡意攻擊。這篇文章將詳細介紹Rampant Kitten攻擊活動,包括Windows信息竊取程序、Android後門和電報網絡釣魚頁面,這是Check Point Research機構的分析報告,很是值得你們學習。html

在這裏插入圖片描述


Check Point Research揭露了伊朗實體多年來一直針對伊朗僑民和持不一樣政見者多年進行監視行動。儘管其餘研究人員和記者先前曾報道過一些針對我的的攻擊事件,但咱們的調查可以將不一樣的攻擊行動聯繫起來,並將它們歸因於同一攻擊者。python

咱們發現了不一樣的攻擊載體,包括:web

  • 四種不一樣版本的Windows信息竊取程序,旨在竊取受害者的我的文件以及訪問其電報(Telegram)桌面和KeePass賬戶信息
  • Android後門從短信(SMS messages)中提取雙因素驗證代碼,記錄手機的語音環境等
  • 電報釣魚網頁,利用僞造的電報服務賬戶分發

上述工具和方法彷佛主要用於對付伊朗少數MZ、FZQ組織和抵抗YD,例如:算法

  • 阿什拉夫營和自由營居民家庭協會(AFALR)
  • 阿塞拜疆MZ抵抗組織
  • 俾路支人

一.初次感染

咱們首先遇到的文檔名稱爲 「وحشت_رژیم_از_گسترش_کانونهای_شورشی.docx」,大體翻譯爲「當局擔憂GMDP的擴散」.docx。該文件的標題實際上指的是伊朗ZQ與GMDP運動之間的持續鬥爭。數據庫

Mujahedin-e Khalq是一個FZF組織,其目標是使伊朗擺脫目前的地位。1986年,MEK開始創建他們的新總部,後來在Iraqi小鎮哈里斯附近被稱爲Ashraf營地。可是,Iraqi多年的緊張局勢最終致使該營地的居民被轉移到一個新的、偏遠的目的地——阿爾巴尼亞。編程

上面的文檔利用了外部模板技術,容許它從遠程服務器加載文檔模板,在本例中是 afalr-sharepoint[.]com。遠程模塊以下圖所示:瀏覽器

在這裏插入圖片描述

出於對這個網站的好奇,咱們開始探索更多關於它的信息。咱們發現一些反對伊朗ZQ的帳戶發佈推文,提到了一個很是相似的SharePoint網站,該文檔中的網站極可能冒充瞭如下網站:安全

在這裏插入圖片描述

AFALR的官方網站以下圖所示:服務器

在這裏插入圖片描述


二.感染鏈

當受害者打開文檔並下載了遠程模板後,模板中的惡意宏代碼將執行一個批處理腳本,該腳本嘗試從afalr-sharepoint[.]com下載並執行下一階段的有效負載。網絡

在這裏插入圖片描述

而後,有效負載會檢查是否在受感染的計算機上安裝了Telegram,若是檢查有效,它將繼續從其資源中提取三個額外的可執行文件。

  • BOBC3953C59DA7870
    加載器(Loader),由RunDLL執行,將主要有效載荷注入explorer.exe中
  • CO9D5A739B85C37C1
    信息竊取的有效載荷(Infostealer payload)
  • Updater.exe
    修改電報的更新程序

三.有效載荷分析

該惡意軟件的主要功能包括:

  • 信息竊取者
    上傳受害者電腦的相關電報文件,這些文件容許攻擊者充分利用受害者的電報賬戶;從KeePass應用程序竊取信息;上傳任何它能找到的以預約義擴展名結尾的文件;記錄剪貼板數據,並採起桌面屏幕截圖。
  • 模塊下載器
    下載並安裝幾個額外的模塊。
  • 獨特的持久性
    實現了一種基於Telegram內部更新過程的持久性機制。

1.電報結構基礎

首先,讓咱們回顧一下Telegram Desktop如何組織其文件。如下是一個普通的電報文件結構,一般能夠在 %APPDATA%\Roaming\Telegram Desktop 路徑找到。

在這裏插入圖片描述

如上所述,在感染鏈期間,有幾個文件被拖放到Telegram工做目錄中。刪除的文件位於一個名爲03A4B68E98C17164s的目錄中,因爲是一個定製的 Desktop.ini文件,因此第一眼看上去像一個文件,但它其實是一個目錄。受感染的Telegram Desktop目錄以下圖所示。

在這裏插入圖片描述


2.配置

有效負載的一個資源包含編碼的配置數據。編碼方案使用常規的Base64算法,可是使用自定義索引表爲:

  • eBaEFGHOQRS789TUYZdCfPbDIJ+/KLMNwxyzquv0op123VWXghijmnkl45rst6Ac

對該資源進行解碼可爲咱們提供如下配置信息:

在這裏插入圖片描述


3.C&C溝通

該惡意軟件使用SOAP進行通訊。SOAP是用於Web服務通訊的基於XML的簡單數據結構。SOAP Web服務的API是公開的,能夠從如下瀏覽器訪問網站來觀察。C&C網站中的SOAP API以下圖所示:

在這裏插入圖片描述

消息(命令)能夠分爲如下幾類:

  • 身份認證
    HelloWorld:身份認證消息
  • 模塊下載器
    DownloadFileSize:檢查是否應該下載模塊
    DownloadFile:從遠程服務器下載模塊

  • 數據滲漏
    UploadFileExist:檢查是否已上傳特定的受害者文件
    UploadFile:上傳一個特定的受害者文件

(1) 身份認證
有效通訊隧道的第一條消息應該是HelloWorld,它實現了簡單的用戶名/密碼身份驗證。憑證在示例中進行了硬編碼,而且該消息的SOAP響應包含一個會話ID,該會話ID必須用於其他的會話。

(2) 模塊下載器
該程序嘗試獲取其當前模塊的更新,並下載幾個其餘模塊。一些額外的確實模塊沒法獲取,包括:

  • D07C9D5A79B85C331.dll
  • EO333A57C7C97CDF1
  • EO3A7C3397CDF57C1

(3) 數據滲漏
該惡意軟件的核心功能是從目標設備中竊取儘量多的信息。有效負載針對兩個主要應用程序:Telegram Desktop和著名的密碼管理器KeePass。

一旦相關的Telegram桌面和KeePass的文件已被上傳,惡意軟件就會列舉在受害者電腦上找到具備如下擴展名的相關文件:

  • .txt;.csv;.kdbx;.xls;.xlsx;.ppt;.pptx;

對於每一個這樣的文件,惡意軟件在將其編碼爲base64後將其上傳。


4.持久性

該惡意軟件使用一種獨特的持久性方法,該方法與電報更新過程相關聯。它將按期將Telegram主可執行文件複製到中 Telegram Desktop\tupdates,一旦電報應用程序啓動,就會觸發一個更新程序。該惡意軟件的持久性方法的一個隱藏技巧是更改默認的Telegram更新器文件 Telegram Desktop\Updater.exe,其中包含已刪除的有效載荷之一(具體的是CO79B3A985C5C7D30)。該更新程序最顯着的更新是再次運行有效負載,其中Telegram更新程序運行主要有效負載以下圖所示。

在這裏插入圖片描述


四.基礎設施和鏈接

在分析了有效載荷以後,咱們可以追溯到2014年的多種變體,這代表這種攻擊已經醞釀了多年。由相同攻擊者開發的惡意軟件變體之間經常會有細微的差別,尤爲是在相同的時間範圍內使用它們時。可是,在這種狀況下,咱們注意到,雖然某些變體是同時使用的,但它們是用不一樣的編程語言編寫的,利用了多種通訊協議,並不老是竊取相同類型的信息。

在下表中,咱們列出了發現的變體並突出了它們的獨特特徵。請參閱下面的技術附錄,瞭解關於每種變體的詳細信息。

在這裏插入圖片描述

相關樣本還揭示了更多的C&C服務器,經過查找它們的被動DNS信息和其餘元數據,咱們能夠找到由同一攻擊者操做的類似域。事實證實,某些域名出如今惡意Android應用程序和網絡釣魚頁面中,從而暴露了該操做的更多層次信息。下圖爲惡意基礎架構的Maltego圖。

在這裏插入圖片描述


五.Android後門

在咱們的調查過程當中,還發現了與相同威脅參與者有關聯的惡意Android應用程序。該應用程序假裝成一種服務,以幫助在瑞典說波斯語的人得到駕照的服務。咱們已經找到了同一應用程序的兩個不一樣變體,一個彷佛是爲了測試而編譯的,另外一個是要在目標設備上部署的發行版。Android應用程序的主界面以下圖所示。

在這裏插入圖片描述

此Android後門包含如下功能:

  • 竊取現有的SMS消息
  • 向攻擊者控制的C&C服務器提供的電話號碼轉發兩因素認證短信
  • 檢索我的信息,例如聯繫人和賬戶詳細信息
  • 啓動電話周圍環境的錄音
  • 執行Google賬戶網絡釣魚
  • 檢索設備信息,如已安裝的應用程序和正在運行的進程

有關此應用程序的詳細信息,請參閱下面的技術附錄。


六.電報網絡釣魚

這些後門並非攻擊者試圖竊取有關Telegram賬戶信息的惟一方法。與該惡意活動相關的某些網站還託管了仿冒Telegram的網絡釣魚頁面,以下圖所示。

在這裏插入圖片描述

使人驚訝的是,幾個伊朗電報頻道實際上已經發出了針對這些釣魚網站的警告,並聲稱伊朗ZQ是他們的幕後黑手。針對網絡釣魚嘗試的翻譯後的消息警告以下圖所示。

在這裏插入圖片描述

根據這些頻道,釣魚信息是由電報機器人發送的。這些信息警告收件人,他們正在不當使用Telegram的服務,若是他們不進入釣魚連接,他們的帳戶將被封掉。

在這裏插入圖片描述

另外一個Telegram頻道提供了釣魚企圖的截圖,顯示攻擊者創建了一個冒充官方Telegram的帳戶。最初,攻擊者在新的Telegram更新中發送了有關這些功能的消息,使其顯得合法。網絡釣魚消息僅在5天后發送,並指向https://telegramreport[.]me/active(與上面圖相同的域)。下圖展現了從假電報賬戶發送的網絡釣魚消息。

在這裏插入圖片描述


七.有效載荷傳遞

儘管在某些狀況下咱們沒法肯定惡意文件如何到達受害者,但咱們收集了一些有關攻擊者分發惡意軟件方式的潛在線索。例如,訪問 mailgoogle[.]info 代表它模擬 ozvdarozv[.]com 並推廣了一種軟件,以增長Telegram頻道中的成員數量。mailgoogle[.]info下載頁面以下圖所示。

在這裏插入圖片描述

可是,在單擊「下載」後,一個名爲 Ozvdarozv-Windows.rar 的有密碼保護的文檔就會被下載,其包含一種惡意軟件變種。

2018年一篇被刪除的博客文章指控一名網絡安全專家剽竊,當時他在接受阿拉比亞新聞頻道採訪,討論伊朗的網絡攻擊。咱們相信這個頁面是針對此人或他的同夥的有針對性的攻擊的一部分。這個博客包含了一個連接,能夠下載一個有密碼保護的檔案,其中包含了來自 endpload [.]com 的抄襲證據。

endupload[.]com 經過幾個被動DNS躍點鏈接到上述PC和Android操做,包括經過歷史DNS服務器信息直接鏈接到 mailgoogle[.]info 域名。咱們不只沒有發如今合法環境中使用過該域名的任何實例,並且還發現了該域名已被波斯語黑客註冊的證據。請參見下面的「歸因」部分,已刪除的博客文章及其連接 endupload[.]com 以下圖所示。

在這裏插入圖片描述

與2012年不一樣的博客文章討論了伊朗人權活動家協會附屬新聞機構HRANA的侵犯人權行爲報告。再次,此博客引用了能夠從endupload[.]com如下網站下載的文檔:

2012年的另外一篇博客文章則討論了伊朗RQ活動人士協會(Iranian Association of human rights Activists)下屬新聞機構HRANA發佈的一篇報告。一樣,這個博客引用了一個能夠從 endpload [.]com 下載的文檔。下圖展現了博客中帶有指向 endupload [.] com 的連接。

在這裏插入圖片描述

不幸的是,咱們沒法得到兩個博客條目所指的文件,也沒法確認它們是不是惡意的。可是,彷佛 endupload[.]com 已經由攻擊者控制了多年,由於與此攻擊有關的一些惡意樣本(可追溯到2014年)已與該網站進行了通訊。


八.溯源

儘管咱們發現多年來在此攻擊中使用過的許多文件和網站,但它們並未歸因於特定的威脅組織或實體。可是,威脅攻擊者留在惡意事件中的一些指紋使咱們能夠更好地瞭解攻擊可能來自何處。

1.攻擊起源

首先,某些惡意網站的WHOIS信息代表,它們據稱是由伊朗我的註冊的。下圖展現了 endupload[.]com 和 picfile[.]net 的WHOIS信息。

在這裏插入圖片描述

WHOIS記錄了 endpload[.]com 還提到一個電子郵件地址,nobody.gu3st@gmail[.]com。顯然,該網站的註冊用戶在網上很是活躍,由於查詢的用戶名是「nobody.gu3st 」,咱們能夠在伊朗黑客論壇上看到關於他的許多帖子。

在這裏插入圖片描述

2.目標

咱們觀察到的目標清單反映了伊朗內部的一些鬥爭和此次Xi擊背後的動機。精心挑選的目標包括SZ組織和阿塞拜疆組織的支持者,這兩個著名的抵抗運動提倡JF伊朗人民和伊朗境內的少數MZ。

在這裏插入圖片描述

這些運動與伊朗當局之間的意識形態CT使它們成爲這種Xi擊的天然目標,由於它們與該ZQ的目標相吻合。此外,後門的功能以及竊取敏感文件、訪問KeePass和Telegram帳戶的重點代表,攻擊者對收集受害者的情報、瞭解他們的更多活動很感興趣。


九.結論

追蹤此次攻擊的蹤影能夠發現,此次大規模行動在很大程度上成功地隱藏了至少6年。根據咱們收集到的證據,這些彷佛來自伊朗的攻擊者利用多種攻擊載體暗中監視他們的受害者及其我的電腦和移動設備。

因爲咱們確認的大多數目標都是伊朗人,這多是伊朗攻擊者正在收集關於該組織潛在對手的情報。SandBlast Mobile可提供實時威脅情報和對移動威脅的可見性,防止受到惡意軟件、網絡釣魚、中間人攻擊、操做系統攻擊等的侵害。Check Point的反網絡釣魚解決方案包括針對網絡釣魚攻擊的全部攻擊媒介的產品,包括電子郵件、移動電話、端點和網絡。


十.技術附錄——PC後門變異分析

1.TelB變體

「 TelB」是咱們遇到的最新變體,其分析如上所示。咱們之因此這樣命名是由於下一個調試字符串:

  • D:\Aslan\Delphi\TelB\BMainWork\SynCryptoEN.pas

2.TelAndExt變體

此變體多是「 TelB」的舊版本,主要在2019年和2020年期間活躍。它與新版本共享如下特性和技術:

  • 在Delphi中開發
  • 與「TelB」變體共享大量代碼
  • 專一於Telegram Desktop應用程序
  • 相似的持久化和更新方法
  • 使用FTP而不是SOAP進行數據溢出

咱們將此變體命名爲「TelAndExt」,由於下一個調試字符串爲:

  • D:\Aslan\Delphi\TelAndExt\TelegramUpdater\SynCryptoEN.pas

3.Python信息竊取變體分析

咱們發現了一些使用如下方法的樣本:

  • 兩層SFX(自解壓存檔),可提取多個.bat / .vbs / .nfs / .conf文件
  • 經過將可執行文件(以結尾.nfs)複製到
    %appdata%\Microsoft\Windows\Start Menu\Programs\Startup\audio-driver.exe
  • 可執行文件的名稱爲speaker-audio.exe或keyboard-EN.exe,具體取決於示例
  • 該可執行文件是使用Pyinstaller建立的
  • 下載名爲net-update.exe的第二階段有效負載
  • 在上傳以前,使用帶有硬編碼密碼的庫pyAesCrypt對數據進行加密

根據咱們的分析,該變體在信息竊取方面,使用硬編碼的憑據與FTP服務器通訊,並竊取如下數據:

  • 電報桌面應用程序相關文件
  • Paltalk NG應用程序相關文件
  • Chrome、Firefox和Edge的相關數據
  • 以給定配置中列出的擴展名結尾的任何文件。若是未提供任何配置,它將搜索具備如下擴展名的文件:.txt;.docx;.doc;.exe;.jpg;.html;.zip;.pdf

同時,在調查過程當中,咱們看到了幾個Python信息竊取器,它們與同一個FTP服務器通訊,可是將竊取的信息以不一樣的別名存儲在不一樣的頁面中。咱們懷疑這是惡意軟件做者的操做方式:

  • 選擇一個目標,並在FTP服務器中爲它們建立一個指定的文件夾
  • 使用針對數據上傳的惟一AES密鑰和FTP憑證構建針對目標定製的樣本
  • 經過感染鏈載體之一提供武器化的可執行文件

第二階段有效負載HookInjEx:其核心功能之一是獲取第二階段的有效負載。若是指定的FTP文件夾包含名爲 net-update.exe 的文件,則它將下載並執行該文件。咱們分析了其中的幾個net-update.exe樣本,發現與下面的「HookInjEx」變體徹底重疊,從而使其成爲有針對性的高級有效負載。


4.HookInjEx變體

該變體自2014年以來一直在使用,並具備32位和64位版本。隨着時間的流逝,該變體不斷演變並添加了一些功能,同時還更改了其感染鏈中不一樣組件的名稱。咱們發現了兩種主要的感染鏈:

  • SFX(自解壓存檔)包含全部組件。它將全部這些文件放入一個文件夾,而後執行主加載程序 DrvUpdt.exe(ehtmlh.exe在舊版本中)。
  • 僞造的SCR文件充當可執行文件。爲了看起來像合法的SCR文件,加載程序包含一個誘餌 JPEG / PPTX / DOC文件做爲資源(Resource_1),該文件在運行時加載。

SCR文件還將其餘有效載荷做爲其資源刪除,並使用命令行運行主加載程序:

cmd.exe /C choice /C Y /N /D Y /T 3 & 
"%APPDATA%\\Microsoft\\Windows\\Device\\DrvUpdt.exe" -pSDF32fsj8979_)$

惡意SCR打開誘餌JPG資源以下圖所示:

在這裏插入圖片描述

該變體在掛鉤和注入(Hooking and Injection)方面,主加載程序使用稱爲「HookInjEx」的掛鉤和注入方法。該方法將DLL映射到explorer.exe,在其中將Start按鈕子類化。在咱們的示例中,加載的DLL是DrvUpdtd.dll(dhtmlh.dll在較早的版本中)。

在新版本中,該惡意軟件還會以其餘語言掛起「Start」按鈕。不一樣語言的存在可能代表它的受害者來自世界各地的國家。不一樣的翻譯是:

在這裏插入圖片描述

該惡意軟件從一個名爲Devinf.asd的文件接收其配置。asd(在舊版本中命名爲file2.asd)。配置被解密並寫入一個名爲Drvcnf的新文件。asd(舊版本中命名爲file3.asd)。加密方法爲:

該惡意軟件從一個名爲的文件Devinf.asd(在較早的版本中名爲file2.asd)接收配置。解密配置並將其寫入名爲Drvcnf.asd的新文件(在舊版本中名爲file3.asd)。加密方法爲:

def decode(content):
    dec_array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 
    0xe, 0xf, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 
    0x16, 0x17, 0x18, 0x19, 0x1a,0x1b, 0x1c, 0x1d, 
    0x1e, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 
    0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 
    0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 
    0x38, 0x39,0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 
    0x40, 0x41, 0x42, 0x43, 0x44]
    output_str = ''
    known_values = [9, 10, 13, 32]
    for j in range(len(content)):
        int_cur_content = ord(content[j])
        cur_byte = 0
        for i in range(62):
            if int_cur_content == dec_array[i]:
                if i < 26:
                    cur_byte = i + 0x61
                elif 26 <= i < 52:
                    cur_byte = i + 0x27
                elif 52 <= i < 62:
                    cur_byte = i - 0x4
                output_str += (chr(cur_byte))
                break
        if cur_byte == 0:
            if int_cur_content in known_values:
                cur_byte = int_cur_content
            elif int_cur_content - 0x61 <= 0xe:
                cur_byte = int_cur_content - 0x40
            elif int_cur_content - 0x70 <= 0x6:
                cur_byte = int_cur_content - 0x36
            elif int_cur_content - 0x77 <= 0x5:
                cur_byte = int_cur_content - 0x1c
            elif int_cur_content - 0x53 <= 0x3:
                cur_byte = int_cur_content + 0x28
            output_str += (chr(cur_byte))
    return output_str

解密配置後,惡意軟件會解析這些值並將其放入全局變量中。

<Reg></Reg> - Registry key for persistence
<Pre></Pre> - pre value for info files to send
<Pas></Pas> - extensions for info files to send
<Path_Log></Path_Log> - log path direcory
<L_s></L_s> - minimum size for file to send
<S_n></S_n> - FTP domain
<F_k></F_k> - FTP User value
<F_R></F_R> - FTP Password value
<Ver></Ver> - version
<U_u2></U_u2> - Downloads updates URL
<U_u1></U_u1> -  Downloads updates URL
<F_f></F_f> - Directory in ftp connection.
<U_t></U_t> - timer_1
<S_t></S_t> - timer_2
<S_q></S_q> - timer_3
<U_u3></U_u3> - Downloads updates URL
<El></El> - value for encryption method to files
<Ez></Ez> - value for encryption method to files
<F_n></F_n> - Fake name
<E_dt></E_dt>
<E_dy></E_dy>
<Snd_P></Snd_P> - Value to choose name template for info files to send.
<Mlt></Mlt> - flag for exeucting again from different place.
<Ws1></Ws1> - WHOIS first URL
<Ws2></Ws2> - WHOIS second URL
<Ws3></Ws3> - WHOIS third URL
<S_li></S_li>
<RTL></RTL>
<SHttpR></SHttpR> - value to download using computer-name and username
<OPP></OPP> - Opera gather data flag
<FIP></FIP> - Firefox gather data flag
<CHP></CHP> - Chrome gather data flag
<WHP></WHP> - WHOIS flag
<TRP></TRP> - tracert flag
<FRC></FRC> - number of tries
<Clipfp></Clipfp> - clipboard data flag of CF_HDROP (CLB-f.jpg)
<Cliptp></Cliptp> - clipboard data flag of text, unicode, oemtext and locale (clb-t.jpg)
<Clipip></Clipip> - clipboard data flag of bitmap and dib (clb-p.jpg)

在持久化方面:
該惡意軟件將< Reg >配置文件值中的註冊表項(幾乎老是註冊表項RunOnce)設置爲如下值,它將名稱設置爲SunJavaHtml或DevNicJava,其值爲DrvUpdt.exe 11。這樣惡意軟件就知道它已經被執行了。在舊版本中,該惡意軟件用來刪除名爲rreegg.exe或Capdev.exe的文件。該文件被添加到RunOnce中,而後依次執行DrvUpdt.exe 11。

在信息竊取方面:
該惡意軟件的主要功能是從受害者的計算機中竊取信息,而後使用FTP將其發送到C2。該惡意軟件竊取了不一樣類型的數據:

  • Opera / Chrome / Firefox登陸數據
  • Firefox信息:配置文件,密鑰和數據庫文件
  • tracert www.google.com的輸出
  • WHOIS信息(基於< Ws1 >值)
  • 前臺窗口的屏幕截圖和標題
  • 一分鐘的波形音頻記錄
  • 來自可移動驅動程序的文件。文件類型基於文件中的< cpy >標記Devufl1.tmp(winufl1.tmp在舊版本中)。在某些版本中,該邏輯是在名爲的文件中實現的uflscan.exe
  • 有趣的是,若是驅動程序的名字是如下內容之一:A65RT52WE3F、09353536557 或 transcend20276,惡意軟件就會終止線程。咱們認爲它是一個調試代碼,它的目的是防止惡意軟件從做者的電腦收集文件
  • 來自其餘驅動器的基於Devufl2.tmp(舊版本爲winufl2.tmp)文件中的標記的文件
  • 鍵盤日誌和剪貼板數據從各類格式。包括拖放、CF_HDROP、CF_UNICODETEXT、虛擬鍵代碼、CF_OEMTEXT、CF_LOCALE、CF_BITMAP和CF_DIB。
  • 使用webcam捕獲(舊版本的tcwin.exe)
  • 自2018Telegram桌面數據

下圖爲帶有硬編碼可移動驅動程序的調試代碼。

在這裏插入圖片描述

在C2通信方面:
此變體使用FTP協議將文件上傳到其C2域。FTP域位於< S_n >標記內的配置文件中。

  • 該鏈接首先使用配置文件中的密碼和用戶名進行身份驗證
  • 而後該惡意軟件根據< F_f >標記和其中的子目錄及其以前生成的用戶ID,建立一個目錄。用戶ID根據寫入文件中的網絡適配器的信息生成的Mcdata.dat(PAdata.dat在較早的版本中)。
  • 以後,鏈接TYPE I和PASV命令繼續進行,而後再使用命令存儲文件STOR

該變體還與其餘域聯繫以更新其不一樣組件。域被放置在配置文件內< U_U1 >,< U_U2 >和< U_U3 >標籤。使用 URLDownloadToFileW 從給定的URL下載文件,這些文件user_id包含在URL中。

在字符串混淆方面:
在較新版本(自2018年起)中,使用如下腳本對字符串進行加密:

buf_1 = 'qweyuip[];lkjhgdszcm,.><MNBVCXZ|ASDFGHJK:}{POIUYTREWQ123456789-=+_)(*&^%$#@!'
buf_2 = '!#$%&()*+,-.123456789:;<=>@ABCDEFGHIJKMNOPQRSTUVWXYZ[]^_cdeghijklmpqsuwyz{|}'
input_str = "" # The encrypted string
output_str = ''
for i in range(len(input_str)):
      cur_byte = input_str[i]
      place = buf_2.find(cur_byte)
      if place == -1:
            output_str += cur_byte
            continue
      new_byte = buf_1[place]
      output_str += new_byte
print(output_str)

十一.技術附錄——Android後門分析

第一個活動是MainActivity,它負責向用戶提供誘餌內容並請求執行特權活動的權限。它還啓動一個名爲MainService的後臺服務,並在服務器發送命令時啓動第二個MainActivityFake (GmailActivity)。下圖展現了要求用戶容許一組權限。

在這裏插入圖片描述

1.數據採集

一旦GmailActivity啓動MainService,它將負責如下任務:計時器註冊、配置監視、顯示虛假通知(以下所述)和敏感數據收集。在此初始數據收集過程當中,將讀取並準備如下信息:

  • 已安裝的應用程序列表
  • 帳戶信息
  • 短信
  • 聯繫人信息

從C&C服務器收到命令後,其他信息將按需收集:

  • 錄音–默認狀況下爲30秒錄音
  • Google憑據-服務器觸發身份驗證網絡釣魚嘗試

2.Google憑據盜竊

在收到正確的命令從C&C服務器,谷歌登陸頁面將顯示給受害者,經過激活MainActivityFake (GmailActivity)。Google登陸頁面以下圖所示:

在這裏插入圖片描述

此時,用戶會看到一個合法的 accounts.google.com 登陸頁面,位於Android的WebView中。爲了竊取輸入的憑證,使用了Android的JavascriptInterface,以及一個定時從用戶名和密碼輸入字段中檢索信息的計時器。按期檢索Google賬戶憑據代碼以下圖所示:

在這裏插入圖片描述


3.「已啓用Google保護」

如前所述,它的核心功能之一是打開麥克風並記錄周圍環境。爲了實時實現這一目標,應用程序須要在後臺運行其服務。任何想要執行此類操做的Android應用程序都須要向用戶發佈一個正在進行的通知,提醒用戶設備上有未啓動的活動。爲了規避這個問題,惡意軟件開發者選擇向用戶顯示一個「谷歌保護已啓用」的假通知。下圖展現了應用程序顯示虛假通知。

在這裏插入圖片描述

結果是假裝成「 Google保護」的永遠在線的誘餌通知。

在這裏插入圖片描述


4.C&C

該惡意軟件使用常規的HTTP與C&C服務器通訊。它將初始請求發送給alarabiye[.]net,並繼續與gradleservice[.]info通訊以得到配置、命令和狀態更新信息。爲了上傳全部敏感信息,該惡意軟件使用帶有硬編碼憑證的FTPS。

在這裏插入圖片描述

此外,在將敏感文件上傳到FTP服務器以前,它會使用AES算法以及預先配置的密碼對它們進行加密,AES加密代碼以下。

在這裏插入圖片描述

5.短信滲透

此惡意應用程序的獨特功能之一是將前綴爲G-(谷歌雙因素身份驗證碼的前綴)的短信轉發到它從C&C服務器接收到的電話號碼。此外,全部來自Telegram等社交網絡應用的短信也會自動發送到攻擊者的電話號碼。

在咱們的分析過程當中,很明顯這個惡意應用程序仍在積極開發中,各類資產和功能要麼是之前操做的遺留,要麼是還沒有使用。其中一個未使用的網絡釣魚資產甚至包含一個預先輸入的用戶名,多是攻擊者先前操做的目標。未使用的網絡釣魚HTML資產和位置跟蹤代碼以下圖所示。

在這裏插入圖片描述

在這裏插入圖片描述


十二.相關指標及總結

網絡釣魚

  • telegramreport[.]me
  • telegramco[.]org
  • telegrambots[.]me
  • mailgoogle.info

安卓C&C服務器

  • gradleservice[.]info
  • alarabiye[.]net

文件的MD5

  • 4ae3654b7ed172b0273e7c7448b0c23c
  • ca154dfd01b578b84c0ec59af059fb62

文件的SHA-1

  • f3a4feedd4f62702c65b037a91bd8332d9518c08
  • 735f761462443deff23dde5b76746b7ab0ceaf71

文件的SHA-256

  • 24e5b2967437dbc1866df3ac1bf776a4960a5a56676b48bb9a143e62849a43d2
  • 881ab44385541ac7cd0f3279ba4fb8519df07d529456c9e34074787ebb33f658

TelB變體C&C服務器

  • afalr-sharepoint [.] com
  • afalr-onedrive [.] com

後門的MD5

  • 315e6338bf9c9bcbe3d5af0482f51dfd

後門的SHA-1

  • 8b00d62a5c03efa76dfca8bd8c95c969167f83ee

後門的SHA-256

  • a713a2749e9791243a89471a2603bf1f32ec11c9179771ca46fb5583b8412cb0

最後但願這篇文章對您有所幫助,更多指標推薦你們閱讀原文。很是感謝你們的祝福和關心,但願早些時候帶思遠去珞珈山看看,若是之後他能考上就更好了,哈哈。爸爸即將返校奮鬥,但願寶寶和女神都健健康康、開開心心。敏而多思,寧靜致遠。無思遠人,勞心忉忉。愛大家喔回去後得更加努力,腳踏實地,固然最重要的還有遠方和大家,晚安娜~

在這裏插入圖片描述

前文分享:

2020年8月18新開的「娜璋AI安全之家」,主要圍繞Python大數據分析、網絡空間安全、逆向分析、APT分析報告、人工智能、Web滲透及攻防技術進行講解,同時分享CCF、SCI、南核北核論文的算法實現。娜璋之家會更加系統,並重構做者的全部文章,從零講解Python和安全,寫了近十年文章,真心想把本身所學所感所作分享出來,還請各位多多指教,真誠邀請您的關注!謝謝。

在這裏插入圖片描述

(By:Eastmount 2020-11-09 星期一 晚上10點寫於貴陽 http://blog.csdn.net/eastmount/ )

相關文章
相關標籤/搜索