[MRCTF2020]:千层套路

编程入门 行业动态 更新时间:2024-10-11 23:26:43

[MRCTF2020]:千层<a href=https://www.elefans.com/category/jswz/34/1764287.html style=套路"/>

[MRCTF2020]:千层套路

[MRCTF2020]:千层套路

文章目录

  • [MRCTF2020]:千层套路
  • 0.信息分析
      • 结论:
  • 1.目录结构如下:
  • 2.使用python解决套娃问题
  • 3.执行代码后目录结构如下:
      • **qr.txt内容如下:**
  • 4.绘制二维码
      • 1.opencv-绘制二维码.py
      • 2.pil-绘制二维码.py
  • 5.成功拿到二维码




0.信息分析

根据图片的线索测试了一下 0573.zip 的密码就是 0573

结论:

经过测试:0573.zip --> 密码0573,0114.zip --> 密码0114,一直套娃下去。



1.目录结构如下:

[MRCTF2020]千层套路

├─Example.py
├─0573.zip
├─flag
└─zips



2.使用python解决套娃问题

Example.py

import os
import zipfilezip_name = "0573.zip"
password = "0573"
zips_path = "./zips"
flag_path = "./flag"while True:zip = zipfile.ZipFile(zip_name, "r")file_name = zip.namelist()[0]suffix_name = zip.namelist()[0].split(".")[1]if suffix_name == "zip":zip.extractall(zips_path, pwd=password.encode())else:zip.extractall(flag_path)exit()zip_name = os.path.join(zips_path, file_name)password = zip.namelist()[0].split(".")[0]



3.执行代码后目录结构如下:


**[MRCTF2020]千层套路**

├─Example.py
├─0573.zip
├─zips (把套娃的压缩包全放这个目录)
─ qr.zip
─ 1000.zip
─ …
─ 0007.zip
├─flag

​ ─ qr.txt(执行脚本后获得的)


qr.txt内容如下:

内容
1(255, 255, 255)
2(255, 255, 255)
40000(255, 255, 255)

如果有一些opencv基础的话很容易知道:

40000个像素点,RGB(红绿蓝)3通道,根据文件名qr,也可以猜到是二维码!



4.绘制二维码


### 0.目录结构如下:

├─Example.py
├─0573.zip
├─flag
├─==opencv-绘制二维码.py==
├─==pil-绘制二维码.py==
└─zips

1.opencv-绘制二维码.py

import cv2
import numpy as npfile = open("./flag/qr.txt", "r").read()
arr = [eval(i) for i in file.splitlines()]
img = np.array(arr, dtype=np.uint8).reshape((200, 200, 3))cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

2.pil-绘制二维码.py

import itertools
from PIL import Imagemax = 200
file = open("./flag/qr.txt", "r")img = Image.new("RGB", (max, max))
for y, x in itertools.product(range(max), range(max)):pixel = eval(file.readline())img.putpixel([x, y], pixel)img.show()

上面两个代码任意选择一个即可。



5.成功拿到二维码



扫描二维码,成功拿到flag:

MRCTF{ta01uyout1nreet1n0usandtimes}

改成flag{}这种形式,如下:

flag{ta01uyout1nreet1n0usandtimes}



完结!Github链接

更多推荐

[MRCTF2020]:千层套路

本文发布于:2024-02-14 09:02:52,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1762917.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:套路   千层

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!