逆向-加壳工具介绍
大家好,又见面了,我是你们的朋友全栈君。
经过两周尝试手动编写加壳程序,目前也只是能实现给PE文件添加新区块,后面还有重定位表的修复,地址输入表的处理,虚拟机和花指令技术等反调试手段…一大串要学习的工作,几乎就是放弃了吧,通过这两周学习能让自己对PE文件和偏移地址、虚拟地址有一定了解也算不亏。目前就是转而向使用工具方向了。 目前加壳的两个主要方向是压缩和加密。
压缩壳
压缩壳以UPX为代表,使用方法在前面的文章中有,此类壳的功能已压缩为主,对文件的加密效果几乎没有,Peid等侦壳工具可以轻而易举地发现这些壳,相应也有较成熟的脱壳机来实现。所以当文件有较高的存储性能要求,且代码保密程度是可以开源时,才比较适合使用此类壳处理。
加密壳
常见的加密壳有ASProtect和Armadillo穿山甲,这两种工具使用较为广泛,加密效果较强,但就像密码一样,没有激活成功教程不了的密码也没有脱不掉的壳,其使用的广泛性也增加了其关注度和可研究性,目前针对ASProtect好像已经有了可用的脱壳机。 本文把穿山甲的使用流程展示如下: 加壳流程与工程创建相似,首先在工具内创建工程
然后输入工程名和版本号
在第二栏中选择需要保护的文件,需保护的次要文件为主文件调用的DLL等,也可不选。
后续可一直跳过使用默认,或自行更改,不影响加壳过程,重要的是证书的设置,在最后一栏证书选择新建后可看到如下页面:
首先输入证书名称及加密模板,此处的模板不等于密码,版本密钥可根据提示选择,其余的设置根据需要选择或默认即可。注意此时不要选默认,否则会导致后面密码设置出错,证书设置如图:
配置好后关闭设置页面可见如下界面:
点击工具栏中的锁头按钮即可开始加壳,成功后弹出如下消息框:
此时运行加壳后的文件会需要用户名和密码,但我们还没设置呢,这时候的默认密码会是啥我也不知道,不管怎样需要我们先自行设置一个密码。点击如图按钮设置密码:
点击后会出现如图设置界面:
单击证书名选择证书,输入用户名后单击创建密钥即可见产生的密钥:
再次运行并输入用户名和密钥程序可成功运行:
但是这种方法需要我们每次使用加壳后的文件都输入密钥,无疑降低了用户的使用体验,目前还没有找到其他的设置方法。
虚拟壳 VMProtect
这种壳其实是属于加密壳的一种,但是由于其特殊性值得拿出来单独说一下,使用计算机虚拟机技术,该技术与我们使用的VMware不大相同。前面两种保护技术虽然侧重点不同,但原理类似,都是给文件加上一层区块,本质没有修改文件源代码,使得文件被脱壳只是时间问题,但VMProtect是将被保护文件的代码转化到虚拟机下运行,虚拟机的编译器将指令编译成伪指令系统的指令执行,激活成功教程者很难理解虚拟机变换后的指令。目前对这种保护技术的评价是:以目前的激活成功教程理论来说,几乎不可能激活成功教程。 但是优异的保护以性能为代价,虚拟机处理后的文件,体积成倍上升,执行效率也大幅下降,所以只适合对关键代码进行保护。VMProtect界面如下:
选项中可用对保护的内容等信息进行设置:
设置好后点击编译按钮即可生成文件,可以说比较简单易用了。
总结
- 压缩壳工具:UPX,该壳可以实现对文件的压缩功能,保护性较低,脱壳基本不用费什么周章,若对文件存储性能有要求,且代码可以开源的话再考虑采用。
- 加密壳工具:VM protect ,该工具使用虚拟机技术对代码进行加密,效果可以说是目前加壳领域最强,且资料显示以目前的激活成功教程理论解密VMP保护下的文件是几乎不可能的。但优异的保密性以性能为代价,虚拟机技术处理文件会使文件体积成倍上升,执行效率也显著下降,所以可以用于保护核心代码。
- 普遍应用的工具,ASP和穿山甲,这两种工具使用较多也较为普遍,性能和加密性比较平衡,但针对的研究也较多。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/153647.html原文链接:https://javaforall.cn
相关文章
- PDF转换图片小工具(高清、无水印、支持随意页数)[通俗易懂]
- Android逆向工具介绍
- 十款最实用的Android UI设计工具
- CDR2022精简网页版矢量插图工具介绍
- 你必须了解的10款服务器监控工具有哪些_nmon监控工具使用方法
- rar压缩文件密码破解工具介绍
- CleanMyMac X2023绿色版老牌清理工具功能介绍
- REINVENT2.0:阿斯利康基于AI的从头药物设计工具
- 快速打包、发布和管理应用——AppUploader工具介绍
- 22.1K Star一款超级优雅的JSON数据可视化工具!
- 大数据分析工具Power BI(三):导入数据操作介绍
- 适用于 DevOps 和 SRE 的顶级监控工具
- 上传iOS应用变得更加容易 - 在Windows上架iOS APP的工具介绍
- pdf增强插件:Enfocus PitStop Pro 2022 for Mac(PDF文件编辑和校验工具) 介绍及特点
- ReCap Pro 2021:实现高效数字化线桥建模的先锋工具 软件介绍+ReCap全版本安装包
- Word批量转PDF工具 便携版
- PostgreSQL工具pgAdmin的介绍及使用
- MongoDB关于可视化工具mongodb-compass介绍
- Spark项目之电商用户行为分析大数据平台之(十)IDEA项目搭建及工具类介绍详解大数据
- MySQL监控:有效利用实用工具(mysql监控工具)
- 提升工作效率:Oracle工具介绍(oracletool)
- MySQL 命令行操作实用工具(mysql命令工具)
- MySQL管理:探索管理工具的作用(mysql一般用什么工具)
- PAM Linux:保障Linux系统安全的必要工具(pamlinux)
- 刻录Linux:简单而实用的工具(刻录linux工具)
- 使用Redis操作简单设计一个工具类(操作redis的工具类)
- exporacle数据库中的impexp 工具实用介绍(oracle中的imp)