首页
社区
课程
招聘
[原创]ctf2017_Fpc分析
发表于: 2017-10-27 12:45 3081

[原创]ctf2017_Fpc分析

2017-10-27 12:45
3081

题目刚拿下来,按照正常思路进行反编译,根据关键字找到主函数:


F5初步分析sub_401050,sub_401090,sub_4010E0三个函数的功能:

1. sub_401050 提示并获取用户输入,有调用scanf,输入的有效长度为8个字节;

2. sub_401090, sub_4010E0 对验证码的两次验证过程,关键有两个验证公式, 其中v1和v0分别是输入字符串的高4位和低4位 :


      分析方法一:

              按照两个函数的验证方法来尝试反推v0和v1,由于方程组如果不考虑溢出肯定是无解的,而在考虑溢出的情况下,对高位做补位后单独计算 sub_401090或者 sub_4010E0 中的函数组是有解的,但两组解不相等,纠结了半天后,重新考虑是不是无解的,题目的本意不是计算验证码。所以对方程组重新做了分析。

               假设v0, v1都是偶数,v1-v0则为偶数,那么sub_4010E0中17*(v1-v0)+v1一定是偶数;

               假设v0, v1都是奇数,v1-v0则为偶数,那么sub_401090中5*(v1-v0)+v1一定是 奇数;

               假设v0为奇数,v1都是偶数,v1-v0则为奇数,那么 sub_401090中5*(v1-v0)+v1一定是 奇数;

               假设v0为偶数,v1都是奇数,v1-v0则为奇数, 那么sub_4010E0中17*(v1-v0)+v1一定是偶数 ;


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//