CTF题目:2014-sctf-misc400

解题思路:pngcheck 检查发现 IDAT数据块问题,binwalk对图片里面的数据进行分离解压,在这个数据包里面01字符串,01字符串的长度是625,除以8 除以7 都无法整除,也就是说没法直接转换成ascii码,猜测有可能是01转二维码。

解题参考:SCTF 2014misc400

这里讲如何生成二维码部分:

  1. 使用 Python
python 复制代码
from PIL import Image

# 定义图像的大小
MAX = 25

# 创建新的图像对象
pic = Image.new("RGB", (MAX, MAX))

# 定义二维码数据
qr_data = "1111111000100001101111111100000101110010110100000110111010100000000010111011011101001000000001011101101110101110110100101110110000010101011011010000011111111010101010101111111000000001011101110000000011010011000001010011101101111010101001000011100000000000101000000001001001101000100111001111011100111100001110111110001100101000110011100001010100011010001111010110000010100010110000011011101100100001110011100100001011111110100000000110101001000111101111111011100001101011011100000100001100110001111010111010001101001111100001011101011000111010011100101110100100111011011000110000010110001101000110001111111011010110111011011"

# 填充图像像素
for i, char in enumerate(qr_data):
    x = i % MAX
    y = i // MAX
    color = (0, 0, 0) if char == '1' else (255, 255, 255)
    pic.putpixel((x, y), color)

# 显示并保存图像
pic.show()
pic.save("flag.png")
  1. 使用 Excel

使用公式与条件格式,填充公式A1=MID($Z$1,(ROW()-1)*25+COLUMN(),1)通过行号和列号计算从 Z1 单元格的特定位置提取一个字符,并填充到当前单元格中。

相关推荐
腾科IT教育3 小时前
TypeScript 泛型(Generics):类型占位符实现复用与安全
安全·typescript·泛型
dialect_8 小时前
KMP算法
开发语言·c++·算法
reikocao8 小时前
卡尔曼滤波的动态机制:P如何改变融合权重
算法
漂流瓶jz9 小时前
UVA-1612 猜名次 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·题解·排序·aoapc·算法竞赛入门经典
吞下星星的少年·-·9 小时前
Div.2 CF 1130B题(构造,贪心)
算法·贪心·构造
赛博守夜人10 小时前
AI安全攻防与治理之十四:AI 安全测试不能脱离传统安全,Web、API、移动端与模型攻击面的组合拳
前端·人工智能·安全
是main不是漫10 小时前
【双指针——移动零】数组划分类题目的入门基石
c++·算法
jimmyleeee11 小时前
Agent安全之八:OWASP ASI08 级联失效------当每一个 Agent 都“正确”,系统却走向灾难
网络·安全·web安全
山东科恩光电12 小时前
安全地毯压敏传感快速响应与耐腐蚀橡胶材质在工业危险区域的防护部署
安全
深圳市快瞳科技有限公司12 小时前
野外鸟类AI识别落地实录:输入适配、结构化输出、去重聚合与置信度分流的工程实践
算法·计算机视觉·鸟类识别·鸟类ai识别·野外鸟类观测·林业调查