精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

聊一聊虛擬機保護的技術

云計算 虛擬化
所謂虛擬機保護技術,是指將代碼翻譯為機器和人都無法識別的一串偽代碼字節流;在具體執行時再對這些偽代碼進行一一翻譯解釋,逐步還原為原始代碼并執行。

[[224947]]

虛擬機概覽

所謂虛擬機保護技術,是指將代碼翻譯為機器和人都無法識別的一串偽代碼字節流;在具體執行時再對這些偽代碼進行一一翻譯解釋,逐步還原為原始代碼并執行。

這段用于翻譯偽代碼并負責具體執行的子程序就叫作虛擬機VM(好似一個抽象的CPU)。它以一個函數的形式存在,函數的參數就是字節碼的內存地址。

將虛擬機應用到商業中的保護殼現有三款:Vmprotect,themida和 execrypt。

虛擬機架構

我們知道,代碼中的指令多種多樣,組織形式也千變萬化;虛擬機不可能針對每一種具體情況都進行翻譯處理。必須對所有可能遇到的指令先進行抽象歸類,然后分解為若干簡單的小指令,再交由各個專門的子程序(handler)去處理。

學過編譯原理的同學應該都知道三元式代碼吧,也叫做3地址代碼(three adress code)。即不論多么復雜的賦值公式,都可以分解為數個3地址代碼式序列。(什么是3地址代碼,1段3地址代碼只完成1次運算,譬如1次二目運算、1次比較,或者1次分支跳轉運算。)

與此類似,不論多么復雜的指令,都可以分解為一串不可再分割的原子指令序列。

虛擬機(CPU)的體系架構可分為3種,基于堆棧的(Stack based),基于寄存器的(Register based)和3地址機器。我們只講述基于堆棧的虛擬機架構(Stack based);這種架構的虛擬機需要頻繁操作堆棧,其使用的虛擬寄存器(虛擬的eax、ebx等等)保存在堆棧中;每個原子指令的handler都需要push、pop。

現在的CPU都有大量的寄存器,堆棧一般只是在函數傳遞參數時使用(譬如PC機用的x86系列CPU)。但也有一些CPU只操作內存,沒有堆棧,也沒有寄存器。使用這種CPU的機器稱之為3地址機器。

基于堆棧的CPU或虛擬機沒有臨時變量、寄存器的概念,所有的東西都放入堆棧。由于指令中不需要指定操作數,所以其指令相對基于寄存器的要短。也因此相對簡單,在嵌入式系統中運用較多。用于保護代碼,我們也選擇這種。

舉例,譬如指令add,基于堆棧的CPU首先從堆棧里Pop兩個數,然后將兩數相加,再把和Push到堆棧。Add指令只占用1個字節。而基于寄存器的CPU對應指令為 add Reg1,Reg2,需要3個字節。請仔細想象一下沒有寄存器的CPU,它的指令是怎樣的,該會是多么簡潔。當然,指令簡潔帶來的缺點就是效率低下。

我們這里談的虛擬機保護技術,就是把基于寄存器的CPU代碼,改造成基于堆棧的CPU的偽代碼。然后再由基于堆棧的虛擬機(CPU)對偽代碼解釋執行。

指令系統

關鍵在于設計一個虛擬的基于堆棧的虛擬機(CPU)的指令系統。這個指令系統越簡潔,復用性越高越好。

還是以add 指令為例。X86系列CPU的add指令有許多格式,譬如:add reg,imm 、add reg,reg、add reg,mem、add mem,reg等等。而基于堆棧的虛擬機CPU則沒有這么多花樣,就一個單單的add指令,參數和返回都是在堆棧里。

我們需要為我們的虛擬機CPU模擬實現這樣的add命令:

而原有的add命令的參數,我們需要翻譯為 push 命令 。根據push 的對象不同,需要不同的實現:

有Push指令了,也得有Pop指令:

