最新研究證實 Stuxnet 與 Flame 的開發者有關聯
日前我們發表了兩篇文章詳細講述了 Flame 的運作原理以及影響情況,在文中我們亦曾推測過 Flame 可能與早前的 Stuxnet 有關連。似乎真的被我們言中了,事關今天 Flame 的發現者 Kaspersky 向外證實了 Stuxnet 與 Flame 的開發者有關聯。
Flame 惡意程式的發現,向大家展示了迄今為止最複雜的網路武器的面目。在發現之初,專家還沒有確鑿的證據證明其開發團隊跟 Stuxnet 和 Duqu 的團隊有關係,再加上 Flame 與 Duqu/Stuxnet 在開發方式上的差異,令專家們傾向於判斷這些項目是由不同的團隊所創建。然而,隨著更深入研究便發現,這些不同的開發團隊至少在開發的早期階段曾經合作過。
卡巴斯基實驗室專家發現了來自 Stuxnet 早期 2009 版本中的一個模組——“Resource 207”,實際上也是 Flame 中的外掛程式之一。這意味著當 Stuxnet 蠕蟲在 2009 年初創建之時,Flame 平台就已經存在。同樣在 2009 年,至少有一個 Flame 模組的原始程式碼在 Stuxnet 中被使用。
該模組被用作通過 USB 驅動傳播感染。而 Flame 中的 USB 驅動感染原理代碼與 Stuxnet 一致。這讓 Stuxnet 中的 Flame 模組可利用了一個當時未知的漏洞令惡意程式獲得許可權提升,推測該漏洞可能是 MS09-025。
隨後,Flame 的外掛程式模組於 2010 年被撤出 Stuxnet,由幾個利用新漏洞的模組代替。2010 年開始,兩支開發隊伍獨立工作。此後可能僅在交換新「零日漏洞」時有過合作。Stuxnet 是首個將目標鎖定在工業設施上的網路武器,在 2010 年 6 月被發現時,Stuxnet 還感染普通的電腦。其實,Stuxnet 最早的已知版本早在一年之前就已創建。另外一個網路武器,也就是眾所周知的 Duqu,於 2011 年 9 月被發現。與 Stuxnet 不同,Duqu 木馬在受感染系統中的主要作用是作為一個後門,從而盜取機密資訊(網路間諜活動)。
在 Duqu 的分析過程中,發現其有很多與 Stuxnet 極其相似的地方,這也揭示了兩者其實是使用的同一個攻擊平台——「Tilded 平台」。該平台的命名源于其開發者對“~d*.*”檔案名格式的偏愛,因此,專家便將其稱為“Tilde-d”。
2012 年 5 月,Flame(火焰)惡意程式在由卡巴斯基主導、國際電聯發起的一項調查中被發現。發現初期,Flame 跟前面兩個惡意程式完全不同。從一些特徵上分析,例如該惡意程式的大小,對 LUA程式設計語言的使用以及其多樣化的功能,都表現出與 Duqu 或 Stuxnet 沒有任何關係。然而,新的分析結果的出現卻大大改寫了 Stuxnet 的歷史,毋庸置疑,“Tilded” 平台的確與 Flame 平台有關聯。
據推測,Stuxnet 最早的已知版本是在 2009 年 6 月被創建的,其中包含一種特殊的模組,被稱為「Resource 207」。然而在隨後的 Stuxnet 2010 版本中,該模組被完全移除。「Resource 207」模組是一個加密的 DLL 檔,其中包含有一個大小為 351,768 位元組的可執行檔,名字為 “atmpsvcn.ocx”。這個特別的檔案,經過專家的調查發現,與 Flame 中使用的代碼有很多共通點。相似之處包括對互斥物件的命名,解密字串時所用的演算法,以及對檔案命名。此外,在 Stuxnet 和 Duqu 各自的模組中都有很多相同或類似的代碼。因此,可以得出這樣的結論,Flame 與 Duqu/Stuxnet 幕後開發團隊有過交流,並且是以原始程式碼的形式(而非二進位的形式)。
Stuxnet 的「Resource 207」模組主要功能是從一台電腦透過 USB 儲存裝置感染另一台電腦,並利用了 Windows 內核中的漏洞提升許可權。這種利用 USB 儲存裝置傳播惡意程式的代碼與 Flame中使用的代碼一致。
卡巴斯基實驗室首席安全專家 Alexander 相信 Flame 與 Tilded 是完全不同的平台,這些平台都用來開發各種各樣的網路武器。它們有著各自不同的架構,感染系統及執行主要任務的方式也不同。這兩個項目應該是彼此獨立的。然而,新的發現表明它們的幕後團隊在早期的開發中,曾經共用過至少一個模組的原始程式碼,進一步證明他們至少有一次團隊合作。而目前所發現的證據都是能夠十分有力的證明了 Stuxnet/Duqu 和 Flame 這些網路武器是有關聯的。