尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

202207_BUGKU_二维码GIF

202207_BUGKU_二维码GIF
📅 发布时间:2026/6/20 21:08:50
GIF分离,QRCODE,ZXING库

Tags:GIF分离,QRCODE,ZXING库

0x00. 题目

Barcodes

0x01. WP

01 分离GIF

图片

工具路径:https://pan.baidu.com/s/1GyH7kitkMYywGC9YJeQLJA?pwd=Zmxh#list/path=/CTF附件/Tools

工具名称:风二西_GIF图片分离工具.zip

02 使用脚本批量扫描

exp.py

#将指定文件夹下的文件按顺序解码
import os
import zxingpath = "gifframe"
#读取多个文件
files= os.listdir(path) #按e和.将文件序号截出排序------依据实际情况修改
#files.sort(key=lambda x:int(x.split('e')[1].split(".")[0]))
files.sort(key=lambda x:int(x.split(".")[0]))
reader = zxing.BarCodeReader()
print(files)
#结果
string=''
for file in files:barcode = reader.decode(path+"\\"+file)print(file)#print(barcode.parsed,end="") #连续输出#需要分隔的情况#string+=barcode.parsed+','string+=barcode.parsed
print(string)

运行结果:

C:\Users\admin\Desktop\20220721_二维码GIF_CTF小学生群>python3 Barcodes_decode.py
000.png
001.png
002.png
003.png
004.png
005.png
006.png
007.png
008.png
009.png
010.png
011.png
012.png
013.png
014.png
015.png
016.png
017.png
SYC{F1aSh_so_f4sT}

扩展知识点:zxing库

1. 报错:zxing.BarCodeReaderException: ('Java JARs not found in classpath ...)

找到__init__.py文件中的class BarCodeReader(object):
里面关于文件路径分隔符的判断:classpath_sep = ';' if sys.platform == 'nt' else ':' # https://stackoverflow.com/a/60211688
**【修正】 因为我们是在windows里面用,直接改为 classpath_sep = ';' 即可。

2. 报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xdf in position 0: invalid continuation byte

找到__init__.py文件中的class BarCodeReader的decode函数中codes = [BarCode.parse(result) for result in file_results]
使用了BarCode.parse(result)中有两处bytes.decode()调用,显然是utf-8与中文编码GB18030/GBK/GB2312 不兼容导致

        parsed = parsed[:-1].decode()raw = raw[:-1].decode()

【修正】 增加一个参数,改动如下:

BarCode.parse(cls, zxing_output, encoding='utf-8'):parsed = parsed[:-1].decode(encoding)raw = raw[:-1].decode(encoding)
BarCodeReader.(self, filenames, try_harder=False, possible_formats=None, pure_barcode=False, products_only=False, encoding='utf-8'):codes = [BarCode.parse(result, encoding=encoding) for result in file_results]

【使用】可以传参编码方式:zxing.BarCodeReader().decode(imgs[0],encoding='GBK')

相关新闻

  • 20250910NOIP模拟赛
  • 【2025最新推荐】AI大模型API中转站 | 国内直连ChatGPT/Claude/Gemini全系API接口服务
  • html怎么写

最新新闻

  • VScode调试按钮神秘消失?深入剖析C/C++插件IntelliSense Engine与setting.json的同步陷阱
  • 合肥理工学校招生电话多少?2026年6月21号最新发布! - 教育为先
  • 终极智能工具箱:League Akari 重新定义英雄联盟游戏体验
  • 2026年5月美国零售销售月率超预期
  • nuScenes数据集实战指南(一)——环境配置与数据初探
  • 2026合肥十大叛逆戒网瘾学校排名|央视推荐+真实案例,家长必看避坑指南 - 辛云教育资讯

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号