像微軟和蘋果這樣的公司,在發布新軟體前, Code 都會通過複檢和測試,以免有任何漏洞。駭客們也會如此做,他們最不願看到的就是木馬破壞受害者的系統後被發現。更不希望殺毒軟體監測到惡意程序。那他們怎麼辦呢?將 Code 發送給 Google 的 VirusTotal 網站,請他們幫忙做測試。
- Google 幫了駭客的大忙
一直有人懷疑駭客和國際間諜會使用 Google 的殺毒網站測試他們的程序(發起攻擊前)。現在,一位安全研究員在跟踪幾個知名的駭客團伙後發現,著名的國際團隊組織使用 VirusTotal 網站來完善他們的 Code ,研發間諜程序。這聽起來挺諷刺。
VirusTotal 於 2004 年由 Hispasec Sistemas 在西班牙創立,2012 年被 Google 收購。該網站一直提供免費的網絡服務,聚集了 Symantec、卡巴斯基實驗室、 F-Secure 等機構研發的數十個殺毒軟體。如果有人發現可疑文件,向該網站上傳,通過殺毒掃描後就能確認是否為惡意文件。該網站本可以阻止網絡惡意程序,但也變向為駭客提供了可乘之機,為他們的惡意工具做測試。
幾年以來,Dixon 一直在跟踪上傳到該網站的 Code ,通過每一個上傳文件的關聯數據發現一些駭客或駭客組織,甚至能夠發現襲擊目標。每個上傳的文件會留下用戶的元數據痕跡,包括文件名 稱,上傳時間,上傳者 IP 地址的散列值和國籍。雖然 Google 隱藏了 IP 地址,但通過散列值仍能夠發現同一個地址的上傳文件。奇怪的是,Dixon 監測的幾個組織使用的是同一個地址,重複多次提交惡意代碼。
Dixon 通過他發明的算法解析元數據,他曾跟踪到了中國和伊朗知名駭客組織提交的文件數據軌跡。數月後,他監測到了駭客們修改、研發惡意 Code 的過程,以及躲避的殺毒軟體數目。他甚至能夠預測駭客們發起攻擊的時間。有時他看到某些駭客測試過的 Code 再次出現在 VirusTotal 網站上,這是由受害者方發現並提交上來進行檢測掃描的。
- 跟踪駭客組織
Comment Crew(註釋組)駭客組織被安全研究員們稱為「APT1 」,據稱基地在中國,之前還攻擊過紐約時報。據報導,自 2006 年以來,註釋組還駭過可口可樂以及某些政府機構。最近,該組織把目標轉向了美國基礎設施,盯上了像 Telvent 這樣的公司,該公司控制著美國部分軟體系統,包括電網、石油、天然氣管道以及水下系統。Dixon 跟踪的組織並不是「註釋組」主要部分,而是其分支團隊。
他還跟踪到了 NetTraveler 組織,猜測該組織基地在中國。近十年來,該組織攻擊過政府、外交部門、以及軍方機構。該組織顯然忽略了一個事實:他們的行踪會被跟踪到。不過「註釋組」曾通過不同的獨立 IP 地址提交 Code ,這說明他們已經開始警覺了。
安全研究員們一直懷疑駭客利用 VirusTotal 做惡意代碼測試,後來 Dixon 便開始挖掘 VirusTotal 的元數據。現在他不太願意公開討論他的元數據工作進程,因為可能打草驚蛇,讓駭客們改變策略,跟踪難度就更大了。但他表示,現在 VirusTotal 的存檔數據已經足夠讓其他安全研究員一起來跟踪駭客活動。本週他發布了一組用於分析元數據的代碼,便於其他研究員進行跟踪工作。
Dixon 稱:「起初要在數據中發現駭客組織很難,我首次看到這些數據時,不知從何入手,直到我發現駭客後才知道這些來龍去脈。」
- 偷看駭客改良惡意代碼
通過元數據,駭客的工作細節被 Dixon 一覽無餘。在他跟踪觀察的三個月期間,「註釋組」將他們的惡意程序的每一條代碼都修改了一遍,並增刪了一些功能。他們添加了其它攻擊漏洞代碼,但破壞了其它部分的攻擊功能,隨後又進行了各種修改測試,整個過程都在 Dixon 的觀察之下。
2012 年 8 月到 10 月觀察期間,Dixon 根據「註釋組」修改惡意文件代碼、重命名文件、移動文件內容、刪除代碼控制服務器的 URL 鏈接等一系列活動,摸清了他們的行動流程。
駭客還測試出了兩款包裝工具,用來壓縮惡意軟體的大小,並對它進行包裝隱藏,避開殺毒掃描。但這些方法只部分奏效。駭客們將能監測出他們代碼的服務器減少至 2 到 3 個。只需要殺毒引擎發現不了惡意代碼,就無需進行頻繁更改。雖然 Dixon 通過殺毒引擎檢測到了一些惡意代碼,但是隱藏較深的惡意代碼只能被人們不常用的殺毒引擎發現。
即使「註釋組」有時對攻擊代碼進行大幅修改,但有些字符串他們從未改動過,比如用於木馬與控制服務器之間交流的字符串,這讓 Dixon 得以研發電子簽名,偵測和截獲目標機器上的惡意活動。他們在某些特殊攻擊中的加密鑰匙也從未變動過,一直使用著 MD5 散列加密技術中的 Hello@)!0 字符串。多數時候,他們向 VirusTotal 網站提交代碼時只啟用了 3 個 IP 地址。Dixon 認為這些駭客經驗不足,組織內沒有嚴格的監管。
- 通過惡意代碼發現受害者
Dixon 經常能跟踪到這些上傳到 VirusTotal 網站的文件,並與到受害目標建立連接。有時他能夠測算出代碼測試結束到發起攻擊所花的時間。多數時候「註釋組」會在測試結束幾小時或幾天后發起攻擊。比如 2012 年 8 月 20 日,一個漏洞代碼在測試結束兩天后出現在目標機器上。
跟踪 NetTraveler 時,Dixon 也採用了相同的方式。2009 年,該組織開始在 VirusTotal 露面,隨後測試活動越來越頻繁,每年的測試量成倍增加。2009 年他們提交了 33 個文件,去年則達到 391 個,今年已經提交了 386 個文件。更讓人震驚的是,他們甚至上傳從受害者機器中偷來的文件。Dixon 覺得這非常諷刺,這些駭客可能想測試這些文件,看在己方機器上打開前,是否會被感染。
Dixon 跟踪的伊朗駭客組織於去年 6 月出現在 VirusTotal 上。一個月後,該組織上傳了約 1000 個攻擊文件,隱蔽性超強。他們甚至利用存在了兩年之久的漏洞,並加以修改來躲避殺毒掃描。此外,Dixon 還發現了疑似 PlugX 駭客組織上傳的文件。據稱,PlugX 來自中國,於去年開始露面,並在不斷壯大。自 2013 年 4 月以來,PlugX 在 VirusTotal 中上傳了約 1600 個文件,每次上傳都使用了不同的 IP 地址。
雖然駭客們在 VirusTotal 的活動已被曝光,但毫無疑問,他們會改良技術躲避跟踪,繼續使用 VirusTotal。Dixon 認為這並無大礙,因為只要安全公司們保證上傳的代碼如有攻擊可能,在代碼傳播之前,他們會跟踪這些代碼字符串並做出相應的數字簽名,做好一系列防禦機制工作。