首页 > 其他分享 >day22

day22

时间:2023-08-03 22:35:01浏览次数:31  
标签:infolist zip fz filename flag day22 newfile

1.[羊城杯 2022]Unlimited Zip Works

1.打开后发现应该是无规则命名无密码zip套娃,再查看注释,发现有内容,组成的应该是一个新的zip,写脚本批量提取(这里使用的是网上找的)

点击查看代码
import zipfile
name = 'file'
infolist = []
num = 1
newzip=b''
while True:
    fz = zipfile.ZipFile(name + '.zip', 'r')
    for i in fz.namelist():
        if "zip" in i:
            filename = i[0:5]
            # print(filename)
    fz.extractall(pwd=bytes(filename, 'utf-8'))
    num += 1
    name = filename
    for j in fz.infolist():
        infolist.append(j.comment)
        if 'flag.txt' in str(j):
            print('[+] 解压完成')
            list2 = infolist[::-1]
            for k in list2:
                newzip += k
            with open('./newfile.zip','wb') as f:
                f.write(newzip)
                print("[+] 成功生成新压缩包newfile.zip")
            exit(0)

2.得到一堆zip,要的是newfile.zip,打开后会发现没有什么有用信息,都是txt

image

3.010打开,查看一下这个zip的结构,可以发现其中好像还隐藏了一个zip,写代码改一下(直接手撕格式上会有问题)

点击查看代码
from zipfile import ZipFile
data = []

with ZipFile( 'newfile.zip', 'r') as zf:
    for i in zf.infolist():
        data.append(i.extra)

with open('flag.zip','wb') as fz:
    for i in data:
        fz.write(i)

4.得到flag.zip,得到一张jpg,jpg本身没有看到附加文件,但是flag.zip末尾附有另外一个zip

image

5.直接手撕,得到一个zip(如果格式上有问题,可以直接用winrar自带工具修复),得到的f,打开后就是flag

image

标签:infolist,zip,fz,filename,flag,day22,newfile
From: https://www.cnblogs.com/120211P/p/17604668.html

相关文章

  • vue-day22--v-text指令
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><metaname="viewport"content="width=device-width,initial-scale=1.0"/><title>过滤器</title><scripttype=......
  • python基础day22 time和re模块
    time模块(跟时间打交道的模块)表示时间的三种方式1.时间戳:1970年1月1日到现在的秒数2.格式化的时间字符串:2023-01-0111:11:113.结构化时间:它是让计算机看的 导入time模块imporetimetime.time()#时间戳time.sleep(3)#睡眠3秒python中时间日期格式化符号%y......
  • 每日一练 | 华为认证真题练习Day22
    1.基于ACL规则,ACL可以划分为以下哪些类?(多选)A.二层ACLB.用户ACLC.高级ACLD.基本ACL2.管理信息库MIB(ManagementInformationBase)是一个虚拟的数据库,这个数据库保存在NMS上。A.对B.错3.如下图所示,IPSec隧道模式中AH协议认证的范围是?A.1B.2C.3D.44.ARG3系列路由器上的AC......
  • 《渗透测试》安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引用 202
    PHPStorm:专业PHP开发IDEPhpStudy:ApacheMYSQL环境NavicatPremium:全能数据库管理工具 #数据导入-mysql架构&库表列1、数据库名,数据库表名,数据库列名2、数据库数据,格式类型,长度,键等 #数据库操作-mysqli函数&增删改查PHP函数:连接,选择,执行,结果,关闭等参考:https://......
  • day22| 235+701+450
    235.二叉搜索树的最近公共祖先 题目简述:给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。......
  • 代码随想录Day22-Leetcode235. 二叉搜索树的最近公共祖先,701.二叉搜索树中的插入操作,4
    235.二叉搜索树的最近公共祖先题目链接:https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-search-tree/又玩了一天,手又生疏了好多;这道题看了题解,先用公共解法了,之前的题没刷,就给现在留坑了/***Definitionforabinarytreenode.*functionTree......
  • day22
    day22网络编程基本的通信架构基本的通信架构有2种形式:CS架构(Client客户端/Server服务端)、BS架构(Browser浏览器/Server服务端)。网络通信的关键三要素IP:设备在网......
  • day22 打卡235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉
    day22打卡235.二叉搜索树的最近公共祖先701.二叉搜索树中的插入操作450.删除二叉搜索树中的节点235.二叉搜索树的最近公共祖先235题目链接1.递归法。利用二叉搜素......
  • 03_19_JavaWeb||day22_Ajax&Json||day22_Ajax&Json
    今日内容1.AJAX:增强用户体验2.JSON:一种数据格式1.AJAX:概念:ASynchronousJavaScriptAndXML异步的JavaScript和XML异步和同步:客户端和服务器端相互通信的基础上......
  • 《分布式技术原理与算法解析》学习笔记Day22
    哈希与一致性哈希在分布式系统中,哈希和一致性哈希是数据索引或者数据分布的常见实现方式。数据分布设计原则在分布式数据存储系统中,做存储方案选型时,一般会考虑以下因素......