1. 题目描述
我们得到了一串神秘字符串:TASC?O3RJMV?WDJKX?ZM,问号部分是未知大写字母,为了确定这个神秘字符串,我们通过了其他途径获得了这个字串的32位MD5码。但是我们获得它的32位MD5码也是残缺不全,E903???4DAB????08?????51?80??8A?,请猜出神秘字符串的原本模样,并且提交这个字串的32位MD5码作为答案。 注意:得到的 flag 请包上 flag{} 提交
2. 解题过程
没啥好说的直接爆破
import hashlib
string = "TASC?O3RJMV?WDJKX?ZM"
for i in range(26):
temp1 = string.replace("?", str(chr(65 + i)), 1)
for j in range(26):
temp2 = temp1.replace("?", chr(65 + j), 1)
for n in range(26):
temp3 = temp2.replace("?", chr(65 + n), 1)
s = hashlib.md5(temp3.encode("utf8")).hexdigest().upper()
if s[:4] == "E903":
print("flag{" + s + "}")
3. 所需工具
无
4. 写在最后
本文完
敬爱与明天🌹