一家公司有 1000 万个文件,所有勒索软件都加密了,但该公司备份了所有这 1000 万个文件,而且几乎所有文件都没有改变。除了其他破解算法之外,将所有这些文件与其未加密的备份进行比较是否有助于发现密钥?
勒索软件加密密钥是否可以通过比较加密和未加密文件得出?
您建议的是已知明文攻击,是的,如果加密算法足够糟糕,它可以用来发现用于加密数据的一个或多个密钥,具体取决于所使用的密码。我说密钥是因为某些勒索软件对每个文件使用单独的密钥,因此破解一个密钥只会给您该文件的密钥。
实际上,这不太可能有用,因为除非勒索软件加密方案存在某种缺陷(弱密码、较差的伪随机数据源、小密钥等),或者您可以访问大量解密计算资源,那么您的曾孙可能只是现场看到其中一个文件被破解。
除了其他破解算法之外,将所有这些文件与其未加密的备份进行比较是否有助于发现密钥?
附录:通常的恶意软件操作
一旦激活,恶意软件将尝试联系其命令和控制网络,并使用编译的公钥(CCC 拥有私钥)或尽可能安全地生成公钥/私钥对,将私钥发送到 CCC,并删除其本地副本。
现在恶意软件有一个公钥。然后,它要么生成一个加密密钥,要么为它攻击的每个文件生成一个加密密钥,并用公钥加密加密密钥。通过这种方式,它可以非常快速地使用对称算法来加密文件,同时保持解密密钥受到更安全但速度慢得多的非对称算法的保护。
恶意软件现在创建目标文件的加密副本,然后尽最大努力销毁原始文件的所有副本(例如卷影副本)。最后用与原始名称相同的名称重命名加密副本,加上一些扩展名。
如果不赎回私钥并排除程序员方面的错误(例如,他们没有在本地安全地删除私钥,并且可以恢复),就没有机会获得对称密钥。
仍然可以尝试强制加密的对称部分,知道解密文本的样子和加密文件的结构(类似于 [32 BYTES SIGNATURE][4K OF ASYM-ENCRYPTED KEY][SYM-ENCRYPTED DATA ])。这就是 KPA 可能出现的地方。但这需要对称加密是 KPA 易受攻击的。
理论
是的……不。您建议的是“已知明文攻击”(KPA)。
但是,即使所有文件都使用相同的密钥加密(根本不是给定的),成功攻击强大的、正确实施的算法所需的时间——正如大多数最近的恶意软件所采用的——是天文数字。实际上,您将运行暴力解密,使用已知的明文来确认密钥的正确性以及所有文件都相同的事实(您只会在最后知道这一点。直到您破解加密对于第一个文件,您永远不会知道您是否获得了对 100% 文件的访问权限,或者仅获得了 0.0000001% 的访问权限)。
因此,您可以从比较中获取密钥,但您不会直接从中派生密钥(只有在算法或其实现存在缺陷时才能这样做)。正如@Kevin 观察到的那样,据说这种算法可以抵抗已知的明文攻击。
实践
如果您有备份,请从中恢复所有内容。可以使用勒索软件工具(即投降和支付)来解密仍处于加密状态且没有足够当前副本可用的文件,或者您可以尝试几种工具来尝试利用某些勒索软件实现中的已知缺陷来暴露密钥,以某种可恢复的形式保留原始数据,或允许快捷键中的快捷键。
请记住,一些勒索软件作者也支持其中一些所谓的“工具”。至少,应该使用余额有限的有上限、可追溯的信用卡(例如预付卡)购买它们。
进一步的考虑
我想您已经得出结论,一个用户帐户能够访问所有这 1000 万个文件,而这些文件掌握在没有足够知识来意识到正在发生可疑事情的人手中——您不会用弹指间来加密 1000 万个文件- 是一件非常糟糕的事情。
迄今为止,这种恶意软件几乎没有攻击媒介,它们几乎都是基于利用不必要的用户权限。删除或阻止这些权限将有效地清除大多数此类恶意软件,并且在大型组织中审查本地和组安全策略可能是一个好主意(另外,对BYOD 策略进行一些限制/检查。我听说有传言说一些恶意软件变种会在加密之前隐身并等待,这取决于他们能够“看到”多少文件/网络共享。我无法验证这一点,但我认为这个想法并不难实现,即使它不是真的现在 并且在攻击中需要一种不同的方法——去居民而不是直接逃跑——它很可能在未来成为现实)。
流量分析 - 只是对各个工作站的带宽进行监管 - 应该会提醒某些事情正在进行中,甚至可以查明罪魁祸首,即使这对于很多文件来说已经太迟了。
此外,如果大多数文件没有更改,则需要更频繁的增量备份。如果只有 1% 的文件发生了变化,这意味着使用相同的资源,您可以以高两个数量级的频率运行增量备份(实际上并不是那么简单,但仍然如此)。
实际上,不,它没有。加密早已超过了通过已知明文等方法进行逆转的程度。这不仅仅是将您可以找到的最大文件与加密版本进行异或以获取密钥流的问题,这不是当今加密的工作方式。勒索软件使用不受这种简单解决方案约束的标准高强度加密算法,例如 RSA。
看看它们在过去几年中的变化实际上是非常有趣的。
您可以做的是使用原始文件的样本来识别需要从备份中恢复的文件,从而确定您无法恢复多少永久丢失的文件。每个加密病毒变种都有自己的签名。其中一些以特定方式更改文件名,一些具有您可以读取的标题以识别哪些文件被破坏,等等。
当然,备份的主要用途是让您能够恢复。不要依赖卷影副本,如今大多数勒索软件都会将它们作为过程的一部分删除。在一天中拥有多个可以用作参考的点确实很有帮助。