首页 > 其他分享 >ZIP明文攻击

ZIP明文攻击

时间:2022-10-30 14:24:15浏览次数:65  
标签:zip ZIP 攻击 明文 flag bkcrack txt

ZIP明文攻击


免责声明

本文档仅供学习和研究使用,请勿使用文中的技术源码用于非法用途,任何人造成的任何负面影响,与本人无关.


相关工具

  • archpr(Advanced Archive Password Recovery)
  • keyunluo/pkcrack
  • kimci86/bkcrack
    wget https://github.com/kimci86/bkcrack/releases/download/v1.3.1/bkcrack-1.3.1-Linux.tar.gz
    tar -zxvf bkcrack-1.3.1-Linux.tar.gz
    cp bkcrack-1.3.1-Linux/bkcrack /usr/sbin/bkcrack
    bkcrack -h
    

点击关注,共同学习!
安全狗的自我修养

github haidragon

https://github.com/haidragon

ZIP 的加密算法

ZIP 的加密算法大致分为两种 ZipCrypto 和 AES-256, 各自又分 Deflate 和 Store。

  • ZipCrypto Deflate
  • ZipCrypto Store
  • AES-256 Deflate
  • AES-256 Store

ZipCrypto 算是传统的 zip 加密方式。

只有使用 ZipCrypto Deflate /Store 才可以使用 ZIP 已知明文攻击进行破解。

AES256-Deflate/AES256-Store 加密的文件不适用于明文攻击。


ZIP 明文攻击的条件

至少已知明文的 12 个字节及偏移,其中至少 8 字节需要连续。

明文对应的文件加密方式为 ZipCrypto Store


比较特殊的明文攻击案例

在知道目标文件部分连续明文的情况下,去爆破密钥

例如 flag.txt

flag{4d6ba874-881d-4c04-b7c3-5e974b81e86a

加密成 flag.zip 加密时注意使用 Deflate 压缩方法,ZipCrypto 加密算法

给出部分连续明文

flag{4d6ba874-881d-4c0

采用 bkcrack 进行爆破

echo "flag{4d6ba874-881d-4c0" > plain1.txt
bkcrack -C flag.zip -c flag.txt -p plain1.txt

# 爆破得到zip的密钥如下
1b10db88 4b87405b 0a41939c

利用密钥进行解密

bkcrack -C flag.zip -c flag.txt -k 1b10db88 4b87405b 0a41939c -d flag1.txt

cat flag1.txt

如果是已知部分且不连续可以采用 -o 偏移量参数组合使用

bkcrack -C flag.zip -c flag.txt -p plain1.txt -o 1 -x 29 37346636

# -c 提取的密文部分
# -p 提取的明文部分
# -x 压缩包内目标文件的偏移地址  部分已知明文值
# -C 加密压缩包
# -o offset  -p参数指定的明文在压缩包内目标文件的偏移量

Source & Reference

点击关注,共同学习!
安全狗的自我修养

github haidragon

https://github.com/haidragon

标签:zip,ZIP,攻击,明文,flag,bkcrack,txt
From: https://www.cnblogs.com/haidragon/p/16841203.html

相关文章

  • 解压文件时报错gzip: stdin:not in gzip format
     tar-vxfjexus-5.8.2-x64.tar.gzgzip:stdin:notingzipformattar:Childreturnedstatus1tar:Errorisnotrecoverable:exitingnow查询 原因:filejexus-5.8.2......
  • 一次获取明文
    一次获取明文昨天进入c盘拿到flag后,发现了第六关的猫腻,我重新登录远程桌面。发现在c盘文件下但是打不开,因为有密码保护,并且根据提示知道,文件的密码是管理员administrator的......
  • 2.14 解压压缩包 zipobj.extract() zipobj.extractall()
    解压压缩包  zipobj.extract()    #解压压缩包的某个文件importzipfilewithzipfile.ZipFile('我的文件夹.zip','r')aszipobj:zipobj.extract('......
  • unzip命令
    一、命令介绍unzip命令是用于.zip格式文件的解压缩工具。unzip命令将列出、测试或从zip格式存档中提取文件。二、命令选项unzip[选项][参数][文件]选项说明-c将解......
  • 什么是cc攻击,如何防御cc攻击
    当我们访问一个网站时,如果网站页面越简单,访问速度越快,页面越漂亮,加载速度就越慢,因为要加载更多东西,服务器压力也会比较大。cc攻击就是利用这种弱点,使用大量代理服务器,对网站......
  • py备份文件和zip 加密
    #!/usr/bin/python3.6#-*-coding:UTF-8-*-fromzipfileimportZipFileimportosimportdatetimeimportloggingLOG_FORMAT="%(asctime)s%(name)s%(levelname)s%......
  • lambda + zip实现多层嵌套列表
    1.可滑动的序列自定义一个函数根据参数n的值,变成对应个元素的容器(zip)"""listvar=[1,2,3,4,5,6,7,8,9]n=2listvar=[[1,2],[3,4],[5,6],[7,8]]n=3listvar=[......
  • 为什么软件供应链攻击愈演愈烈?
    你可能或多或少在头条新闻中有看到过或了解过和软件供应链攻击相关的信息,比如2020年的SolarWinds事件,再比如2021年的Kaseya事件(点击查看关联文章)。如果到目前为止你对......
  • 安装Mysql-zip安装
    一、安装1、下载到mysql官网http://dev.mysql.com/downloads/mysql/下载mysql注:msi的是安装版2、解压解压到想安装的目录下,我的是D:mysql-5.7.13-winx643、配置my.......
  • weka遇到java.util.zip.ZipException: invalid LOC header (bad signature)
    这是因为有jar包没有下载完全引起的,需要将相应包重新下载。到maven的reposity目录下搜aether*****in-progress(可以搜aether或者in-progress都行)文件,如果存在,把这个文件对......