[NSSCTF 2nd]gift_in_qrcode

原始信息

网站的回显:

This my gift:
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


161
What's your answer:No no no!

源码附件

import qrcode
from PIL import Image
from random import randrange, getrandbits, seed
import os
import base64

# 获取指定名称的环境变量值
flag = os.getenv("FLAG")
if flag == None:
flag = "flag{test}"

# 随机数生成
secret_seed = randrange(1, 1000)
# 设定随机数种子
seed(secret_seed)
# 空数组
reveal = []

for i in range(20):
# 生成8位随机整数,字符串化后添加到列表
reveal.append(str(getrandbits(8)))

# 得到一个随机8位整数
target = getrandbits(8)
# 数组转字符串
reveal = ",".join(reveal)

# 把列表转为二维码
# 并对二维码进行裁剪
img_qrcode = qrcode.make(reveal)
img_qrcode = img_qrcode.crop((35, 35, img_qrcode.size[0] - 35, img_qrcode.size[1] - 35))

# 重新跳转二维码的大小
offset, delta, rate = 50, 3, 5
img_qrcode = img_qrcode.resize(
(int(img_qrcode.size[0] / rate), int(img_qrcode.size[1] / rate)), Image.LANCZOS
)
# 生成新的图像对象
img_out = Image.new("RGB", img_qrcode.size)

# 生成具备随机颜色的img_out
for y in range(img_qrcode.size[1]):
for x in range(img_qrcode.size[0]):
pixel_qrcode = img_qrcode.getpixel((x, y))
if pixel_qrcode == 255:
img_out.putpixel(
(x, y),
(
randrange(offset, offset + delta),
randrange(offset, offset + delta),
randrange(offset, offset + delta),
),
)
else:
img_out.putpixel(
(x, y),
(
randrange(offset - delta, offset),
randrange(offset - delta, offset),
randrange(offset - delta, offset),
),
)

img_out.save("qrcode.png")
with open("qrcode.png", "rb") as f:
data = f.read()
print("This my gift:")
print(base64.b64encode(data).decode(), "\n")

print(target)

ans = input("What's your answer:")
if ans == str(target):
print(flag)
else:
print("No no no!")

解题

使用nc连接,输入答案即可。

./ncat.exe node5.anna.nssctf.cn 28331

[NSSCTF 2nd]gift_in_qrcode(revenge)

原始信息

依然是nc连接,附件源码如下:

import qrcode
from PIL import Image
from random import randrange, getrandbits, seed
import os
import base64

flag = os.getenv("FLAG")
if flag == None:
flag = "flag{test}"

secret_seed = randrange(1, 1000)
seed(secret_seed)
reveal = []
for i in range(20):
reveal.append(str(getrandbits(8)))
target = getrandbits(8)
reveal = ",".join(reveal)

img_qrcode = qrcode.make(reveal)
img_qrcode = img_qrcode.crop((35, 35, img_qrcode.size[0] - 35, img_qrcode.size[1] - 35))

offset, delta, rate = 50, 3, 5
img_qrcode = img_qrcode.resize(
(int(img_qrcode.size[0] / rate), int(img_qrcode.size[1] / rate)), Image.LANCZOS
)
img_out = Image.new("RGB", img_qrcode.size)
for y in range(img_qrcode.size[1]):
for x in range(img_qrcode.size[0]):
pixel_qrcode = img_qrcode.getpixel((x, y))
if pixel_qrcode == 255:
img_out.putpixel(
(x, y),
(
randrange(offset, offset + delta),
randrange(offset, offset + delta),
randrange(offset, offset + delta),
),
)
else:
img_out.putpixel(
(x, y),
(
randrange(offset - delta, offset),
randrange(offset - delta, offset),
randrange(offset - delta, offset),
),
)

img_out.save("qrcode.png")
with open("qrcode.png", "rb") as f:
data = f.read()
print("This my gift:")
print(base64.b64encode(data).decode(), "\n")

ans = input("What's your answer:")
if ans == str(target):
print(flag)
else:
print("No no no!")

解题

先将base64信息转换为图片信息并且写入图片:

from PIL import Image
import qrcode

def decode_base64_to_png(base64_string, output_file):
image_data = base64.b64decode(base64_string)
image = Image.open(BytesIO(image_data))
image.save(output_file, 'PNG')


# 测试示例
def x():
base_img = "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"
output_file = "output.png"
decode_base64_to_png(base_img, output_file)
print("成功将 base64 编码的字符串解码并保存为 PNG 文件。")

x()
# 上面那一大串字符串就是你得到的base64编码了。

得到一张乌漆嘛黑的照片,使用PS放大放大再调整曝光后,扫出一组数组:

[97,45,232,198,115,215,226,198,32,189,8,210,84,11,150,134,221,207,167,176]

根据题目的信息知道,只要我们利用数组信息和范围限制逆推,就能得到初始的seed值。

尝试反编译出利用seed生成随机数的py代码

from random import randrange, getrandbits, seed

def poc():
for i in range(1,1000):
secret_seed = i
seed(secret_seed)
a = [97,45,232,198,115,215,226,198,32,189,8,210,84,11,150,134,221,207,167,176]
reveal = []
for i in range(20):
reveal.append(getrandbits(8))
if reveal == a:
flag = getrandbits(8)
return flag
return False
print(poc())

输出结果是176。

$ ./ncat.exe node5.anna.nssctf.cn 28124
libnsock ssl_init_helper(): OpenSSL legacy provider failed to load.

This my gift:
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

What's your answer:176
NSSCTF{eee83c6d-50b3-40cf-a808-0031c27cf8f0}