基于堆棧的虛擬機指令系統就是這樣簡單的:單字節的動作指令(譬如add、dec),以及各式各樣的push、pop等堆棧操作指令。沒有復雜的寄存器與內存操作。我們需要把x86的CPU指令翻譯成虛擬機CPU的指令,譬如:

Call指令相對麻煩一點,因為Call的函數未必是虛擬機的偽代碼了。所以碰到Call指令,就要退出虛擬機,交由真實的CPU去處理了。代碼類似下面:

其余,要注意標志位的處理、不可模擬指令,以及指令的優化。還有異常處理,這里就不展開了。

VStartVM是虛擬機的入口,負責保存運行環境(各個寄存器的值)、以及初始化堆棧(虛擬機使用的變量全部在堆棧中)。

Bytecode是偽代碼;VMDispatcher對偽代碼逐個閱讀處理,然后分發給下面的各個子程序(Handler)。

加殼程序先把已知的X86指令解釋成了字節碼,放在PE文件中,然后將原處代碼刪掉,改成類似的代碼進入虛擬機執行循環。

VStartVM初始化后,堆棧情形如下:

edi指向VMcontext;esi指向偽代碼的地址;ebp指向真實堆棧的棧頂; 這三個寄存器在VM內不要再改了。

VMContext是虛擬機VM使用的虛擬環境結構:

VM之所以使用堆棧保存自己的寄存器結構,是考慮到多線程程序的兼容。

大家都知道脫殼時的堆棧平衡原理吧。同樣的,虛擬機在執行翻譯后的程序代碼時,也不可以隨便變動原來的堆棧地址。還需經常檢查在堆棧中的VMcontext結構不被沖掉。

責任編輯:武曉燕 來源: 看雪學院
相關推薦

2019-03-20 14:29:46

Linux虛擬內存

2018-11-29 09:13:47

CPU中斷控制器

2021-04-28 08:35:52

區塊鏈技術開發

2017-12-26 14:56:44

虛擬化基礎知識

2020-11-06 07:10:21

5G定位

2023-07-06 13:56:14

微軟Skype

2020-09-08 06:54:29

Java Gradle語言

2024-03-08 09:51:12

Linux網絡性能

2021-01-28 22:31:33

分組密碼算法

2020-05-22 08:16:07

PONGPONXG-PON

2023-09-22 17:36:37

2022-06-17 11:03:11

5G安全隱私

2022-02-09 16:23:07

網絡安全零信任技術

2018-06-07 13:17:12

契約測試單元測試API測試

2024-10-28 21:02:36

消息框應用程序

2021-08-01 09:55:57

Netty時間輪中間件

2023-09-27 16:39:38

2023-09-20 23:01:03

Twitter算法

2021-12-06 09:43:01

鏈表節點函數

2021-07-16 11:48:26

模型 .NET微軟
點贊
收藏

51CTO技術棧公眾號

