在國外科技網站看到此消息,決定發到這裡分享一下,首先想解密的人不要抱太高的期待,使用這個工具需要的條件很嚴苛,首先中毒後電腦不可關機,原因是因為斷電後記憶體所有資訊都會遺失,第二此方法是透過抓取記憶體中殘留用來生成加密金鑰的質數,就算沒關機該資訊也有蠻高的可能性被其他東西覆蓋掉導致解密失敗
假設不符合條件一的人可以直接跳過此方法,沒重開機的人建議馬上試用此方法,反正死馬當活馬醫也不會再損失什麼
WanaKiwi適用於Windows XP, Windows 7, Windows Vista, Windows Server 2003 和 2008
下載地址 (解壓後執行wanakiwi.exe)
WanaKiwi的運作方式:
昨天安全研究人員Adrien Guinet發現了WannaCry在生成金鑰後使用的系統內建Windows Crypt APIs來清除記憶體中的私鑰,不過在舊版Windows中該API有漏洞導致生成加密金鑰的質數會殘留在記憶體中,擷取成功的話可以用來反推加密私鑰,Adrien Guinet發佈了可以在Windows XP上使用的WannaKey工具,今天另一名研究人員Benjamin Delpy將此方式使用到Windows 7上取得成功,發佈了更新版的WanaKiwi解密工具。
同場加映WannaCry的加密方式簡介:
首先對加密原理不太熟的人解釋對稱與非對稱加密,對稱加密代表加密與解密都是用同一把金鑰,對稱加密比較有名的是AES加密法,對稱加密的好處為速度快以及強度非常高,但缺點為只能用在本地端,就跟你無法把一個上鎖的盒子和鑰匙一起寄給別人,因為中途被攔截就可以直接被打開了。非對稱加密解決了這個通信問題,最有名的為RSA加密法,RSA加密利用了電腦無法有效的計算質數分解問題的弱點,使用兩個非常龐大的質數來形成一對金鑰,用其中一個金鑰加密後只能用另一個與其配對的金鑰進行解密,如此一來就可以在本地端儲存一把金鑰叫做私鑰,另一把則對外公布叫做公鑰,當甲要把資訊寄給乙,甲就用乙的公鑰加密這樣該檔案就只有擁有自己私鑰的乙才打得開,甲同時也可以附上一段用自己私鑰加密的訊息,讓乙可以用甲的公鑰來確認發件者的身份,非對稱加密的缺點為加密速度慢。
每一個勒索病毒的加密方式都略有不同,以下的解釋僅限定於WannaCry,目前比較先進的勒索病毒具備了以下幾個特性:可以離線加密、加密速度快讓被害人察覺的可能性降低、讓作者具有解密能力、以及高安全性,這些先進的勒索病毒通常會使用Hybrid Encryption混合了對稱與非對稱加密的優點,將這次的WannaCry 勒索病毒除了以上提到的Windows系統API漏洞外也使用了Hybrid Encryption具備了以上所有的特性,首先每個病毒都事先內建了作者的RSA-2048公鑰(簡稱RSA2),使病毒不需要向作者私服器要求金鑰,讓WannaCry具有離線加密的能力,當毒發時WanaCry會在被害者的本地端建立另一組每個受害者都不同的加密用的RSA公鑰(存放在00000000.pky)與私鑰,加密用私鑰會被病毒用作者的公鑰(RSA2)加密,然後存放在00000000.eky,接下來病毒使用系統內建的Windows Crypt APIs清除記憶體中儲存的加密私鑰,讓被害者無法用其解密,病毒會對每一個要被加密的檔案用隨機生成的獨特AES-128金鑰加密,然後每個檔案的AES加密金鑰會被用剛剛生成的加密用公鑰00000000.pky加密。
由於檔案主要是用AES對稱加密法加密所以具有對稱加密速度快的特性,但是要解密時則需要與00000000.pky對應的私鑰(00000000.eky的解密版)來先解密每個檔案的AES金鑰,要獲取00000000.eky的解密版除非用上面提到的記憶體漏洞,在不花上幾十幾百年暴力破解的情況下就只能付款後把00000000.eky寄給作者,用作者的私鑰(與RSA2對應的金鑰)解密,當然作者會不會真的幫你解密就不知道了。
除了使用以上WanaKiwi工具或付款賭賭看外,另一個有可能救回部分檔案的方式是使用磁碟救援工具,但是根據賽門鐵克研究人員的分析WannaCry會對儲存在桌面(Desktop)、我的文件(My Documents)、以及任何可移除硬碟中的檔案磁區複寫,導致磁碟救援工具失效,不過儲存在以上這三個地點外的檔案在沒被其他東西複寫前是有可以被磁碟救援工具救援的可能性。
參考來源:
https://medium.com/threat-intel/wannacry-ransomware-decryption-821c7e3f0a2b
https://blog.comae.io/wannacry-decrypting-files-with-wanakiwi-demo-86bafb81112d
https://www.wired.com/2017/05/wannacry-flaw-help-windows-xp-victims-get-files-back/
kkk123kkk123kkk wrote:
在國外科技網站看到...(恕刪)
這文章不錯,內容都正確。
我想補充的是,不只需幾十、幾百年的暴力破解,以下舉例。
以 RSA-512 的 512 bits 長度可以表現出質數大約是 10 的 150 次方個,數量超過全宇宙存在的原子!! 注意,是全宇宙喔。
假設 100 億人,每人、每秒產生 100 億個金鑰對,則經過 100 億年所產生的金鑰對,大約可以暴力破解一下 10 的 39 次方次,別提上面講的 10 的 150 次方,而且這還只是用到 512 bits 的長度,更遑論 RSA-2048, 是以 2048 bits 長度的兩個隨機的質數所組成 ...
以數學上看,這是所謂的離散對數問題,除非未來可以發現另外的方法很快來解,要有,保證你就是下一屆諾與貝爾獎同級的 xx 獎得主了,因為諾貝爾沒有數學獎...
內文搜尋

X