笔者先前有简单分析过,当电脑遭受到勒索软件感染后,恶意程式会将受害电脑中的档案加密,让使用者无法正常开启档案,基本上遭加密的档案因为无法自行解密,所以将再也无法开启,只能以高价向攻击者购买解密金钥。但是目前已经有 2 款勒索软件“惨剧破解”,使用者可以自行救回档案。
Emsisoft 提出解药
简单地说,勒索软件就是应用非对称式加密技术,将受害电脑中的档案加密,导致档案无法正常开启或读取,会造成资料毁损或程式无法正常执行等情况。由于受害者不知道正确的解密金钥,所以无法自行解密,只能以高价向攻击者购买解密金钥,然而若是受害者没有在期限内交付赎金,解密金钥就会惨遭“撕票”,遭加密的档案将再也无法开启。
不过由于 CrypBoss 系列勒索软件的程式码被泄露在 Pastebin,所以给遭勒索软件感染的电脑一线生机。奥地利资安公司 Emsisoft 的资安研究员 Fabian Wosar 在分析程式码之后,成功破解该勒索软件的加密算法,并开发了解密程式,让遭 CrypBoss 与其衍生勒索软件(如 HydraCrypt、UmbreCrypt)加密的档案,可以解密还原成原始格式。
不过 Fabian Wosar 也表示,因为 HydraCrypt、UmbreCrypt 虽然采用 CrypBoss 相同的算法,但是开发者还是有稍做修改,所以会造成遭感染档案的最后 15Byte 资料无法还原。
好在这些资料大多不太重要,许多档案最后的片段属于缓冲资料,可以透过档案修复软件重建,所以还是有很大的机会,能将档案还原成原本的样貌。
解密软件的操作相当简单,使用者需要准备下列 2 组档案的其中 1 组
1. 遭到加密与未遭加密的相同档案
2. 遭到加密的 PNG 图片档案与任意 PNG 图片档案
只要将任意一组档案拖曳到解密软件的图示上,解密软件就能经过计算得到解密金钥,于是使用者就可以透过这组解密金钥还原被感染的档案。
▲ 将上述任意一组档案拖曳到解密软件的图示上,解密软件就会自动分析。(Source:Emsisoft,下同)
▲ 经过计算之后可以得到解密金钥,Emsisoft 建议使用者可以先尝试用该金钥解密少数被感染的档案,确认无误后再将所有档案还原。
解密软件下载位置:
http://emsi.at/DecryptHydraCrypt
注意:该解密软件与说明皆取自 Emsisoft 官方部落格,笔者尚未亲自测试。
再从原理分析,还是可行!
之前笔者分析勒索软件难以破解的主要原因,就是因为不知道勒索软件的源代码与所采用的算法,如今因为已经从源代码得知算法,所以就可以推算出勒索软件所使用的加密金钥与解密金钥。
虽然根据柯克霍夫原则第二条“系统内不应含任何机密物,即使落入敌人手中也不会造成困扰”,设计严谨的勒索软件不应该会因源代码泄露,就能被反推、制作出解密软件。
但是笔者猜想,其中还有个关键因素,就是勒索软件一定会将金钥资讯回传给攻击者,这样才能向受害者兜售解密金钥。解密软件很有可能就是从这个切入点下手,因此才能推算出正确的解密金钥。
(本文由 T客邦 授权转载;首图来源:Flickr/Don Hankins CC BY 2.0)