zoukankan      html  css  js  c++  java
  • CTFshow萌新赛-千字文

    打开靶机

     下载完成后,为一张二维码图片

     使用StegSolve 解出隐写图像

    保存后使用PS或其他工具去除白边

     然后使用脚本分割这个图像(25*25)

    from PIL import Image
    
    im = Image.open('solved.bmp')
    id = 0
    for i in range(0, 25):
        for j in range(0, 25):
            box = (25 * i, 25 * j, 25 * (i + 1), 25 * (j + 1))
            im.crop(box).resize((500, 500), Image.ANTIALIAS).save('./1/%03d.png' % id)
            id += 1

     分割完成后使用pyzbar识别二维码信息,并输出

    import pyzbar.pyzbar as pyzbar
    
    for i in range(625):
        # im = Image.open()
        s = './1/%03d.png' % i
        print(pyzbar.decode(Image.open(s))[0].data.decode())

     成功拿到flag

    使用后输出很多信息,而且需要两个脚本

    我把两个脚本进行了整合

     1 #! /usr/bin/env python3
     2 # _*_  coding:utf-8 _*_
     3 import pyzbar.pyzbar as pyzbar
     4 from PIL import Image
     5 
     6 def main():
     7     fg()
     8     print("图片分割已完成")
     9     dq()
    10 
    11 def fg():
    12     #源文件名
    13     im = Image.open('3.png')
    14     id = 0
    15     for i in range(0, 25):
    16         for j in range(0, 25):
    17             box = (25 * i, 25 * j, 25 * (i + 1), 25 * (j + 1))
    18             #分割后存储路径和文件名
    19             im.crop(box).resize((500, 500), Image.ANTIALIAS).save('./1/%03d.png' % id)
    20             id += 1
    21 
    22 def dq():
    23     for i in range(625):
    24         #分割后单个二维码图片路径
    25         s = './1/%03d.png' % i
    26         str_image = str(pyzbar.decode(Image.open(s))[0].data.decode())
    27         if "flag" in str_image:
    28             print(str_image)
    29 
    30 if __name__ == "__main__":
    31     main()

    运行情况

  • 相关阅读:
    C++右值引用的参考
    U3D 文档 GPU INSTANCING
    UNITY statistic中的 SetPass和Batches
    时间复杂度
    转,数组遍历的三种方式
    bug纪录:PhotonServer-14052: 17:14:09.033
    关于.net standard 与 .net core, net framework
    【转】未能加载文件或程序集或它的某一个依赖项,系统找不到指定的文件
    C# 计时函数精度测试
    一张图看懂dex
  • 原文地址:https://www.cnblogs.com/anweilx/p/12435895.html
Copyright © 2011-2022 走看看