勒索軟體解析:技術上真的無法自行救回檔案

作者 | 發布日期 2015 年 11 月 20 日 8:40 | 分類 資訊安全 , 軟體、系統 follow us in feedly

近日有不少媒體紛紛報導勒索軟體的災情,部份這類惡意程式會將受害電腦中的檔案加密,並以高價向受害者兜售解密金鑰,若是受害者沒有在期限內交付贖金,解密金鑰就會慘遭「撕票」,遭加密的檔案將再也無法開啟。這聽起來像是巫術的勒索方式,其實只是應用非對稱式加密技術,不過這也代表受害者真的無法自行救回檔案。



勒索軟體主動鎖定你的檔案

有個笑話是這麼說的,小明因為腳踏車常常遭竊,一氣之下便用 10 個大鎖鎖住腳踏車,還在車上留張紙條,寫道「哈哈,看你怎麼偷」。某天小明牽車的時候,發現車上多了一個鎖和另一張紙條,上面寫著「哈哈,看你怎麼騎」。這個情節與許多勒索軟體的行為相當類似。

以 2013 年 9 月出現的 CryptoLocker 勒索軟體為例,它會感染安裝 Windows 作業系統的電腦,在 CryptoLocker 植入受害電腦後,會自動以 RSA 加密法將電腦本機與在同一區域網路中的特定類型檔案進行加密,這時受害者已經無法開啟受影響檔案。

之後勒索軟體會要求受害者在期限內交付贖金,才能將這些檔案解密,否則將會把解密金鑰永久銷毀,受害者將再也不能打開這些檔案。更慘的是,就算將受害電腦中的 CryptoLocker 病毒順利清除,也只能防止它繼續漫延,至於已經遭到加密的檔案,依然無法解開。

CryptoLocker_techbang111901

▲ CryptoLocker 將受害電腦中的檔案加密後,接著就會以高價向受害者兜售解密金鑰。(Source:Flickr/Christiaan Colen CC BY 2.0,本圖採用創用 CC 姓名標示-相同方式分享)

CryptoLocker_techbang111902

▲ 以下圖解 CryptoLocker 運作原理。遠端攻擊者會先將病毒植入受害電腦。

CryptoLocker_techbang111903

▲ 接著攻擊者會將加密金鑰傳送至受害電腦,病毒就會使用加密金鑰將檔案加密,這時候受害者已經無法再開啟檔案了。

CryptoLocker_techbang111904

▲ 隨後攻擊者即展開勒索。

CryptoLocker_techbang111905

▲ 受害者需交付贖金換取解密金鑰,才能開啟被加密的檔案。

採高安全性非對稱加密,難以破解

或許讀者比較熟悉對稱加密技術,但是對非對稱加密技術則感到比較陌生,我們在這邊暫且不談其詳細原理,只討論在使用時兩者的差別。

對稱加密有如 ZIP 壓縮檔的密碼,在加密與解密時都使用同一組密碼,而非對稱加密則較常用於網路傳輸,它的特色是在加密時使用的密碼稱為加密金鑰,在解密時則必需使用稱為解密金鑰的密碼,而 2 個金鑰並不相同。其概念可參考下方示意圖表。

在 CryptoLocker 運作時,攻擊者的電腦會產生一組加密、解密金鑰,透過網路將加密金鑰傳送至受害電腦,並將檔案加密,由於受害者的電腦中並沒有解密金鑰,所以無法將檔案解密,因此無法讀取被影響的檔案。

由於解密金鑰不曾於網路上傳輸,除非受害者反過來主動入侵攻擊者的電腦,否則無法取得解密金鑰,再加上 CryptoLocker 採用的是金鑰長度為 1024bit 甚至是 2048bit 的 RSA 加密演算法,在實作上仍無法直接破解密碼、救回檔案。

做個結論,萬一不幸遭到勒索,即便可以清除病毒本體,卻還是沒有辦法自行開啟被加密的檔案,因此只能乖乖交付贖金。另一方面,雖然我們沒辦法事後補救,但是還是可以事前預防,讀者都應該養成不點擊可疑網址、不安裝來路不明程式的習慣;此外,還需勤備份重要檔案,至少需做到定期將重要檔案燒錄成光碟、複製到外接硬碟保存(而不是從 C 槽複製到 D 槽或是雲端同步資料夾),才能避免悲劇發生。

CryptoLocker_techbang111906

▲ 對稱加密技術在加、解密時都使用同一組密碼,其概念容易理解。

CryptoLocker_techbang111907

▲ 非對稱加密技術在加、解密時,則使用不同的密碼(即加密金鑰與解密金鑰),提高了受害者遭 CryptoLocker 感染時,自己解開檔案的困難。至於 2 種金鑰的產生方式與其數學模型,可參考維基百科說明(該文中公鑰、私鑰即為加密金鑰、解密金鑰)。

(本文由 T客邦 授權轉載) 

發表迴響