首页
社区
课程
招聘
[讨论]手动脱壳的困惑,求教下面汇编指令段的意义
2012-10-9 20:49 4528

[讨论]手动脱壳的困惑,求教下面汇编指令段的意义

2012-10-9 20:49
4528
在VMware xp下od脱壳,执行到如下指令,抛出异常,然后程序终止。
push dword ptr fs:[0]
mov dword ptr fs:[0],esp ;破坏当前线程的结构化异常处理结构
sti                                  ;r3执行特权指令,触发异常
jmp 0201521D

在此代码之上未曾发现检测od或者vmware的代码,这段代码有什么特殊意义么?

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (5)
雪    币: 427
活跃值: (458)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
cshcmq 2012-10-9 21:38
2
0
这个问题很难啊~
雪    币: 525
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kissbill 2012-10-9 22:14
3
0
这个貌似就是特权指令,来检测是否运行在虚拟机中,是的话会触发异常。
雪    币: 525
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kissbill 2012-10-9 22:20
4
0
[QUOTE=yaneng;1107682]在VMware xp下od脱壳,执行到如下指令,抛出异常,然后程序终止。
push dword ptr fs:[0]
mov dword ptr fs:[0],esp ;破坏当前线程的结构化异常处理结构
sti                                  ;r3执行特权指...[/QUOTE]

push dword ptr fs:[0]
mov dword ptr fs:[0],esp ;破坏当前线程的结构化异常处理结构
这个东东是建立异常处理链的。ESP就是指定的异常处理地址。
雪    币: 427
活跃值: (458)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
cshcmq 2012-10-9 22:45
5
0
意义其实很明显,就是产生一个异常,让CPU(OS)进入异常处理流程~只不过很复杂。
这样搞明摆着要玩死你~
雪    币: 1152
活跃值: (847)
能力值: ( LV8,RANK:150 )
在线值:
发帖
回帖
粉丝
freakish 1 2012-10-15 10:18
6
0
你已经掉入了陷阱了,正常的话,应该是不执行到这里的,看看SEH啥的吧,
游客
登录 | 注册 方可回帖
返回