CTF-MISC-压缩包解密

本文详细介绍了压缩包文件头的结构(RAR和ZIP),以及压缩包解密的几种方法,包括暴力破解、字典破解、掩码加密、明文攻击和CRC32碰撞。着重提到了ARCHPR工具在解密过程中的应用。
摘要由CSDN通过智能技术生成

一、压缩包文件格式

1、RAR文件头格式

组成:标记块、压缩文件头块、文件头块及结尾块

开头:

十六进制编辑器打开:0x526172211A070100

记事本打开:Rar!

2、ZIP文件头格式

十六进制编辑器打开:0x504B0304

记事本打开:PK

3、压缩包文件尾问题

压缩包文件尾部经常可能会被做手脚,要看看文件尾是否有额外的信息

二、压缩包解密方式

首先压缩包解密那肯定是要真加密,如果是伪加密那我们就没有进一步爆破的必要了,所以我们拿到加密压缩包,先判断是否为伪加密,可以节省时间

伪加密判断

99f199642d0048818833b945c02d85ef.png

若(0000h,6)该位为奇数,则为真加密。若为偶数且打开压缩包需要密码则为伪加密

 

判断为是真加密后,那我们就开始进入到解密了

其解密方法有五种,分别是:暴力破解,字典破解,掩码破解,明文破解,CRC32碰撞。

首先我们要用到我们的爆破神器——ARCHPR

先对ARCHPR的使用做个简单介绍吧,其实还是很简单的,主要很多人可能困于英文

84d13bd6cea645dd88735db26268c080.png

2d379fcc39d24c14906fe4fffa34afdd.png

1、暴力破解:

暴力可以解决一切加密,但是要破解到什么时候就不好说了,一般当题目没有了其他破解提示,我们再选择暴力,建议密码长度先6位再8位,密码字符类型先数字后大小写后特殊字符。

2、字典破解

即我们要的密码在一个文件中以下面这样的形式存在,我们要从这个密码的集合中找到我们所需的正确密码

2485ff62e3d740ffa99e41fb7c48ccc8.png

3、掩码加密

通过定义密码的特征和约束条件,逐个尝试不同的字符组合来解密

来个简单的例子

e12d47ec1671403fab52bf1bcf2bbbfd.png

题目给你了密码的约束条件,然后进行破解

4、明文攻击

同一个ZIP压缩包里的文件都是使用同一个密码加密的,所以可以用已知的文件推测出密钥并解密压缩包,例如下:

d414a3d523214702ad63c50208c8b886.png

我们得到一个压缩包,里面有flag文件但是加密,而另一个压缩包里的加密文件,我们以及在压缩包外得到,那么就可以使用已经得到的压缩包里的文件,去破解压缩包里的其他文件。

5、CRC32碰撞

每个文件都有一个CRC(循环冗余校验)32值,即使数据中一个bit发生变化,也会导致CRC32值不同,因此通过不断生成字符串,使其CRC32值和题目文件的CRC32值进行对比,不需要压缩包密码就可以得到文件内容。

简单例子,假如文件有三个字节且知道CRC32的值为0xEC40CA13,可以写下面这个python脚本

829ed6467b35401e958503bde0a05bc1.png

 

 

  • 24
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值