首页
社区
课程
招聘
虚拟机技术是什么?很想知道
发表于: 2007-3-25 20:31 6591

虚拟机技术是什么?很想知道

2007-3-25 20:31
6591
经常听说某某壳使用了虚拟机技术,比如THEMIDA,VMProtect
模模糊糊的,猜想是修改程序的部分代码翻译成它的虚拟语言,然后壳用用它自己的方式解释执行。
想了解一下它是怎么实现的。为什么我跟这些壳加的程序的时候总会有跨区段的转移,而且有时候会转到一些特别怪的地址,比如一个远远大于程序体积的地址
,比系统领空的地址还大的地址。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
2
http://bbs.pediy.com/showthread.php?s=&threadid=40496
2007-3-25 20:54
0
雪    币: 231
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk
3
非常感谢,原来论坛上早就有人问了。
可惜那本书还要买,西安这边的书店不知有没有。
2007-3-25 21:03
0
雪    币: 212
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
在<Structured Computer Organization>一书中, 就已经有虚拟机这个概念出来. 按照Andrew Tanenbaum的观点, 所谓的计算机语言等东西应该用假想计算机(虚拟机)分层来理解更好.

大概的分层如下
0层 数字逻辑
1层 微结构
2层 指令集体系结构
3层 操作系统
4层 汇编语言
5层 高级语言

也就是说我们的操作系统本质上就是一种虚拟机.

基于这样的理解, VMP之类的东西也就很好理解了. 不过由于现在的VM壳为求加密, 把事情搞得更复杂了.

PS: 那句著名的: Java并不是无平台, Java本身就是平台. 就是依靠这个概念的.
2007-3-25 22:49
0
雪    币: 2943
活跃值: (1788)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
5
受教,呵呵
2007-3-26 07:41
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
虎拟机很占CPU,最好不要用它。要求配置太高。
2007-3-31 15:06
0
雪    币: 247
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
看了文章还是不明白,虚拟机加密之后,最后执行应该还是现在的cpu,还是可以汇编成指令,为什么这些代码就看不懂了呢
2007-3-31 15:36
0
雪    币: 212
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
1+1=2
可以转换为(3+1)开平方=2
2007-3-31 17:02
0
雪    币: 9
活跃值: (142)
能力值: ( LV12,RANK:200 )
在线值:
发帖
回帖
粉丝
9
路过~~~~~~~~
2007-3-31 19:23
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
好想就是自己做个cpu吧
2007-4-1 10:57
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
正在学习中,啃得好慢,高手指教。
上传的附件:
2007-4-1 12:14
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
12
你帮我做个吧!

2007-4-1 17:54
0
雪    币: 130
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
虎拟机很占CPU,要求配置太高。
2007-4-2 11:18
0
游客
登录 | 注册 方可回帖
返回
//