使用“已知明文攻击”破解加密

2019/02/13 22:48
阅读数 496

0x01、了解已知明文攻击的含义

转自:http://www.sohu.com/a/274916484_704736

“已知明文攻击”的概念和原理

我们为zip压缩文件所设定的密码,首先被转换成3个32bit的key,所以可能的key的组合是2^96,这是个天文数字,如果用暴力穷举的方式是不太可能的,除非你的密码比较短或者有个厉害的字典。

压缩软件用这3个key加密所有包中的文件,也就是说,所有文件的key是一样的,如果我们能够找到这个key,就能解开所有的文件。

如果我们找到加密压缩包中的任意一个文件,这个文件和压缩包里的文件是一样的,我们把这个文件用同样的压缩软件同样的压缩方式进行无密码的压缩,得到的文件就是我们的Known plaintext(已知明文)。用这个无密码的压缩包和有密码的压缩包进行比较,分析两个包中相同的那个文件,抽取出两个文件的不同点,就是那3个key了,如此就能得到key。两个相同文件在压缩包中的字节数应该相差12个byte,就是那3个key了。虽然我们还是无法通过这个key还原出密码,但是我们已经可以用这个key解开所有的文件,所以已经满足我们的要求了,毕竟对我们而言,得到解压后的文件比得到密码本身更重要。

 也就是说我们需要找到压缩包中的无加密文件来解密加密的文件,那么怎么找到这样的文件呢?

0x02、寻找“已知明文”

“已知明文”找到其实也就相当于找到了密码,基本就能攻击成功,所以这一步是关键。

使用WinRAR打开加密压缩包文件,虽然无法全部打开,但是能看到包中的文件列表以及文件属性,包括:文件名称、文件大小、压缩后大小、修改日期、CRC值等。

“已知明文”很可能就是那个属性相近,CRC值相同的文件(很多“已知明文”是不起眼的ppt、文本文件等)

0x03、利用ARCHPR进行攻击

将“已知明文”文件单独压缩到一个压缩包里,在ARCHPR中填充对应路径后进行攻击

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部