汇编语言与逆向工程实验报告 7
文件信息
首先看一下文件信息
可以看到是 32 位程序
静态分析
定位到关键函数
1 | int __cdecl check(char *Str) |
可以看到函数 check
接收一个字符串 Str
作为参数,然后循环遍历字符串,将每个字符转换为整数,并累加到变量 v4
中。如果 v4
等于 15,则打印 Password OK!
并退出程序,否则打印 Password Incorrect!
并返回。
动态调试
找到 password ok 字符串
函数改成 jne 改成 je,意思就是把原来的输出错误的条件改成输出正确的条件,这样就会一直输出 OK
打补丁导出
实现任意输入都输出 password ok
相关链接
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 W1ndysの小屋!
评论