0
点赞
收藏
分享

微信扫一扫

Acid Bytes.2

闲鱼不咸_99f1 2022-03-13 阅读 33
安全
测试寄存器是否为空:
test ecx, ecx
jz somewhere
如果ecx为零,设置ZF零标志为1,jz跳转。

test 逻辑与,类似and
SEH:结构化异常处理
安装过程:
1.定位:
·在程序入口处,数据窗口跟随FS对应的地址
·将FS:[0]作为地址在数据窗口跟随
·堆栈窗口查看此时数据窗口的地址为SEH链尾部
·注释为“SE处理程序安装”就是安装SEH,PUSH的地址就是SEH程序的入口
2.先将SEH程序入口压入堆栈
3.再将SEH链尾部压入堆栈
4.再用下一个SEH(系统默认的异常处理)尾部地址覆盖上一个,两个SEH就会连接起来
UPX壳,脱壳完毕,运行软件;
输入serial:12345678;
载入OD,查找字符串,双击敏感关键词;
重点关注、分析以下函数:
call CrackMe2.004227BC;  将serial的数据地址读入内存0x0019F854中
call CrackMe2.00403B44;  比较eax与edx寄存器数值判断serial是否正确
call CrackMe2.0043EA04;  调用窗口组件弹出正确信息
F7分别步入分析,如下图:
正确serial:12011982

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

举报

相关推荐

0 条评论