day26

发布时间 2023-08-07 20:01:59作者: CPYQY

一、[GDOUCTF 2023]pixelart

1.得到一张png,放大后隐约可以看到有flag的形状,同时010查看,在文件源码的末尾发现了一个类似于宽乘高的两个数字,再查看原图片的宽高,发现就是宽高缩小到原来的十二分之一

image

2.写个脚本提取像素,十二为一组

点击查看代码
from PIL import  Image
img = Image.open("./arcaea.png")
pixel = img.load()
width = img.size[0]
height = img.size[1]
neww = width // 12
newh = height // 12
newimg = Image.new("RGB",(neww, newh))
for i in range(0,width,12):
    for j in range(0,height,12):
        rgb = pixel[i,j]
        newimg.putpixel((i // 12, j // 12), (int(rgb[0]),int(rgb[1]),int(rgb[2])))
newimg.save("./newimage.png")

3.得到的图片上的flag为fake flag,使用zsteg分析一下,得到flag

image
image

二、[广东强网杯 2021 个人决赛]pic

1.010打开,末尾发现zip,手撕打开得到两张一样的png,猜测盲水印,脚本跑一下

image

2.得到的就是flag

三、[黑盾杯 2020]Blue

1.foremost,得到一个zip,显示有密码,010打开发现是伪加密,09改为00,得到流量文件

image

2.过滤http流,发现SQL注入语句,是SQL注入流量

image

3.直接手动提取,注意变化的位数,十进制转十六进制,得到flag

image