[Writeup] 特殊的日子 writeup

[复制链接]
查看4547 | 回复0 | 2019-6-10 14:46:35 | 显示全部楼层 |阅读模式
根据题目提示需要暴力破解,这里有一个坑
就是如果直接将4D1FAE0B转10进制,也可以得到一个时间戳,1293921803


转换为日期的话为:2011-01-02 06:43:23

这个是不对的!

使用暴力破解的话看位数应该就是CRC32破解,使用脚本解密:
  1. import zlib
  2. def crc32(st):
  3.     crc = zlib.crc32(st.encode('utf-8'))
  4.     if crc > 0:
  5.       return "%x" % (crc & 0xffffffff)
  6.     else:
  7.       return "%x" % (crc & 0xffffffff)
  8. year = [str(i) for i in range(1000,3000)]
  9. month = [str(i) if i>9 else (str(0)+str(i)) for i in range(1,13) ]
  10. day = [str(i) if i>9 else (str(0)+str(i)) for i in range(1,32) ]

  11. realDate = '4D1FAE0B'.lower()

  12. import itertools
  13. for item in itertools.product(year,month,day):
  14.     date = ''.join(item)
  15.     if crc32(date) == realDate:
  16.         print(date)
复制代码
运行得到结果:
332123.jpg

题目地址:https://www.bugku.com/ctfexercise-competition-219.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

10

主题

10

帖子

59

积分

打谱CTF

Rank: 3Rank: 3

积分
59