1.下载后解压得到104张图片

攻防世界-gif

 

 2.分析图片类型,不是百分百确定是jpg

攻防世界-gif

 

 3.分析文件头 FF D8 FF 确实是jpg

攻防世界-gif

 

 4.由于每张图片大小也相同,没有一个一个分析的必要,只是颜色和命名不同,命名是有顺序的,并且颜色只有黑白两个,可能是密码学,不同颜色表示不同代码,根据顺序排列,只有两种编码,难道是01的二进制???

转化为二进制

python3脚本:

攻防世界-gif

 

 5.得到结果  flag{FuN_giF}

 

附:脚本

 1 flag_dic = ""
 2  
 3 white = open(r"D:\攻防世界\Misc\gif\gif\0.jpg","rb").read() 
 4 black = open(r"D:\攻防世界\Misc\gif\gif\1.jpg","rb").read()
 5 #上面两句用于为下面的图片识别做个实例,定义什么图片是白色,什么是黑色
 6  
 7 for i in range(104):
 8     with open(r"D:\攻防世界\Misc\gif\gif\%d.jpg"%i,"rb") as f:
 9         if f.read() == white:
10             flag_dic += "0"
11         else:
12             flag_dic += "1"
13 #上面循环语句用于识别D:\攻防世界\Misc\gif\gif\%d.jpg路径下的104张图片的颜色,并给白色附值为0,黑色赋值为1
14 
15 #print (flag_dic)
16 #用于测试打印识别后的二进制
17 
18 flag = ""
19      
20 for i in range(len(flag_dic)//8):
21     flag += chr(int(flag_dic[i*8:(i+1)*8],2))
22      
23 print(flag)
24 #将二进制转化为字符串

 

相关文章:

  • 2021-04-25
  • 2022-01-09
  • 2021-07-25
  • 2021-06-17
  • 2021-08-31
  • 2021-08-07
  • 2021-10-29
  • 2021-11-27
猜你喜欢
  • 2021-04-14
  • 2021-10-07
  • 2021-06-18
  • 2021-05-06
  • 2021-09-11
  • 2022-12-23
  • 2021-12-18
相关资源
相似解决方案