[MRCTF2020]千层套路

2023-11-18

[MRCTF2020]千层套路

题目地址 : https://buuoj.cn/challenges#[MRCTF2020]%E5%8D%83%E5%B1%82%E5%A5%97%E8%B7%AF
在这里插入图片描述

解压压缩包,发现是密码竟然是压缩包名称,再根据题目,tnnd又是套娃题

在这里插入图片描述

import zipfile

file_path = input('path : ')#压缩包路径
path = "/Users/mzq/Desktop/ctf/buuctf/misc/[MRCTF2020]千层套路/"
# path = file_path[0:len(file_path)-len(file_path.split('//')[-1])]
print(path)
n = 0
s2 = ""

def extract():
    i = file_path.split('\\')[-1]#递归解压压缩包名称
    print(i)


    str1 = ''
    for x in range(1000):
        ss = i[:i.find(".")]
        print(ss)

        zpf = zipfile.ZipFile( path+ss + ".zip")
        list = zpf.namelist()
        #print(list)
        print(x + 1)
        for f in list:

            #print(f)
            passwd = ss
            #passwd = f.split('.')[0]#压缩包密码
            #print(passwd)
            zpf.extract(f, path, bytes(passwd.encode('utf-8')))
            if 'zip' in f:
                print(path, passwd)
                i = str(f)


extract()

在这里插入图片描述
最后解出来了一个qr.zip
在这里插入图片描述

qr.zip解压后得到qr.txt ,里面都是一些像素值,或者是坐标值

在这里插入图片描述
使用脚本拼图

from PIL import Image


file=open('qr.txt')
MAX=200
 
picture=Image.new("RGB",(MAX,MAX))
for y in range(MAX):
    for x in range(MAX):
        string =file.readline()
        picture.putpixel([x,y],eval(string)) #直接使用eval()可以转为元组
picture.show()

在这里插入图片描述

MRCTF{ta01uyout1nreet1n0usandtimes}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[MRCTF2020]千层套路 的相关文章

  • python怎么去除字符串的空格、回车

    内容取此 str 123 456 print str strip 去除左右两边的空格 print str lstrip 去除左边的空格 print str rstrip 去除右边的空格 print str replace 去除字符串全部空格
  • ELK详解(十七)——filebeat输出到Redis和Elasticsearch实战

    今天继续给大家介绍Linux运维相关知识 本文主要内容是使用filebeat将日志输出到Redis和Elasticsearch的实战配置 在ELK详解 十六 filebeat安装与使用一文中 我们介绍了filebeat的安装 部署和简单应用
  • 基于SpringBoot-Dubbo的微服务快速开发框架

    简介 基于Dubbo的分布式 微服务基础框架 为前端提供脚手架开发服务 结合前一篇 Web AP快速开发基础框架 可快速上手基于Dubbo的分布式服务开发 项目代码 https github com backkoms web service
  • 微信小程序最新获取头像昵称方式

    前言 版本历史变迁 一 获取头像的正确姿势 二 获取昵称的正确姿势 总结 前言 产品需要获取微信用户的昵称和头像 这这还不简单 so easy 通过wx getUserProfile或者 wx getUserInfo 就可以获取到 但是获取

