首页
社区
课程
招聘
VirtualPC单步标志问题
2005-2-25 08:01 9368

VirtualPC单步标志问题

2005-2-25 08:01
9368
VirtualPC单步标志问题
kongfoo/2005.2.24

同样是虚拟机系统,VirtualPC比VmWare好用很多,VmWare里面的win98慢得出奇,
按下开始按钮画了十几次才画出开始菜单,VPC里面就完全不同,几下就出来了。
相信一般情况下装VPC的比VmWare的人多些。下面转入正题。

XP、2k下面,设置T位将使执行之后的指令引发单步中断,代码如下:
  pushfd
  or [esp],100h
  popfd
  nop //这里就引发中断
但在VPC里面的win2k和win98,popfd执行后并没有把T位置1。
换言之,可以写一段代码来检测是否在VPC中。
mov OldESP,esp
push @NotInVPC
push fs:[0]
mov fs:[0],esp
pushfd
or [esp],100h
popfd
nop
jmp @InVPC
@NotInVPC:
mov esp,OldESP
pop fs:[0]
add esp,4
mov UnderVPC,0
jmp @Exit
@InVPC:
pop fs:[0]
add esp,4
mov UnderVPC,1
@Exit:

VPC的这个特点,有好也有不好,对于调试人员来说,这种利用设置T位产生
单步中断的代码不再起作用,使调试工作相对简单了一点,但同时也会失去
程序的流程。对于编程人员来说,在VPC里面就不能用直接设置T位的办法产
生单步中断了。如果真要设置,其中一个办法就是利用SEH,让操作系统来设置:
PUSH @Seh
PUSH DWORD PTR FS:[0]
MOV DWORD PTR FS:[0],ESP
INT3
@Seh:
MOV EAX,DWORD PTR SS:[ESP+C]
MOV DWORD PTR DS:[EAX+B8],@NewEIP
OR DWORD PTR DS:[EAX+C0],100
XOR EAX,EAX
RETN
@NewEIP:
POP DWORD PTR FS:[0]  //单步中断
ADD ESP,4

操作系统:winXP/win2k,VPC版本:2004
VPC操作系统:win2K/win98

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞7
打赏
分享
最新回复 (12)
雪    币: 303
活跃值: (461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
liuyilin 2005-2-25 08:27
2
0
偶像
雪    币: 70
活跃值: (110)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
采臣·宁 1 2005-2-25 08:58
3
0
好贴正如美女,我顶
雪    币: 2319
活跃值: (565)
能力值: (RANK:300 )
在线值:
发帖
回帖
粉丝
riijj 7 2005-2-25 09:04
4
0
好文,学习 !
雪    币: 299
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
clide2000 7 2005-2-25 09:43
5
0
收藏学习,辛苦
雪    币: 61
活跃值: (160)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
pendan2001 4 2005-2-25 11:16
6
0
好文,学习 !学习 !
雪    币: 85199
活跃值: (198520)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
linhanshi 2005-2-25 19:13
7
0
支持...
雪    币: 159
活跃值: (339)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
Lenus 3 2005-2-25 20:35
8
0
好帖子...又学到了...
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bdzlzh 2005-2-27 20:36
9
0
同样是虚拟机系统,VirtualPC比VmWare好用很多,VmWare里面的win98慢得出奇,
按下开始按钮画了十几次才画出开始菜单,VPC里面就完全不同,几下就出来了
--------
我说呢!这下知道了!用VPC装98合适!
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mxl 2005-2-27 23:11
10
0
最初由 kongfoo 发布
VirtualPC单步标志问题
kongfoo/2005.2.24

同样是虚拟机系统,VirtualPC比VmWare好用很多,VmWare里面的win98慢得出奇,
按下开始按钮画了十几次才画出开始菜单,VPC里面就完全不同,几下就出来了。


可能你装完98没装vmware tools驱动吧,我感觉vmware还是挺快的啊.
雪    币: 369
活跃值: (790)
能力值: ( LV12,RANK:570 )
在线值:
发帖
回帖
粉丝
kongfoo 14 2005-3-1 08:17
11
0
噢,我是没有装vmware tools驱动。当时看见太慢了就没有再搞其他东西直接换VPC了。呵呵。下次有机会的话试试装上vmware tools驱动的效果。
雪    币: 2319
活跃值: (565)
能力值: (RANK:300 )
在线值:
发帖
回帖
粉丝
riijj 7 2005-3-1 08:34
12
0
我是用 vmware 的

的确是要装上 vmware tool 驱动,如果不装上的话显示速度很慢

装上后速度和正常 pc 一样快
雪    币: 369
活跃值: (790)
能力值: ( LV12,RANK:570 )
在线值:
发帖
回帖
粉丝
kongfoo 14 2005-3-1 11:44
13
0
OK,I got it :)
游客
登录 | 注册 方可回帖
返回