每天水一道题计划,打卡第三天
看着挺奇怪的,然后想动调,出现了一点错误
沉默,反思,不解,疑惑
然后观察,最开始有一堆数据,不知道干嘛的
对welcome中间的数据交叉引用发现
重点应该在异或
根据12-15行的算法,加上上一张图里的dword_140021190 <= 14549743,可以穷举暴力破解出result里的值
python
result=0
for v8 in range(14549743):
v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF
if (v7 == 607052314):
result = v8
break
print(result)
python
result=0
for v8 in range(14549743):
v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF # 原文是unsigned int--0~0xFFFFFFFF,输出的值需要截断
if (v7 == 607052314):
result = v8
break
print(result)
a=[0x26, 0x2C, 0x21, 0x27, 0x3B, 0x0D, 0x04, 0x75, 0x68, 0x34,
0x28, 0x25, 0x0E, 0x35, 0x2D, 0x69, 0x3D, 0x6F, 0x6D, 0x00]
for j in range(17):
print(chr((v8^a[j])&0xff),end="")
然后根据flag提示,找个网站md5加密