本文为看雪论坛优秀文章
看雪论坛作者ID:wx_酸菜鱼
文件头结构、、、、、
组成 长度
文件头标记 4 bytes (0x04034b50)
解压文件所需 pkware 版本 2 bytes
全局方式位标记 2 bytes
压缩方式 2 bytes
最后修改文件时间 2 bytes
最后修改文件日期 2 bytes
CRC-32校验 4 bytes
压缩后尺寸 4 bytes
未压缩尺寸 4 bytes
文件名长度 2 bytes
扩展记录长度 2 bytes
文件名 (不定长度)
扩展字段 (不定长度)
文件数据、、、、、
数据描述符、、、、、
CRC-32校验 4 bytes
压缩后尺寸 4 bytes
未压缩尺寸 4 bytes
组成 长度
目录中文件文件头标记 4 bytes (0x02014b50)
压缩使用的 pkware 版本 2 bytes
解压文件所需 pkware 版本 2 bytes
全局方式位标记 2 bytes
压缩方式 2 bytes
最后修改文件时间 2 bytes
最后修改文件日期 2 bytes
CRC-32校验 4 bytes
压缩后尺寸 4 bytes
未压缩尺寸 4 bytes
文件名长度 2 bytes
扩展字段长度 2 bytes
文件注释长度 2 bytes
磁盘开始号 2 bytes
内部文件属性 2 bytes
外部文件属性 4 bytes
局部头部偏移量 4 bytes
文件名 (不定长度)
扩展字段 (不定长度)
文件注释 (不定长度)
组成 长度
目录结束标记 4 bytes (0x02014b50)
当前磁盘编号 2 bytes
目录区开始磁盘编号 2 bytes
本磁盘上纪录总数 2 bytes
目录区中纪录总数 2 bytes
目录区尺寸大小 4 bytes
目录区对第一张磁盘的偏移量 4 bytes
ZIP 文件注释长度 2 bytes
ZIP 文件注释 (不定长度)
fcrackzip -b -l 6-6 -c 1 -p 000000 passwd.zip
-b 暴力破解
-c 1 限制密码是数字
-l 6-6 限制密码长度为6
-p 000000 初始化破解起点
import string
import binascii
dic = string.ascii_letters+"_"+'0123456789'
crc2=0xEED7E184
crc1=0x9AEACC13
crc3=0x289585AF
def aa(crc):
for i in dic:
for j in dic:
for k in dic:
for p in dic:
for q in dic:
st = i+j+k+p+q
if crc == (binascii.crc32(str(st)) & 0xffffffff):
print st
return
def bb(crc):
for i in dic:
for j in dic:
for k in dic:
for p in dic:
st = i+j+k+p
if crc == (binascii.crc32(str(st)) & 0xffffffff):
print st
return
aa(crc1)
bb(crc2)
aa(crc3)
import binascii
import string
import zipfile
import base64
import sys
crc = int(0xcb0d2242)
i = 0
aaa="0123456789"
for a in aaa:
for b in aaa:
for c in aaa:
for d in aaa:
strings = "亲爱的员工888888,您自助申请的PT邀请服务已受理完成,邀请链接在附件压缩包中,欢迎下次使用。\n\n"+"申请编号:20201025"+a + b + c+ d +"\n"+"ByteCTF Secret PT Server"
strings = strings.encode('utf-8')
print(binascii.crc32(strings))
if crc == ((binascii.crc32(strings))&0xFFFFFFFF):
print(strings)
sys.exit(1)
else:
print(i)
i = i+1
看雪ID:wx_酸菜鱼
https://bbs.pediy.com/user-home-865065.htm
看雪2022KCTF秋季赛官网:https://ctf.pediy.com/game-team_list-18-29.htm
# 往期推荐
球分享
球点赞
球在看
点击“阅读原文”,了解更多!