CRC32绕过RAR密码

时间:2024-05-23 22:13:37

遇到一道题,加密了50位。。。。,所以,**果断舍弃

CRC32绕过RAR密码

 事实上,rar的压缩文档中是提供一个CRC32的值,这个值是文档在压缩之前的CRC32值,相信很多人都知道:每个不同的文件都有唯一的一个CRC32值,就算是可能有重复的,那么在内容为1~49的这个小范围内的txt文本也不会有重复。

CRC32绕过RAR密码

题目提示6位纯数字,上脚本,**。

#!/usr/bin/python
# -*- coding:utf8 -

import binascii
import string
dic=range(0,9)
crc = 0x69C821E0   # 记得要以0x开头
for i in dic :
    for j in dic:
        for p in dic:
            for q in dic:
                for a in dic:
                    for b in dic:
                        s=str(i)+str(j)+str(p)+str(q) +str(a)+str(b)
                        if crc == (binascii.crc32(s) & 0xffffffff):
                            print(s)

得到 flag。

总结:CRC全称为循环冗余校验(Cyclic Redundancy Check, CRC),用来校验文件是否出错但并不能用于自动纠错。

            这种**方式只适用于文本文件较小的情况下,如果很大,不如去**密码。

           基本上不同文件都有唯一的CRC32值,那么在文件内容较小的情况下就更不可能重复了。

神器:

      https://github.com/theonlypwner/crc32

具体使用方法:

python crc32.py reverse 你的crc32密文