-
-
[原创]看雪2017 CTF 第一题 WannaLOL 分析
-
-
[原创]看雪2017 CTF 第一题 WannaLOL 分析
本程序已说明为 无壳、无VM、无密码学的三无CrackMe
直接 OD 查找关键字定位,IDA 对应定位到关键位置
其中有两个 E8 的字节会干扰 IDA 的分析,直接 NOP 得到下图:
答案一目了然。
根据逆向分析 :
1. 长度为 4
2. 第1位和第2位分别为 1,5 固定值
3. (n2 - 0.2) * n3 * 16 = 384 化简为 (n2 - 0.2) * n3 = 24 【n2为第3位,n3 为第4位】
只要满足公式就可以得出答案
写个小程序跑一下,就可以遍历答案
代码
void calcRegNum() {
float res = 24.0;
float tmp = 0;
for (int i = 0; i < 0xFF; ++i){
tmp = res / i * 10;
if ( (int)tmp % 10 == 8 && tmp - (int)tmp == 0 ) { // 小数第一位是8
printf("find[%d]:\t15%c%c\r\n", i, (int)(tmp + 2) / 10 + 0x30, i + 0x30);
}
}
}
得到结果为:
到此分析结束。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!