.zip格式和zip伪加密

时间:2022-09-20 22:34:19

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 文件注释长度

1、自己简单做一个zip压缩包,正常的压缩,压缩包内有三个TXT文档。

.zip格式和zip伪加密

这时候的压缩包可以正常的解压,不用输入密码

2、将这个正常的压缩包放进winhex里面,看看的是什么效果

.zip格式和zip伪加密

第一个红框的地方是压缩源文件数据区:

50 4B 03 04 是zip头文件标记;

14 00 是解压文件所需要的PK版本;

00 00 是全局方式标记(看是否加密,可以就看第一个00,第二字节00可以忽略。00表示无加密,01表示有加密。不过只要是偶数就是无加密,例如00,02,04等,奇数就是有加密,例如01,03,09等)

接下来的三个红框就是压缩文件目录区,分别为三个文件:

50 4B 01 02 是目录中文件头标记

14 00 压缩使用的 pkware 版本

14 00 解压文件所需 pkware 版本

00 00 是全局方式标记(看是否加密,可以就看第一个00,第二字节00可以忽略。00表示无加密,01表示有加密。不过只要是偶数就是无加密,例如00,02,04等,奇数就是有加密,例如01,03,09等)

最后那个红框就是压缩源文件目录结束标志。

接下来制作一个伪加密包

用winHex打开压缩包

修改如下数据,把1和2进行伪加密

.zip格式和zip伪加密

保存后打开压缩包

.zip格式和zip伪加密

发现1和2后面加上了一个星号,表示加密文件。

我们解压时,发现需要输入密码了。

.zip格式和zip伪加密

这就是伪密码了吧,若是遇到压缩包解压需要密码的时候先放在WINHEX中看看是不是伪加密,只要对比两部分的全局方式位标记,若第二部分是09 00,那就把09修改为00就好

或者
使用ZipCenOp去伪加密,解密命令java -jar ZipCenOp.jar r xxxx.zip         加密命令java -jar ZipCenOp.jar e xxxx.zip

.zip格式和zip伪加密的更多相关文章

  1. Linux 解压/压缩xxx.zip格式(unZip Zip的安装和使用)

    Linux系统没有自带的压缩解压工具:需要我们自己安装:当压缩包为.zip格式时,需要安装zip包 1.apt-get安装: apt-get install zip 2.yum安装: yum inst ...

  2. 使用httpclient对zip格式的响应数据解压

    HttpResponse response = httpClient.execute(httpPost); //对zip进行解压 response.setEntity(new GzipDecompre ...

  3. zip伪加密文件分析(进阶版)

    作者近日偶然获得一misc题,本来以为手到擒来,毕竟这是个大家都讨论烂了的题,详情访问链接http://blog.csdn.net/ETF6996/article/details/51946250.既 ...

  4. ZIP文件伪加密

    题目给出图片,那当然是从图片下手啦! 首先下载图片,在Linux系统下用binwalk工具打开,果然不出所料,里面藏有文件! 用dd把它分解出来! 'txt' 格式的文件提取出来!会看到一个Zip压缩 ...

  5. Zip伪加密 破解ZIP密码

    ZIP是一种相当简单的分别压缩每个文件的存档格式.分别压缩文件允许不必读取另外的数据而检索独立的文件:理论上,这种格式允许对不同的文件使用不同的算法.不管用何种方法,对这种格式的一个告诫是对于包含很多 ...

  6. ZIP伪加密(deprecated)

    ZIP伪加密 经过伪加密的apk,改成zip格式打开会发现里面的文件都经过了加密. APK实际上是Zip压缩文件,但是Android系统在解析APK文件时,和传统的解压压缩软件在解析Zip文件时存在差 ...

  7. zip伪加密

    简单的话来阐述 zip伪协议的意思是说本来不需要密码的zip文件然后通过修改标志位,然后就可以达到有密码的效果对吗?但是他实际是没有密码. 一个 ZIP 文件由三个部分组成: 压缩源文件数据区+压缩源 ...

  8. 破解压缩包的几种方式(zip伪加密 爆破 CRC32碰撞 已知明文攻击)

    zip伪加密 zip文件是由3部分组成,详见文末 压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志 在压缩源文件数据区有个2字节的 全局方式位标记 ,在压缩源文件目录区也有个2字节的 全局方 ...

  9. zip压缩包伪加密技术

    一个 ZIP 文件由三个部分组成: 压缩源文件数据区 + 压缩源文件目录区 + 压缩源文件目录结束标志 压缩源文件数据区: 50 4B 03 04:这是头文件标记(0x04034b50) 14 00: ...

随机推荐

  1. MYSQL 基本SQL语句

    复制表结构 CREATE TABLE 新表 SELECT * FROM 旧表 where 1=2 复制表结构和数据CREATE TABLE 新表 SELECT * FROM 旧表 查询重复数据: se ...

  2. 用DateTime的ParseExact方法解析特殊的日期时间

    今天遇到一个特别的需求,需要从下面的字符串中转换成一个DateTime对象: [07-13 15:50:42] 主要问题是这个时间不是标准的时间,而是自定义的格式,即开头是月-日,然后是时间. 使用最 ...

  3. Android 线程更新UI报错 : Can't create handler inside thread that has not called Looper.prepare()

    MainActivity中有一个按钮,绑定了save方法 public void save(View view) { String title = titleText.getText().toStri ...

  4. Log4j 配置 的webAppRootKey参数问题

    为了让Web项目中的Spring 使用Log4j做如下配置: 1.在web.xml中添加如下内容: <!--如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的&q ...

  5. Android 中使用自定义字体的方法

    1.Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace 2.在Android中可以引入其他字体 . <?xml version="1.0 ...

  6. JQuery总结:选择器归纳、DOM遍历和事件处理、DOM完全操作和动画 (转)

    JQuery总结:选择器归纳.DOM遍历和事件处理.DOM完全操作和动画 转至元数据结尾 我们后台可能用到的页面一般都是用jquery取值赋值的,发现一片不错的文章 目录 JQuery总结一:选择器归 ...

  7. MAC OX 配置JDK环境变量

    大家在windows里面配置JDK环境变量很容易,但是如果要在mac里面配置JDK环境变量和windows里面有所不同,具体如下: 第一: mac OS里面自带jdk,不过是1.6的版本,现在很多人使 ...

  8. 201521123012 《Java程序设计》第十四周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 1.1建立数据库,将自己的姓名.学号作为一条记录插入.(截图, ...

  9. MYSQL数据库常用操作命令

    1.连接MYSQL: mysql -h 主机地址 -u 用户名 -p 2.修改密码: 安装后第一次登录使用: mysqladmin (因为没有初始密码) 修改原密码: mysqladmin -u ro ...

  10. Asp&period;net core Identity &plus; identity server &plus; angular 学习笔记 &lpar;第五篇&rpar;

    ABAC (Attribute Based Access Control) 基于属性得权限管理. 属性就是 key and value 表达力非常得强. 我们可以用 key = role value ...