Zip压缩包伪加密原理
Zip壓縮包一般由如下部分組成:
壓縮源文件數(shù)據(jù)區(qū):
壓縮源文件目錄區(qū):
壓縮源文件目錄結(jié)束標(biāo)志:
如何識別真?zhèn)渭用?#xff1a;
1.無加密:
- 壓縮源文件數(shù)據(jù)區(qū)的全局加密標(biāo)志應(yīng)當(dāng)為00 00
- 且壓縮源文件目錄區(qū)的全局方式位標(biāo)記應(yīng)當(dāng)為00 00
2.偽加密:
- 壓縮源文件數(shù)據(jù)區(qū)的全局加密標(biāo)志應(yīng)當(dāng)為00 00
- 且壓縮源文件目錄區(qū)的全局方式位標(biāo)記應(yīng)當(dāng)為09 00
3.真加密:
- 壓縮源文件數(shù)據(jù)區(qū)的全局加密標(biāo)志應(yīng)當(dāng)為09 00
- 且壓縮源文件目錄區(qū)的全局方式位標(biāo)記應(yīng)當(dāng)為09 00
下面以攻防世界的的題目base64stego為例,實(shí)際講解:
如下,開始附件打開要求輸入密碼,使用360解壓縮可以自動破解這種偽加密,但是還是記錄一下偽加密的原理:
1、下圖是本題壓縮源文件的數(shù)據(jù)區(qū)
說明:
50 4B 03 04:這是文件頭標(biāo)記(0x04034B50)
14 03:解壓文件所需 pkware 版本
00 00:全局方式位標(biāo)記(判斷真?zhèn)渭用艿闹匾獦?biāo)志)
08 00:壓縮方式
68 BF:最后修改文件時間
9B 48:最后修改文件日期
FE 32 7D 4B:CRC-32校驗(yàn)
E9 0D 00 00:壓縮后尺寸
B5 1B 00 00:未壓縮尺寸
09 00:文件名長度
00 00:擴(kuò)展記錄長度
2. 下圖是壓縮源文件目錄區(qū):
說明:
50 4B 01 02:目錄中文件文件頭標(biāo)記(0x02014B50)
3F 03:壓縮使用的 pkware 版本
14 03:解壓文件所需 pkware 版本
09?00:全局方式位標(biāo)記(結(jié)合數(shù)據(jù)區(qū)的加密標(biāo)志00 00,可判斷這是偽加密,將09 00 改為00 00即可。)
08 00:壓縮方式
68 BF:最后修改文件時間
9B 48:最后修改文件日期
FE 32 7D 4B:CRC-32校驗(yàn)(1480B516)
E9 0D 00 00:壓縮后尺寸(25)
B5 1B 00 00:未壓縮尺寸(23)
09 00:文件名長度
24 00:擴(kuò)展字段長度
00 00:文件注釋長度
00 00:磁盤開始號
00 00:內(nèi)部文件屬性
20 80 ED 81:外部文件屬性
00 00 00 00:局部頭部偏移量
3、下圖是壓縮源文件目錄結(jié)束標(biāo)志:
說明:
50 4B 05 06:目錄結(jié)束標(biāo)記(0x06054B50)
00 00:當(dāng)前磁盤編號
00 00:目錄區(qū)開始磁盤編號
01 00:本磁盤上紀(jì)錄總數(shù)
01 00:目錄區(qū)中紀(jì)錄總數(shù)
5B 00 00 00:目錄區(qū)尺寸大小
10 0E 00 00:目錄區(qū)對第一張磁盤的偏移量
00 00:ZIP 文件注釋長度
總結(jié)
以上是生活随笔為你收集整理的Zip压缩包伪加密原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中终结一个循环的保留字_【单
- 下一篇: 服务器centos8安装目标只显示U盘,