勒索软件加密密钥

信息安全 加密 勒索软件
2021-09-04 16:16:28

诸如最近的wannacry 变种之类的勒索软件将用于加密受害者磁盘上的文件的密钥存储在哪里?

这是在程序本身中硬编码的吗?还是调用服务器来获取密钥?如果是其中任何一种情况,应用程序可能会被逆向工程或流量嗅探以获取密钥并解密文件,那么为什么不是这种情况呢?还是病毒每次感染都会生成一个密钥?

1个回答

所有勒索软件的实现都是不同的,但在大多数情况下,使用硬编码密钥或使用易于猜测或可重现的密钥生成方法等特别愚蠢的变体已被淘汰并被更强大的变体取代。

具体来说,对于wannacry,每次感染都会在被感染的机器上创建一个新的RSA 密钥对。然后使用恶意软件中随附的公钥对来自该对的私钥进行加密,该公钥是wannacry作者拥有的密钥对的一部分。

然后使用新的感染特定公钥加密使用 CSPRNG 生成的 AES 密钥,并为每个加密的文件生成一个新的 AES 密钥。

据推测,一旦您支付赎金,恶意软件作者就会使用他们的私钥(公钥对的另一半硬编码到恶意软件中)来解密您的私钥,然后解密工具可以使用该私钥来解密AES 密钥,然后是文件。