隨著金融科技的技術持續發展,金融產業使用了更多的資訊系統,便也代表著比起過去任何時候,潛藏了更多未知的資安威脅,而駭客入侵所造成的影響,往往也牽一髮而動全身,有著絕不可小覷的風險。
2021 年底一連串我國證券商與期貨商遭受駭客撞庫攻擊、導致下單系統異常的新聞,在當時引發了社會上一片軒然大波。奧義智慧研究團隊在參與事件調查 (Incident Response, IR) 時,成功挖掘出關於金融攻擊事件的更多內幕,本篇文章將帶您深入瀏覽與探討,來自中國國家級駭客的金融產業供應鏈攻擊手法剖析、惡意程式技術,與對應的緩解措施等。
去年臺灣發生多起證券、期貨商遭到撞庫攻擊,甚至出現下單異常案件的情況,研判應為系統性問題而非單一個案,並且對於交易秩序的影響相當嚴重。該攻擊事件疑似為特定組織型駭客所發起,長期且有目的性的滲透行動,從攻擊手法中可以觀察到,駭客具有針對不同目標環境開發對應後門、躲避安全軟體偵測的能力,並十分擅長於企業內網攻擊,操作手法亦相當熟稔。
奧義智慧科技 (CyCraft) 於 2021 年 11 月底到 2022 年 2 月初,監控到一系列大範圍且專門針對臺灣金融單位軟體系統的供應鏈攻擊事件,遂而開始展開進一步詳細的調查。初步發現,攻擊者準確利用了我國金融單位常用的軟體系統之漏洞,第一波攻擊於 2021 年 11 月底出現受駭案例,第二波活動的高峰期則在 2022 年 2 月 10 至 13 號之間,攻擊者來源 IP 位於香港。
經調查,本次攻擊事件所使用之後門程式為 QuasarRAT,經過分析啟動方式、保護機制與使用之 C2 中繼站等情資後,研判應為中國國家級駭客 APT10 所發起的新活動,主要針對國內金融業發動攻擊。
由於在過去的資安研究之中,源於中國的 APT 組織一般較少以經濟獲益為目標,然而,本起行動中則明確有著盜竊金融資料的行為,因此奧義研究團隊以「咬錢熊貓」(Operation Cache Panda) 這項代稱來命名此行動。
Operation Cache Panda 行動中,利用到了一項證劵軟體系統管理介面的網站服務漏洞。首先,攻擊者上傳了中國駭客常用之 ASPXCSharp WebShell 進行網站主機控制,之後便開始利用知名內網滲透工具 Impacket 掃描內網電腦,試圖大範圍植入DotNet 後門程式,並意圖竊取受駭單位資料。
攻擊者大量使用了動態載入 DotNet 組件檔案 (DotNet Assembly) 的技術,透過攻擊手法 Reflective Code Loading(MITRE ATT&CK 編號 T1620),動態注射惡意 DotNet Assembly 程式碼到系統以合法執行程序。
此次事件除了使用到可編譯不同平台 Shellcode、透過 In-Memory 的方式執行 DotNet Assembly 的開源專案 Donut 外,亦發現使用部分 SharpSploit 程式碼注入 DotNet惡意程式,可以達到無惡意模組落地的隱匿效果,藉以降低被防毒軟體偵測機率。
其後攻擊者將會搭配 Impacket,透過 Remote Service/WMI 方式橫向擴散到內部主機。一旦成功取得內部主機的控制權,攻擊者便會建立 Reverse Tunnel RDP,使其更容易地透過遠端桌面操作受駭主機。
在本次調查當中,我們發現駭客使用了名為文叔叔的中國雲端檔案分享服務來下載相關工具,藉以達到一定程度的方便性以及匿名性;不過,也正因如此,駭客在透過 RDP 登入受駭主機時,反而容易留下更多追查線索。
本次遭駭的軟體系統在臺據稱有八成以上的市佔率,屬於金融機構的供應鏈攻擊。據悉已有多家企業遭受 Operation Cache Panda 行動不同程度的影響,建議金融單位立即修補軟體系統漏洞,限制 Web 管理介面的存取範圍,並盤點本文文末所提供的入侵指標 (Indicator of Compromise, IoC),包含網路 IP、檔案雜湊 (hash) 與惡意程式特徵等,另外也建議安裝奧義智慧的 Xensor EDR,開啟惡意程式保護模組 (Malware Protection Module) 以監控與阻擋相關的惡意活動。
本次攻擊所使用的 WebShell 取用於開源專案,此 Webshell 改良了中國駭客常用的蟻劍 WebShell 框架 (As-Exploits),並加強其動態加載與執行 DotNet Assembly 的能力,透過 GetType[0] 取得和建構出 Payload 的 Run類型,以確保能做到無惡意檔案落地與不會留下 Web存取紀錄之效果。
Operation Cache Panda 事件的攻擊者使用到六隻惡意程式,其中,只有三個檔案會落地,其餘皆在動態下載後載入。這六隻惡意程式各自負責了不同的功能,並串連成了本次的攻擊,整體流程請參照下方圖片。
PresentationCache.exe 為後門程式 Quasar 的載入器,首先會將自身註冊為服務,使能夠常駐於系統,且載入 PresentationFrom.dll 及 PresentationStatic.dll 兩個 DLL 檔案。當 PresentationCache.exe 被執行後,則會向外部檔案下載伺服器、抓取 x86.bin 及 DogCheck.bin 檔案,並將這兩個 Shellcode 檔案注入其他的 Process。
這兩個 Shellcode 會動態加載 DotNET 執行環境,並載入攻擊者的 DotNet Assembly 來負責進行後續行為。在這之中,x86.bin 為後門主體,改自惡名昭彰的 DotNet 後門 Quasar RAT,而 DogCheck.bin 則為守門員,負責檢查後門連線狀況,若是端點沒有連到 C2 Server 時,便會認定程式執行失敗,並且再次將 PresentationCache.exe 重啟。
透過這樣的模式,駭客達到可確保 x86.bin 僅以 In-Memory 的形式執行,使主體惡意程式不落地。而 DogCheck.bin 則用以維持後門運作狀況,加強受駭電腦整體控制度。
本次的攻擊行動,使用到 DotNet Assembly Loader 以及 DotNet Obfuscator,以增加分析調查的難度。而利用了開源專案 Donut 的惡意程式,能夠編譯不同平台的 Shellcode,並負責動態載入 DotNet Assembly。另外,透過 In-Memory 方式所執行的 DotNet Assembly,可以達到 Fileless 的攻擊效果,極力降低留下檔案的機會。因此在調查過程中,時常會因記憶體內的資料已經消失,而無法找到惡意程式主體。
我們也發現駭客在攻擊過程中,透過商用 DotNET 混淆工具 DotNet Reactor 來增加逆向的難度。 DotNet Reactor 會對程式控制流程進行修改、混淆,也會動態產生 DotNET IL,動態時期才將程式解出並執行。為避免靜態分析,攻擊者使用許多混淆機制,如透過 DES CBC 加密部分字串來避免偵測等。
值得一提的是,這次攻擊中駭客大量使用開源或商業軟體,並減少運用駭客自行開發的惡意程式,目的為降低被關聯之風險,例如駭客所運用的核心後門程式,便是以 C# 實作與開源的 Quasar RAT。
為了避免被偵測到惡意行動,攻擊者利用了許多 Defense evasion 的技術來迴避,例如把惡意程式加到 Defender 的白名單、檢查 Sandboxie 等;惡意程式會檢查是否有 SbieDLL.dll 的存在,以確認自己是否在 Sandboxie 的沙盒環境中,如果是的話便會立即停止執行,藉以規避掉沙盒分析。
以下列出此事件的入侵指標與說明,列表請參照 Operation Cache Panda 攻擊事件 IoCs。
下圖列出此事件所使用到的攻擊手法,及其 MITRE ATT&CK 編號。我們觀測到 Operation Cache Panda 運用的手法,高度採用了 DotNet 惡意程式與多種用來隱匿行蹤、混淆調查的工具,而其中值得注意的是,「Reflective Code Loading」技術(MITRE ATT&CK 編號 T1620),甚至是最新一版 MITRE ATT&CK 框架 v10 中才首次出現的新型攻擊技術,顯見駭客的攻擊技術亦持續在精進。
Writer: CyCraft
奧義智慧科技(CyCraft Technology)是一家專注於 AI 自動化技術的資安科技公司,成立於2017年。總部設於台灣,在日本和新加坡均設有子公司。為亞太地區的政府機關、警政國防、銀行和高科技製造產業提供專業資安服務。獲得華威國際集團(The CID Group)和淡馬錫控股旗下蘭亭投資(Pavilion Capital)的強力支持,並獲得國際頂尖研究機構 Gartner、IDC、Frost & Sullivan 的多項認可,以及海內外大獎的多次肯定。同時也是多個跨國資安組織和台灣資安社群的成員和合作夥伴,長年致力於資安產業的發展。