The Dukes原因
The Dukes系列是APT29最早的組織代號,早期的Dukes特馬工具是在2013年由卡巴斯基安全團隊作為未知型別攻擊組件進行命名披露的,對于The Dukes系列的歸因,我們重點探討如何將The Dukes歸因至俄羅斯政府背景黑客組織,而對于如何將APT29關聯到俄羅斯聯邦對外情報局(SVR)不在本文討論范圍內,
WellMess原因
WellMess系列木馬在2018年由JPCERT作為一款獨立的新型木馬披露,2020年,在對英美在內的全球COVID-19疫苗研制機構的網路間諜活動中出現了WellMess的身影,英國、美國、加拿大三國的國家情報機構(NCSC、NSA、CISA、CSE)聯合發文將該系列攻擊事件歸因至具有俄羅斯聯邦對外情報局背景的APT29,具體歸因點并未披露,外界至今對于將WellMess歸因至APT29仍然存在少許爭議,
2020年8月,英國貧訓永道安全咨詢公司在“WellMess malware: analysis of its Command and Control (C2) server”一文中給出了部分歸因證據,即WellMess與已知APT29 SeaDuke組件在關聯,二者均存在使用攻擊失陷的第三方網站作為C&C服務器,以及二者在網路通信中使用的資料加密協議較為相似,我們重點注意通信資料加密協議,二者在HTTP協議通信程序中,均會使用header部分的Cookie欄位來傳輸C&C指令,并且在C&C指令的加密邏輯上較為相似,
Table 3 加密協議比較

分析對比二者HTTP通信中傳輸的自定義加密資料表現如下,二者非常相似,

圖【24】 SeaDuke與WellMess通信流量
綜上,考慮到SeaDuke和WellMess特有的應用層資料加密協議以及使用HTTP header部分Cookie欄位傳輸加密資料的共同偏好,可將該關聯點作為將WellMess歸因至SeaDuke所屬的APT29的強關聯論據,
Nobelium原因
劃分Nobelium分支的一個標志性事件是2020年12月曝光的Solarwinds供應鏈攻擊活動,該攻擊活動的主要受害者為美國和歐洲國家的政府物體、科研、能源等機構,攻擊活動發現之后,美方情報機構聯合FireEye、Volexity等第三方安全公司對攻擊活動進行深入調查分析,在已披露的調查報告中,其實并沒有提供將Solarwinds事件歸因至APT29的確切證據,各安全公司多采用私有命名對幕后攻擊者進行歸類,隨后美方政府基于受害者立場下的國際政治局勢因素將該事件歸因至APT29,準確來講,是將Solarwinds供應鏈攻擊事件定性為俄羅斯政府背景支持的間諜活動,
微步情報局在深入總結已有情報資訊之后,梳理了兩條可用于歸因的佐證線索:卡巴斯基披露的Sunburst木馬(Solarwinds供應鏈攻擊活動中植入的特馬)與Kazaur木馬(歸屬于俄羅斯背景的Turla組織的特馬)的代碼相似性,瑞士安全公司Prodaft在SilverFish組織的調查報告中攻擊者背景分析,下面我們分別來論述:
Sunburst與Kazaur的代碼相似性
Kazuar木馬是PaloAltoNetworks 安全公司在2017 年首次報道的 .NET 后門,并將該特馬歸因至Turla APT組織,兩款木馬在C&C上線時均采用特定休眠演算法實作數周時間的上線延時,二者計算休眠時間演算法高度相似,均遵循下述邏輯,
Sunburst木馬計算C&C上線延時的休眠時間演算法實作如下,延時12到14天,

圖【25】 Sunburst休眠時間演算法
Kazuar木馬計算C&C上線延時的休眠時間演算法實作如下,延時14到28天,

圖【26】 Kazuar休眠時間演算法
其次,Sunburst和Kazuar特馬運行程序中都采用動態方式獲取核心函式,通過計算遍歷獲取的Windows API名稱摘要與硬編碼值比較來判定,二者均采用自定義修改的FNV-1a哈希演算法,FNV哈希演算法全名為Fowler-Noll-Vo演算法,是以三位發明人Glenn Fowler、Landon Curt Noll、Phong Vo的名字來命名的,最早在1991年提出,FNV-1a摘要演算法的標準實作邏輯如下,演算法中包含兩個初始向量:初始哈希種子offset_basis,迭代相乘的種子FNV_prime,簡單描述其邏輯為:從待計算字串中取出指定步長資料,將取出資料先與初始哈希向量做異或運算,然后將結果與初始乘法種子做乘法運算,將計算結果賦值為初始哈希向量,然后取待計算字串后續單位資料迭代上述程序,最終得到計算結果,
Sunburst和Kazuar在使用FNV-1a演算法時均進行了相同的修改:增加一個新的硬編碼key,將標準FNV-1a計算后的哈希最后與該key進行異或運算,
二者在代碼層實作如下:

