-
-
[原创]KCTF 2024 第九题 WP
-
发表于: 2024-9-4 11:54 867
-
将输入分成3等分
第三部分:四皇后的解a3b1c4d2或a2b4c1d3加一个字符9(这里刚开始不知道9哪来的卡了一个小时,以为是每段都是8个字符~)
第一部分:hellocat加一个未知字符
第二部分:翻转(x) * 3 == 150633606, 解出:20211205,因为是9个字符所以是202112050
·
三部分都验证通过后验证下原始输入的MD5 == 40d511825ecbc207eb6ef9a7b1c6e34b
·
最后用脚本爆破下MD5得到flag: hellocatx202112050a3b1c4d29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import hashlibdef main(): arr1 = "hellocat 202112050a3b1c4d29" arr2 = "hellocat 202112050a2b4c1d39" characters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" target_md5 = "40d511825ecbc207eb6ef9a7b1c6e34b" for char in characters: # 更新 arr1 和 arr2 的第9个字符(从0开始计数) test_str1 = arr1[:8] + char + arr1[9:] test_str2 = arr2[:8] + char + arr2[9:] # 计算MD5 md5_1 = hashlib.md5(test_str1.encode()).hexdigest() md5_2 = hashlib.md5(test_str2.encode()).hexdigest() if md5_1 == target_md5: print(f"flag: {test_str1}") if md5_2 == target_md5: print(f"flag: {test_str2}")if __name__ == "__main__": main() input("Press any key to continue...") |
[培训]传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 2024-9-4 11:57
被wx_孤城编辑
,原因:
赞赏
他的文章
赞赏
雪币:
留言: