Duqu最早出現在2011年9月,是繼Stuxnet蠕蟲后最為惡性的一種可竊取信息的蠕蟲。
Boldizsár Bencsáth一邊啃著漢堡一邊盯著他的電腦屏幕。盡管在布達佩斯技術和經濟大學2011年秋季開學之前他還有很多事情要做,但是他仍然感覺很快樂、很放松。夏末的藍天白云和舒適的空氣會讓你忘記冷冽的秋季即將到來。
當 Jóska Bartos(一家公司的CEO)給他打電話時,他正坐在布達佩斯技術和經濟大學加密和系統安全實驗室(CrySyS)的桌前享受著他的午餐
“Boldi,你有時間幫我們點忙嗎?”
“和我們之前討論的事情有關嗎”
“不是,是其他的事情,很重要。你現在可以過來嗎?不要告訴任何人。”
Bencsáth狼吞虎咽的吃完了他的午餐,然后就直奔向了Jóska Bartos的公司。剛一進門,Bartos就說:“我們公司好像遭到黑客入侵了”。
他們在開發者的機器上發現了一個可疑的文件,文件的創建日期是晚上沒有人工作的時候。文件被加密和壓縮了,所以他們不知道文件里的內容。但是他們推測這應該是攻擊者從機器上拷貝的并且打算之后再取走的數據。在調查公司的網絡之后發現,還有一些其他的機器也出現了類似的情況。
公司應急小組的人員很確定他們是遭到了黑客的入侵,所以他們想讓Bencsáth幫忙查出黑客是怎樣入侵的。他們公司有一套比較齊全的保護措施,包括防火墻、殺毒軟件、入侵探測和防御系統,但是現在還是被黑客入侵了。
Bencsáth只是一名計算機科學老師,他之前也從未做過這類的工作。在實驗室里他只是一名研究生顧問,為歐洲聯盟做過學術研究,偶爾還做過一些清理或者重裝系統的工作,但是從來都沒有接觸過正真的黑客入侵事件。對于毫無經驗的他來說,要解決這一問題是有很大難度的,而且他還不能求救于同事。因為該公司是一家依賴于顧客信任而運營的公司,一旦被顧客發現其系統遭到黑客攻擊,它就會失去很多的客戶,公司就很難再經營下去了。
初步分析
應急小組和Bencsáth用了一下午的時間對被入侵的硬盤進行了鏡像分析,他們發現了一個記錄密碼和擊鍵次數的惡意軟件。它可以對連接到機器上的設備和系統進行分類,這樣一來攻擊者就可以構架公司內網的藍圖了。攻擊者并沒有利用惡意軟件直接從受害者機器上竊取數據,而是把數據儲存在一個臨時的文件夾內。
在他們刪除了其中的有一些敏感的客戶數據之后,Bencsáth把鏡像分析資料和公司系統日志帶回了實驗室(他還是沒有對其同事透露任何信息)。而當他檢查其中的一個內核模式驅動時,發現在電腦和諸如打印機的設備中存在一個通訊程序。經調查得出該惡意軟件簽名的數字證書來自于臺灣的一家公司。
Bencsáth立即聯想到了破壞伊朗鈾濃縮工廠的Stuxnet蠕蟲,它也使用了一家臺灣公司的數字證書。不同的是,Stuxnet使用的是瑞昱半導體公司的數字證書,而新發現的惡意軟件使用的是驊訊電子公司的數字證書。
Duqu和Stuxnet的關系
難道這兩起事件之間是有聯系的嗎?應急小組成員把這兩個惡意程序仔細認真的對比之后發現,它們除了數字證書不一樣之外,其他的都一樣。
在發現了這些之后,Bencsáth立即給Bartos打了個電話,請求讓他實驗室里的研究員也參與進來。因為這不再是一次簡單的黑客入侵事件了,它可能會牽涉到國際間的安全問題。
Bencsáth搜集了很多關于Stuxnet的技術資料,當他讀到Stuxnet隱藏其代碼的加密慣例時,他發現這兩個應用程序使用的加密密鑰都是一樣的。毫無疑問,這二者之間肯定有著千絲萬縷的關系。
由于惡意程序創建的臨時文件都是以 ~DQ開頭,因此這個惡意程序被命名為Duqu。賽門鐵克公司的Eric Chien和其同事在看到這一消息時都感到很興奮,這是難得一見惡意病毒,他們預言Duqu將開啟Stuxnet的新篇章。
Duqu的特點
從本質上來說,Duqu是一種遠程訪問的木馬或者RAT,它有一個簡單的后門可以為攻擊者在受害者機器上提供一個長久的駐足點。
一旦建立了后門,Duqu就可接觸到受害機器上的命令和控制服務器,然后攻擊者可以在該服務器上下載附加的模塊,以豐富其攻擊程序的功能:
與其說Duqu是一個間諜工具,還不如說它更像一個偵查軟件。Duqu是有生命周期的,在代碼執行30天以后它會自毀并刪除掉所有的入侵痕跡。Duqu之所以與眾不同而且令人驚恐,是因為它的攻擊對象很特殊。數字證書是讓互聯網各項功能正常運行的核心環節,所以,如果數字證書遭到了入侵,這對互聯網來說簡直就是毀滅性的打擊。
卡巴斯基實驗室的研究員也對這一惡意軟件有著極高的興趣,他們認為Duqu是頂級程序員的作品,其代碼與其他間諜和惡意軟件的代碼明顯不同。Duqu還有一個很特殊的部分就是攻擊者在受害者機器上下載額外負載模塊(Payload)時所使用的組件。這個組件所使用的編程語言既不是C語言也不是C++語言,而是一種卡巴斯基實驗室研究員們從來沒有見過的編程語言。
Duqu攻擊沒有使用0day漏洞利用程序來幫助其傳播,也不能像Stuxnet那樣自動的傳播。但是一旦機器感染了Duqu,攻擊者只需手動的從受控制的服務器上發送攻擊指令,它就可以立即感染其他的機器。Duqu執行的是系統性強且有條理的攻擊,它甚至會根據不同的目標編譯不同的攻擊文件,執行不同的命令。
看來Stuxnet的故事還遠沒有完結,Duqu也許只是個開始。