圖【27】 Sunburst改變后的FNV-1a演算法

圖【28】 Kazuar改變后的FNV-1a演算法
在計算當前PC機器UID標識序列時,Sunburst和Kazuar均采用相同演算法(MD5+XOR),即通過既定字串計算MD5摘要,然后將該散列值與出初始四位元組逐位元組異或得到最終UID序列,
Sunburst中UID生成演算法如下:

圖【29】 Sunburst GUID生成演算法
Kazuar中GUID生成演算法如下:

圖【30】Kazuar GUID生成演算法
客觀來看待上述幾種加密演算法的相似性,其實并不能作為強有力的關聯證據,尤其是FNV-1a演算法的改編和UID生成演算法,因為上述演算法相對較為簡單,而且對于標準演算法的微調存在較大的偶然性,對此,卡巴斯基在披露文章中表述了一個客觀的論證前提:基于已有的海量惡意樣本庫,滿足上述演算法指紋的樣本主要出現在Sunburst和Kazuar特馬中,特別是使用NextDouble函式的自定義休眠時間演算法,
SilverFish調查報告
SilverFish是瑞士安全公司Prodaft對包括Solarwinds供應鏈攻擊事件在內的一系列攻擊活動的背后組織的私有命名,在“SilverFish GroupThreat Actor Report”一文中,Prodaft公司PTI威脅情報團隊基于成功反制木馬主控端后臺對Solarwinds供應鏈攻擊活動中的受害者、攻擊組織背景、主控端后臺資產、攻擊者操作日志等進行深入分析披露,該報告也是迄今為止將Solarwinds事件歸因至俄羅斯政府的最直接論據來源,本節我們側重于梳理總結報告中提及的Solarwinds事件歸因點,
總結歸因點之前,先回顧一下Prodaft成功滲入Solarwinds事件木馬主控端后臺的流程,這一步也是調查程序中最為關鍵的一步,雖然程序存在非常大的運氣成分,Prodaft團隊調查之初,重點分析當時還處于存活狀態的攻擊者資產“databasegalore.com”,該域名決議至5.252.177.21,在該主機上的2304埠存在PowerMTA郵件服務,同時通過URL路徑暴力訪問發現存在名為“example.php”的資源檔案,基于2304埠的PowerMTA服務和IP:2304/ example.php特征進行網路空間搜索并排除掉無關站點,發現新的攻擊者資產81.4.122.203,繼續進行同C段的子網調查,分析人員發現81.4.122.101站點存在疑似木馬控制端登錄頁面資訊,爆破登錄該主機后,經分析驗證為Solarwinds事件控制端后臺,其流程圖繪制如下:

圖【31】Prodaft滲入Solarwinds事件木馬主控端后臺的流程
接下來我們將逐一梳理該調查報告中將Solarwinds事件歸因至俄羅斯黑客組織的細節:
C&C后臺源代碼中攜帶的開發者ID
在C&C后臺的PHP源代碼中靜態包含14個人的昵稱和ID,多數ID曾在俄語地下論團中活躍,該線索可以初步證明攻擊者擁有瀏覽俄語黑客團隊的習慣,

圖【32】摘自Prodaft報告,含黑客ID的PHP代碼
C&C后臺關于中馬機器的俄語資訊備注
C&C后臺面板中上線機器一欄均存在名為“Comment”的資訊單元格,此位置用于后臺操作人員填寫關于受控機器資訊,當前已存在的備注資訊多采用俄語俚語或白話,如“dno”、“pidori”、“poeben”、“poebotina”、“psihi”、“hernya”、“xyeta”、“gavno”,該線索說明C&C后臺操作人員具有俄語背景,

流量重定向代碼過濾CIS獨聯體國家受害者
基于當前C&C后臺拓線的其他失陷型別C&C站點上存在用于流量重定向的PHP代碼,該代碼會過濾掉包含阿塞拜疆、亞美尼亞、白俄羅斯、哈薩克斯坦、吉爾吉斯斯坦、摩爾多瓦、俄羅斯、塔吉克斯坦、土庫曼斯坦、烏茲別克斯坦、烏克蘭、格魯吉亞在內的CIS獨聯體國家的受害者機器回連流量,其中還設定了俄語、烏克蘭語等在內的語種過濾條件,對于美國和加拿大不予過濾,代碼中使用注釋陳述句為俄語,考慮到Solarwinds供應鏈攻擊事件受害者遍布全球,攻擊者在受害者回連流量重定向代碼中主動過濾掉非目標的俄語系國家,該行為可作為將Solarwinds供應鏈攻擊事件歸因至俄羅斯背景黑客組織的強歸因論據,

圖【34】摘自Prodaft報告,重定向流量過濾代碼
關注我,持續更新更多網路安全技術知識!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/295561.html
標籤:其他
