-
-
[原创]第一题:神秘来信 wp
-
发表于: 2019-6-10 22:48 1967
-
序列号: 401353
首先运行一下,
IDA F5之后
大概看是输入长度6,后3位是'353',前面3位加起来是'5'
先猜测前3位也是数字,5的组合不多,都试一下,最后发现'401353'是正确的序列号
既然成功会输出'success!',为什么IDA反编译没有看到呢?查看字符串,是存在的
在代码中是通过'除零异常'触发才能执行相关代码,切到汇编代码分析
0x00401353地址比较奇怪,其他都是汇编代码,这里是一个db,而这个地址恰好是我们跑出来的序列号,向上分析看对输入的序列号做了什么处理,即loc_401330
可以看一下对应的F5的代码
手动写了一遍过程,发现这个处理过程就是将'401353'字符串转成了16进制的0x401353
loc_401354中包含div操作,esi和eax都等于0x401353,在0x00401358地址的代码执行后,esi的值变为0,执行'div esi'时,触发除零异常,代码逻辑转到输出'success'的位置,即0x00401379地址,下面就顺利输出成功提示了
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
他的文章
- [求助]关于注册表项关闭windows的ASLR功能 1784
- ghidra---配置获取加载pdb文件 343
- [原创]windbg相关 1838
- [分享]x64dbg---调试dll的指定导出函数 7577
- 低版本VMP脱壳 4184
看原图
赞赏
雪币:
留言: