bugku Misc 好多数值
前言:玩CTF也有好一阵子,这么久了,我很少做一些笔记,大概是没有做笔记的习惯,总觉得缺点什么,今天就拿一个当时没有任何头绪而且有趣的CTF题目说说,或许以后就不会再玩了。
1.题目:好多数值(来源于Bugku)
1.1.题目链接
http://ctf.bugku.com/challenges#好多数值
1.2.txt文档如图
此文档使用notepad++打开,每一行都是RGB值,通过后来的了解是RGB转换成图片,那么来分析一下,此文档一共61367行,有数值的一共61366行。(1)通过txt文件行数(61366=261503,最后一行是空行,不在计算范围内)的整数分解。(2)可以得到以下几个不同的size:503 * 122,1006 * 61,30683 * 2(x,y交换一下对图片不会有很大的变化,无非就是横着和竖着的区别吧),那么就要实现三种不同规格图片的转化,确定其中的有效图片。
1.3.代码示例(利用python的图片库)
from PIL import Image
x = 503 #x坐标 通过对txt里的行数进行整数分解
y = 122 #y坐标 x*y = 行数
im = Image.new("RGB",(x,y))#创建图片
file = open('1.txt') #打开rbg值文件
#通过一个个rgb点生成图片
for i in range(0,x):
for j in range(0,y):
line = file.readline()#获取一行
rgb = line.split(",")#分离rgb
im.putpixel((i,j),(int(rgb[0]),int(rgb[1]),int(rgb[2])))#rgb转化为像素
im.show()
三个size值是需要带入代码中的,代码借用了一个博主的,拿来学习一下,请参考:https://www.cnblogs.com/webFuckeeeer/p/4536776.html,结束