- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
代码高强度加密专家-ET智能虚拟化加密
“0”代码高强度加密专家-ET 智能虚拟化加密
在古代,人和人之间的信任并不是唯一要关心的问题,身份验证也很重要。如果只有
少数人能读会写,那么签名或许足以证明一个人的身份。但随着掌握读写知识的人越来越多,
印章逐渐成为“签署人”一种独特的记号。利用这种记号,便可证明信件、文档和法令签署人
的身份确实无误。但随着技术的发展,人们可轻松仿制出各式各样的印章,所以它也失却了
原先的“独特”性。事实上,伪造印章是件再容易不过的事情。
加密技术的出现最早在军队的通讯上。相传当年凯撒大帝行军打仗时为了保证自己的命
令不被敌军知道,使用了一种特殊的方法进行通信,以确保信息传递的安全。这种密码便是
著名的“凯撒密码(The Caesar Cipher )。他的原理很简单,说到底就是字母于字母之间的替
换。自凯撒大帝的年代开始,一直到当代计算机网络,通信技术在稳步地发展着,同时,保
障这些通信的安全也逐渐成为一项重要课题。
10-20 年前,那时懂计算机语言的人极少,懂得破解程序的人就更少了。后来IT 行业经
过几十年的迅猛发展,从DOS 时代走向WINDOWS 时代,程序理论走向软件工程理论,软
件加密解密技术也逐渐趋于成熟,这几年加密解密技术无论是软件还是硬件都一直像矛与盾
一样对抗着。
早期的加密压缩壳,那时我完全不明白它是如何完成这件事,只觉得很神奇,或者说它
们不是为了加密,而单纯是为了压缩,这种壳很好脱,简简单单的单步几下就能看到原来的
内容了。随着技术的逐渐发展,战场逐渐转向了对PE 文件的修改,如IAT 加密,不过还原
起来还是很简单。
随着时间的推移,一系列的新技术新思想都逐渐出炉,软件保护由PE 文件压缩走向对
PE 文件的保护,一系列的anti 出现,不过道高一尺,魔高一丈,这些都被Cracker 找出来
并饶过了它的anti 又一次看到了软件的真面目。以前的壳都是对PE 文件加密,而不会对代码
做任何改动,后来又出现了一项新技术:stolen code,修复这种壳开始有点费时了。
传统的保护软件都有一个共同的弱点,即他们都不修改源代码。保护方式仅仅是通过“信
封”原理将软件主体封装起来,然后通过一个装载器解压缩保护的软件主体,解压后的软件
在内存中很容易被转储并被非法修改。破解者拥有一系列反编译工具可以破坏这种保护,网
络上也有许多文章阐述如何脱壳常规的保护软件。
ET 智能虚拟化高强度加密软件是新一代的软件保护系统,不像市场上其它常见的保护软
件,ET 智能虚拟化高强度加密软件可以修改软件产品的源代码,转换部分代码为在虚拟机
上运行的字节码(bytecode )。
ET 智能虚拟化高强度加密是软件保护技术一个新的进步-VM 技术与硬件相结合高强度保
护,具有自设计实现的VM 引擎。通过对代码的变形来达到保护软件的目的,想修复被ET
智能虚拟化高强度加密保护的软件,用现有的解密理论是极其痛苦的。VM 的保护技术基本
原理。
VM 其实就是Virtual Machine (虚拟机)的缩写,这里说的VM 并不是像VMWare 那
样的虚拟机,而是将一系列的指令解释成 bytecode(字节码)放在一个解释引擎中执行。VM
的原理由一个虚拟机引擎由编译器、解释器和VPU Context (虚拟CPU 环境)组成,再配
上一个或多个指令系统。
编译器:将一条条X86 指令解释成自己的指令系统。
解释器:解释器附加在被加壳的软件中,用来解释这些自定义的指令。
指令系统:一套或多套自己定义的指令系统,用来虚拟执行这些bytecode 。
1 :设计一个好的、简洁的指令系统是很有必要的,写出越少却能执行最全的指令,就说明
这些指令复用性越高。
2 :在分析X86 指令时最好为它们分类,注意流程指令、不可模仿指令的处理。
3 :解释器的代码设计得越少越好,换来的速度可以变形一下。
首先加壳程序先把已知的X86 指令解释成了字节码,放在PE 文件中,然后将原处代码
删掉,
改成类似的代码进入虚拟机执行循环。
push bytecode
jmp VstartVM
VstartVM 是进入虚拟机的函数,它的代码大概类似这样的
代码:
// 进入虚拟机函数,我的最初版本是写死在VC 环境下的,不过这样处理起来很麻烦。
void _declspec(naked) VStartVM()
{
_asm
{
// 将寄存器压入堆栈, 由伪指令取
您可能关注的文档
最近下载
- 贵州省2023-2024学年高一上学期期末英语试题(含答案).pdf VIP
- 压力管道壁厚及开孔补强计算REV01.xls VIP
- IPC-2221C-EN TOC2023印制版设计通用标准 Generic Standard on Printed Board Design.pdf VIP
- 艺术类教师年度考核登记表范文.docx VIP
- 2025新人教新版八年级英语上册Unit 1 Happy Holiday课文语法知识讲解学案.docx VIP
- 七年级语文上册生字词.docx VIP
- 饮水机出货检验标准【V1.0】.doc
- 直播运营竞业合同协议.docx VIP
- 安全管理资料目录(新版).doc VIP
- 《建筑基桩检测技术规范》JGJ106-2014学习.pptx VIP
文档评论(0)