随机推荐

  • Nacos安装配置详细流程

    快速导航 1 Nacos安装 1 1概述 1 2 下载 1 3 安装 1 4 启动和关闭 1 5 测试 2 Nacos持久化 2 1为什么持久化 2 2配置Nacos持久化 2 2 1 切换数据库 2 2 2 初始化数据库 2 2 3 测试
  • tensorflow LeNet

    LeNet 即 LeNet5 由 Yann LeCun 在 1998 年提出 做为最早的卷积神经网络之一 是许 多神经网络架构的起点 其网络结构如图 下所示 借鉴点 共享卷积核 减少网络参数 在后期发展中 降采样层被 m a x p o o
  • HTML5 canvas 圆环扩散效果

    canvas 圆环扩散效果 使用 HTML5 canvas 制作圆环扩散的效果 以下是效果图 下面是实现代码 仅供参考 转载请注明出处 如有问题请联系 页面元素
  • TensorFlow2学习(三):keras 函数api

    文章目录 1构建简单的网络 1 1创建网络 1 2训练 验证及测试 1 3模型保持和序列化 2 使用共享网络创建多个模型 3 复杂网络结构构建 3 1多输入与多输出网络 3 2小型残差网络 4 共享网络层 5 模型复用 6 自定义网络层 完
  • quartus 中出现的问题总结

    quartus 中出现的问题总结 下面展示报错 A code block Start time 16 27 28 on Mar 25 2020 Error vsim 3170 Could not find fulladder1 vlg ts
  • 机器学习&数据挖掘:特征选择之 wrapper approach

    在前面简要介绍了特征选择的Filter方法 由于Filter方法还有很多 在此不能一一介绍 Filter方法从原始特征中选择特征子集 用于后续的机器学习算法 由于Filter在特征选择时 没有考虑到所用的机器学习算法模型 可能会导致选择出的
  • git命令学习——将本地代码推送到远程新建仓库

    在远程 如gitee 中新建一个仓库后复制仓库链接 打开git Bash或者CMD 初始化本地仓库 git init 添加全部修改的文件 git add 注意不要漏了 编写提交说明 git commit m 提交说明 连接远程仓库 git
  • S3C2440之LCD的初始化配置

    pre class objc pre class objc define LADDR 0x30800000 define HMIX 240 define VMIX 320 unsigned short addrbuf unsigned sh
  • 15种常用ARGB颜色

  • 【原创】always语句 和 initial语句

    过程语句 有 always语句 和 initial语句 相同点 1 always语句 和 initial语句 可以多次使用 2 always语句 和 initial语句 各语句块 整体 是独立运行 3 always语句 和 initial语
  • Qt数据库表格添加右键选项功能及右键按钮可能不显示问题解决方法

    Qt数据库表格添加右键选项功能及右键按钮可能不显示问题解决方法 文章目录 Qt数据库表格添加右键选项功能及右键按钮可能不显示问题解决方法 1 前言 2 思路及主要代码 3 注意点 右键时按钮不出现 4 结果 1 前言 Qt数据库操作中大部分
  • Object Detection(目标检测神文)

    目标检测神文 非常全而且持续在更新 转发自 https handong1587 github io deep learning 2015 10 09 object detection html 如有侵权联系删除 更新时间 20190226
  • [OpenAirInterface实战-15] :OAI 软件无线电USRP B210硬件详解

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 121088307 目录 第1章 通用无
  • [油猴脚本] 回到顶部

    1 思路解析 生成一个按钮 点击时回到顶部 2 脚本下载及源代码 详见https greasyfork org zh CN scripts 459651 E5 9B 9E E5 88 B0 E9 A1 B6 E9 83 A8
  • Libtorch的介绍与使用方法

    Libtorch的介绍与使用方法 1 libtorch是什么 2 libtorch如何下载 3 libtorch在windows下如何使用 4 libtorch推理YOLOv5的例子 5 libtorch模型转换方法 1 libtorch是
  • Matlab中K折交叉验证

    K折交叉验证 M N size data 数据集为一个M N的矩阵 其中每一行代表一个样本 indices crossvalind Kfold data 1 M N 10 for k 1 10 交叉验证k 10 10个包轮流作为测试集 te
  • message:Error: 上传失败:网络请求错误 系统错误,错误码:80082,get plugin(id: wx5474241b2a65b906, version: 1.0.8) failed,

    message Error 上传失败 网络请求错误 系统错误 错误码 80082 get plugin id wx5474241b2a65b906 version 1 0 8 failed 微信开发者工具上传代码提示报错信息 该报错信息可能
  • tp5上传网站服务器规则,tp5上传到云服务器

    tp5上传到云服务器 内容精选 换一换 查询指定后端云服务器组的后端云服务器 支持过滤查询和分页查询 如未特殊说明 匹配规则为精确匹配 GET v2 project id elb pools pool id members无请求样例1 全量
  • word文档中如何将软回车替换为硬回车

    word文档中如何将软回车替换为硬回车 手动换行符 是Microsoft word中的一种换行符号 又叫软回车 是以一个直的向下的箭头 表示的 通常出现在从网页复制到word的文字中 它在word中的代码是 l 这个是乘方的符号加字母L 不
  • [MRCTF2020]千层套路

    MRCTF2020 千层套路 题目地址 https buuoj cn challenges MRCTF2020 E5 8D 83 E5 B1 82 E5 A5 97 E8 B7 AF 解压压缩包 发现是密码竟然是压缩包名称 再根据题目 tn