用ida打开查看main函数, 发现验证成功需要sub_701280返回1;
sub_701280函数中先将输入根据字符串"0123456789abcdefghijklmnopqrstuvwxyz"变换为序号, 其后代码为: 要反回1需要最后dword_703020[80 * input_divide_12 + 10 * input_divide_12 + 10 * last_input_mod_12 + input_mod_12] == 8114而且之前通过sub_7011C0与abs32(input_mod_12 - v19) + abs32(last_input_mod_12 - v20) + abs32(input_divide_12 - v21) != 1的检查;
分析sub_7011C0发现该函数在将输入的数字分解为两个质数的乘积, 然后的abs32...判断保证每轮input_mod_12, last_input_mod_12, input_divide_12中只能有一个增减1;
于是在dword_703020中遍历搜索满足条件的路径: ...
---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-288222.htm
[原创]KCTF 2025 第2题 初窥门径wp
433 浏览
0 回复
暂无回复,快来抢沙发吧!