zoukankan      html  css  js  c++  java
  • zip伪加密

    简单的话来阐述

      zip伪协议的意思是说本来不需要密码的zip文件然后通过修改标志位,然后就可以达到有密码的效果对吗?但是他实际是没有密码。


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

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

      详情:http://blog.csdn.net/wclxyn/article/details/7288994

    实例说明(http://ctf5.shiyanbar.com/stega/sim.jpg)

    分割出来文件以后有个zip

    用Winhex工具打开查看其十六进制编码,图如下:

    a.压缩源文件数据区:

    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

    b.压缩源文件目录区:

    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

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

    50 4B 05 06:目录结束标记 
    00 00:当前磁盘编号 
    00 00:目录区开始磁盘编号 
    01 00:本磁盘上纪录总数 
    01 00:目录区中纪录总数 
    59 00 00 00:目录区尺寸大小 
    3E 00 00 00:目录区对第一张磁盘的偏移量 
    00 00 1A:ZIP 文件注释长度

    将09改为00,再打开txt即可

  • 相关阅读:
    setValue 和 setObject 的区别
    沙盒(SandBox)
    刷题篇--热题HOT 52-60
    刷题篇--热题HOT 31-40
    刷题篇--热题HOT 41-51
    8. AIO
    7. NIO与零拷贝
    6. NIO三核心(Selector)
    5. NIO三核心(Buffer、Channel)
    刷题篇--热题HOT 21-30
  • 原文地址:https://www.cnblogs.com/xishaonian/p/7713657.html
Copyright © 2011-2022 走看看