四虎国产精品成人免费影视| 国产大学生校花援交在线播放| 免费看av成人| 欧美乱妇一区二区三区不卡视频| 明星裸体视频一区二区| 亚洲视屏在线观看| 欧美区国产区| 国产亚洲美女精品久久久| 一级 黄 色 片一| 蜜桃视频在线观看播放| 国产精品乱子久久久久| 国产亚洲福利社区| 国产一区二区在线视频聊天| 中文在线不卡| 精品自拍视频在线观看| 国产成人av一区二区三区不卡| 黄色在线免费观看网站| 99九九99九九九视频精品| 国产乱肥老妇国产一区二| 日韩免费一二三区| 国产精品99视频| 亚洲精品有码在线| 日本成人在线免费| 91jq激情在线观看| 亚洲视频在线一区| 欧美色图亚洲自拍| 色婷婷av一区二区三区之红樱桃 | 麻豆精品国产传媒mv男同| 九九综合九九综合| 中文字幕在线观看二区| 婷婷综合成人| 亚洲精品一线二线三线| 久久成人免费观看| 手机av免费在线| 中文字幕免费不卡| 91av一区二区三区| 91精品国产乱码久久久| 欧美日韩视频| 精品久久久999| 国产亚洲精品精品精品| 四虎5151久久欧美毛片| 欧美日韩激情在线| www.九色.com| 超碰在线免费公开| 日韩毛片精品高清免费| 亚洲日本欧美在线| 波多野结衣一区二区| 久久久一区二区| 国产欧美一区二区白浆黑人| 超碰在线国产97| 97在线精品| 日韩有码在线观看| 免费黄色在线网址| 欧美先锋资源| 中文字幕国产精品| 99re6热在线精品视频| re久久精品视频| 国产一区二区三区丝袜| 黄色av片三级三级三级免费看| 爱高潮www亚洲精品| 日韩精品中文字幕一区| 精产国品一区二区三区| 99精品中文字幕在线不卡| 欧美性色欧美a在线播放| 日韩久久一级片| 日韩伦理在线一区| 洋洋成人永久网站入口| 亚洲成色www久久网站| porn视频在线观看| 亚洲天堂成人在线观看| 青青视频免费在线| 91福利区在线观看| 色偷偷久久一区二区三区| bt天堂新版中文在线地址| 俄罗斯一级**毛片在线播放| 国产精品不卡视频| 路边理发店露脸熟妇泻火| 蜜桃成人365av| 欧美丝袜一区二区| 日日躁夜夜躁aaaabbbb| 国产精品久久免费视频 | 日韩一本精品| 日本www在线观看视频| 亚洲色图19p| 人人妻人人澡人人爽欧美一区双 | 久久久极品av| 精品无码人妻一区二区三| 99国产一区| 国产精品久久精品| 精品久久久久成人码免费动漫| 另类欧美日韩国产在线| 99精品国产高清一区二区| 天天干天天干天天干| 国产日韩欧美高清| 欧美a级黄色大片| 在线天堂新版最新版在线8| 在线视频亚洲一区| 9191在线视频| 日本在线视频一区二区三区| 91精品国产一区二区三区| 久久久久亚洲无码| 欧美aaaaaaaaaaaa| 九九综合九九综合| 中文字幕日本人妻久久久免费 | 69久久夜色精品国产69| 国产成人精品亚洲| jlzzjlzz亚洲日本少妇| 国产伦精品一区二区三区在线| 亚洲av永久无码国产精品久久| 国产在线视频一区二区三区| 成人亚洲欧美一区二区三区| 国产男女无套免费网站| 99精品久久99久久久久| 欧美日韩一级在线| 456亚洲精品成人影院| 精品国产乱码久久久久久免费| 精人妻一区二区三区| 成人一区二区| 精品国产一区二区在线| 国产成人一级片| 精品一区二区三区不卡| 欧美一区二区三区四区五区六区 | 一区二区三区在线资源| 一区二区欧美在线| 日韩毛片一区二区三区| 国产激情精品久久久第一区二区| 国产精品久久久久久久久久久久冷| 欧洲精品久久一区二区| 自拍偷拍欧美激情| 日韩大片一区二区| 视频在线观看免费影院欧美meiju| 精品国产免费久久| 国产一区二区三区在线视频观看| 亚洲久久一区二区| 91手机在线视频| 国产网站在线免费观看| 五月综合激情网| 99热这里只有精品2| 日韩欧美在线精品| 韩剧1988免费观看全集| 日韩精选在线观看| 国产亚洲精品免费| 久久久久免费精品| 国产伦精品一区二区三区视频 | 欧美久久高跟鞋激| www中文在线| 秋霞电影网一区二区| 日本精品一区二区| 毛片在线导航| 欧美mv日韩mv| 久久免费黄色网址| 成人av网站在线观看| 国产乱淫av片杨贵妃| 9l亚洲国产成人精品一区二三| 国产亚洲xxx| 中文字幕欧美人妻精品| 91伊人久久大香线蕉| 日本中文字幕网址| 一区二区三区四区视频免费观看 | 亚洲激情一区| 精品一区二区三区国产| 岛国成人毛片| 欧美亚洲日本国产| 一本在线免费视频| 久久久国产亚洲精品| 日本一区二区久久精品| 丰满的护士2在线观看高清| 精品播放一区二区| 日本老熟俱乐部h0930| 国产aⅴ精品一区二区三区色成熟| 日韩精品一区二区三区外面 | 久久精品人人爽| 国产91精品看黄网站在线观看| 国产福利一区二区| 国产一级爱c视频| 久久99国内| 国产精品自产拍在线观| 成年人视频在线观看免费| 欧美巨大另类极品videosbest| 西西444www无码大胆| 开心九九激情九九欧美日韩精美视频电影 | 日本免费久久| 亚洲成人三级在线| 日韩免费av网站| 日韩久久一区二区| 国产人妻黑人一区二区三区| 三级一区在线视频先锋| 一区二区三区四区免费观看| 国产精品乱战久久久| 国产精品第10页| 18在线观看的| 亚洲摸下面视频| 国产欧美日韩成人| 亚洲欧美日韩在线播放| 中文av字幕在线观看| 精品福利电影| 亚洲欧美一区二区原创| 九九热播视频在线精品6| 国产精品天天狠天天看| 97超碰人人在线| 在线观看日产精品| 中文字幕第24页| 国产成人av电影在线观看| 日本三级免费观看| 欧美日韩免费观看一区=区三区| 成人欧美一区二区三区视频| 日本在线中文字幕一区二区三区| 国产亚洲欧洲高清| 一二三区中文字幕| 欧美日韩国产综合新一区| 久艹在线观看视频| 久久午夜免费电影| jjzz黄色片| 99精品久久| 国产欧美综合一区| 青青草原综合久久大伊人精品| 国产主播欧美精品| 欧美性xxx| 国产69精品久久久久99| 日本大臀精品| 日韩一级免费观看| 国产原创中文av| 欧亚洲嫩模精品一区三区| 日韩av免费网址| 亚洲综合一二区| 99鲁鲁精品一区二区三区| 久久精品亚洲麻豆av一区二区| 一起操在线视频| 久久久久久黄| 久久久999视频| 黄色一区二区三区四区| 青青草原网站在线观看| 久久成人综合| 偷拍视频一区二区| 国产成人3p视频免费观看| 精品无人区一区二区三区竹菊| a成人v在线| 欧美激情一区二区三级高清视频| 国产又爽又黄网站亚洲视频123| 欧美在线不卡一区| 久草视频一区二区| 日韩欧美亚洲国产一区| 精品国产乱码一区二区| 亚洲第一综合色| 日本一区二区三区四区五区| 亚洲一区二区在线播放相泽| 欧美另类视频在线观看| 亚洲精品videosex极品| 欧美成人精品一区二区免费看片| 91美女福利视频| 欧美成人午夜精品免费| 国产a区久久久| 久草免费资源站| 成人黄色在线网站| 自拍视频一区二区| 久久久久国产成人精品亚洲午夜| 极品人妻一区二区| 粉嫩av一区二区三区在线播放| 性猛交ⅹ×××乱大交| 美女在线视频一区| 97人人模人人爽人人澡| 高清国产一区二区三区| 久久午夜夜伦鲁鲁片| 久久精品人人做人人综合| 美女100%露胸无遮挡| 国产精品国产三级国产| 国产精品九九九九九九| 亚洲一区二区三区自拍| 午夜影院在线看| 一级精品视频在线观看宜春院| 成年人视频软件| 亚洲嫩草精品久久| 日本特黄一级片| 色999日韩国产欧美一区二区| 日本一区二区网站| 亚洲国产综合色| 亚洲国产精品一区二区久久hs| 久久夜色精品一区| 亚洲精品电影院| 一区二区三区欧美亚洲| 啦啦啦免费高清视频在线观看| 亚洲高清视频中文字幕| 伊人中文字幕在线观看| 91精品国产入口| 国产精品福利电影| 欧美日韩精品一区二区三区蜜桃| 亚洲国产精品无码久久久| 欧美精品三级日韩久久| 日本黄视频在线观看| 中日韩美女免费视频网址在线观看| 久久av少妇| 欧美成aaa人片免费看| 国产污视频在线播放| 91精品久久久久久久久久入口 | 亚洲男同1069视频| 国产高潮久久久| 在线成人av影院| 无码精品黑人一区二区三区| 精品国产一区av| 92国产精品| 999精品视频一区二区三区| 国产精品欧美三级在线观看| 久久青青草原一区二区| 婷婷激情综合| 欧美一级黄色片视频| 国产成人综合视频| 亚洲综合自拍网| 亚洲欧洲日韩女同| 五月激情丁香网| 亚洲国产欧美一区二区丝袜黑人 | 91精品国产综合久久香蕉的特点 | 一本色道久久综合亚洲精品婷婷| 嗯~啊~轻一点视频日本在线观看| 欧美精品www在线观看| 日韩高清中文字幕一区二区| 国产高清自拍一区| 久久久久久久久国产一区| 欧美另类videosbestsex日本| 午夜欧美精品久久久久久久| 国产精品69页| 波多野结衣在线一区| 偷拍夫妻性生活| 午夜成人免费视频| 亚洲AV无码一区二区三区性| 日韩激情片免费| 欧美性猛片xxxxx免费中国| 国产日产亚洲精品| 欧美日韩伦理在线免费| 日韩av在线综合| 99re亚洲国产精品| 伊人365影院| 精品欧美久久久| 男人添女人下部高潮视频在线观看| 91成品人片a无限观看| 亚洲日本va午夜在线电影| 性欧美18一19内谢| 久草精品在线观看| 亚洲高潮女人毛茸茸| 在线观看日韩一区| youjizz在线播放| 久久久久久久电影一区| 日韩一级淫片| 黄色录像特级片| 国产剧情av麻豆香蕉精品| 老熟妻内射精品一区| 91精品国产美女浴室洗澡无遮挡| 手机福利小视频在线播放| 日韩在线欧美在线| 亚洲欧洲专区| 超薄肉色丝袜足j调教99| 国产精品影视在线观看| 91网站免费视频| 色婷婷亚洲一区二区三区| 男人天堂综合| 国产精品精品视频| 天海翼精品一区二区三区| 黄色网zhan| 国产成人精品亚洲日本在线桃色 | 日韩大胆成人| 国产青青在线视频| 久久精品亚洲麻豆av一区二区| 久草网在线观看| 欧美日韩国产一级片| 操你啦视频在线| 国产成人精品一区二区三区福利| 国产精品久久久久久久免费观看| 六月丁香婷婷激情| 国产拍揄自揄精品视频麻豆| 在线观看 中文字幕| 精品亚洲aⅴ在线观看| 色呦呦呦在线观看| 国产日韩欧美在线观看| 欧美在线不卡| 国产又黄又粗又猛又爽的视频| 亚洲自拍偷拍av| 亚洲日本在线播放| 国产精品视频xxxx| 成人系列视频| 九九九久久久久久久| 欧美日韩精品在线视频| av福利在线播放| 999热视频在线观看| 亚洲中字在线| 免费中文字幕日韩| 日韩精品在线视频观看| 97欧美成人| 久久99久久久久久| 国产婷婷色一区二区三区四区| 青青国产在线观看| 最新日韩中文字幕| 国产精品qvod| 成 年 人 黄 色 大 片大 全| 成人aaaa免费全部观看| 中文字幕一区2区3区| 欧美华人在线视频| 欧美日韩黑人| www.17c.com喷水少妇| 欧美日韩亚洲一区二区三区| 日本a级在线| 欧美最大成人综合网|