博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zip伪加密解法
阅读量:3903 次
发布时间:2019-05-23

本文共 1408 字,大约阅读时间需要 4 分钟。

前言:做过几个伪加密的题,总结一下。先说说理论,再说说题。

 

背景

首先,我们来看zip文件头协议。这里以中文资料为证,但是仍然建议大家去阅读,虽然英文读起来有些困难。

一个 ZIP 文件由三个部分组成:

压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志 

 

十六进制标志 

 

  • 压缩源文件数据区:

50 4B 03 04:这是头文件标记(0x04034b50) 

14 00:解压文件所需 pkware 版本 
00 00:全局方式位标记(有无加密) 
08 00:压缩方式 
5A 7E:最后修改文件时间 
F7 46:最后修改文件日期 
16 B5 80 14:CRC-32校验(1480B516) 
19 00 00 00:压缩后尺寸(25) 
17 00 00 00:未压缩尺寸(23) 
07 00:文件名长度 
00 00:扩展记录长度 
6B65792E7478740BCECC750E71ABCE48CDC9C95728CECC2DC849AD284DAD0500 

 

  • 压缩源文件目录区: 

50 4B 01 02:目录中文件文件头标记(0x02014b50) 

3F 00:压缩使用的 pkware 版本 
14 00:解压文件所需 pkware 版本 
00 00:全局方式位标记(有无加密,这个更改这里进行伪加密,改为09 00打开就会提示有密码了) 
08 00:压缩方式 
5A 7E:最后修改文件时间 
F7 46:最后修改文件日期 
16 B5 80 14:CRC-32校验(1480B516) 
19 00 00 00:压缩后尺寸(25) 
17 00 00 00:未压缩尺寸(23) 
07 00:文件名长度 
24 00:扩展字段长度 
00 00:文件注释长度 
00 00:磁盘开始号 
00 00:内部文件属性 
20 00 00 00:外部文件属性 
00 00 00 00:局部头部偏移量 
6B65792E7478740A00200000000000010018006558F04A1CC5D001BDEBDD3B1CC5D001BDEBDD3B1CC5D001 

  • 压缩源文件目录结束标志: 

50 4B 05 06:目录结束标记 

00 00:当前磁盘编号 
00 00:目录区开始磁盘编号 
01 00:本磁盘上纪录总数 
01 00:目录区中纪录总数 
59 00 00 00:目录区尺寸大小 
3E 00 00 00:目录区对第一张磁盘的偏移量 
00 00:ZIP 文件注释长度
 

 

练个题目

  • [JarvisOj](Basic)Help!!

改后缀为zip,随便找个16进制查看器看一下

很明显先查一下是不是伪加密,看到文件头是:504B030414000000 所以不是在这里,搜索一下目录中文件文件头标记 50 4B 01 02 看到:

把09改成00,另存。

解压得到word.doxc

 

里面只能看到一个png,用Stegsolve查了没什么东西。

所以考虑一下是不是还有隐藏的东西,查一下doc的16进制

 

可以看到有两个image1.png和上图显示的image2.png

所以binwalk分离一下:python .\binwalk.py -e .\word.docx

 

得到了第二张图:

 

总结:所以zip伪加密的套路就是这样,通过压缩源文件目录区50 4B 01 02 1F 00 14 00 0奇/偶  00 来表示是否加密

 

 

参考: 

转载地址:http://gjoen.baihongyu.com/

你可能感兴趣的文章
Hosting an ActiveX Control in WPF
查看>>
WPF FlowDocuments (1) – Images, Shapes and Tables
查看>>
Hosting Office in a WPF Application
查看>>
WPF Diagramming. Drawing a connection line between two elements with mouse.
查看>>
centering-text-on-a-wpf-shape
查看>>
解决打开word很慢
查看>>
Hosting a Win32 Control in WPF 在wpf中使用win32 控件
查看>>
WPF调用Win32程序的方法
查看>>
Word无法正常显示图片
查看>>
linux matlab error
查看>>
fedora13下weka 界面中文变成小方块
查看>>
手把手教你怎么把Endnote文献数据库导入到JabRef
查看>>
国际版(英文版)Skype使用国内卡打电话(转)
查看>>
使用Synaptic(新立得)安装totem出现如下错误
查看>>
mac安装latex
查看>>
mac 苹果如何才能实现剪切文件
查看>>
Java JDBC-ODBC 连接 Access 数据库 中文乱码解决
查看>>
sql insert 变量
查看>>
Java 从Access数据库读取数据,插入到JavaDB数据库表中
查看>>
在Rprofile.site文件中设置R的镜像站点
查看>>