(1) CTB-Locker的作者首先生成一個(gè)公私鑰對(duì)。公鑰保存在前面說的釋放出來的配置文件中,私鑰保存在服務(wù)器上. 這里我們把這個(gè)公鑰稱為master public key,私鑰稱為master private key。 (2) 在對(duì)每一個(gè)文件加密的時(shí)候會(huì)產(chǎn)生一個(gè)會(huì)話公私鑰對(duì),當(dāng)然使用的是ECDH算法。私鑰生成的算法是對(duì)文件的時(shí)間,系統(tǒng)運(yùn)行時(shí)間等計(jì)算SHA256,這里我們稱為session private key。然后使用ECDH算法生成公鑰即session public key.之所以稱為會(huì)話公私鑰是因?yàn)槊恳粋(gè)文件的公私鑰對(duì)都是和文件自身時(shí)間以及系統(tǒng)運(yùn)行時(shí)間有關(guān)的。 (3) 根據(jù)ECDH算法,我們知道 sessionshared secret=ECDH(masterpublic key, session private key)=ECDH(session public key,master private key). 在計(jì)算的時(shí)候要使用會(huì)話私鑰和主公鑰計(jì)算出sessionshared secret,然后對(duì)session shared secret計(jì)算sha256作為AES的密鑰。雖然我們可以獲取到主公鑰但是會(huì)話私鑰是不保存的,唯一的解密方法是通過主私鑰和會(huì)話公鑰計(jì)算出session shared secret。會(huì)話公鑰是保存在加密的文件里的。
計(jì)算出會(huì)話公鑰的代碼如下:
其中var_104是一個(gè)長度為0×20的緩沖區(qū),第一個(gè)字節(jié)為9其余的字節(jié)為0。這個(gè)值就相當(dāng)于ECDH算法中愛麗絲與鮑伯協(xié)定使用的g值。
接著就是使用會(huì)話私鑰和主公鑰計(jì)算出來sessionshared secret,然后對(duì)其計(jì)算sha256并將其作為AES加密的KEY。需要強(qiáng)調(diào)的是這里面會(huì)話私鑰是不保存的。相關(guān)代碼如下:
圖中的najzljf_data就是解密出來的配置文件的內(nèi)容。
一句話總結(jié):要想解密文件只能通過主私鑰和保存在文件中的會(huì)話公鑰計(jì)算出來session shared secret,再計(jì)算一下sha256才能得到AES的KEY。除此外別無他法。
國產(chǎn)工具PKAV HTTP Fuzzer滲透測試助手最新發(fā)布
閱讀FireEye:11.2%的移動(dòng)APP仍存在FREAK漏洞
閱讀惠普漏洞:惠普ArcSight企業(yè)安全系列產(chǎn)品曝高危安全漏洞
閱讀騰訊、360各顯神通,分別秒殺IE、Flash、PDF項(xiàng)目
閱讀蘋果Mac OS X系統(tǒng)被發(fā)現(xiàn)存在DLL劫持漏洞
閱讀金融行業(yè)平臺(tái)的針對(duì)性防御滲透測試
閱讀D-Link(友訊)路由器曝遠(yuǎn)程文件上傳及命令注入漏洞(已發(fā)布安全更新)
閱讀Win10將使用P2P進(jìn)行系統(tǒng)更新,引發(fā)安全擔(dān)憂
閱讀美國最大的無卡ATM網(wǎng)絡(luò)即將推出,從此告別刷卡!
閱讀谷歌應(yīng)用漏洞泄漏超過28萬條私人WHOIS數(shù)據(jù)
閱讀使命召喚、魔獸世界、英雄聯(lián)盟……專攻游戲的勒索軟件TeslaCrypt
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)