特点 不同的压缩壳会先将 pe 文件压缩,载入内存后进行解压缩(TLS函数内)然后运行,而 vmp 是修改 pe文件中的汇编指令为一...
原创
2022-07-19 10:08:55
1179阅读
现在的VMP的比较常见了,应该也是稳定性满足要求了,今天来分析一波,如有不当还请各位大佬指正实际上 libdexjni.so在不同的APP中体积会不一样,应该是硬编码写入字符串和指令导致的1-VMP还是先看下opcode部分知识,DEX指令格式代码转换成DEX指令先看代码对应的第一条指令是每条指令是2字节,所以先看第一条 6f 20,根据官方文档 6F的解释是 invoke-super
转载
2023-08-17 16:14:10
340阅读
是一款虚拟机保护软件,是目前最为流行的保护壳之一。VMProtect将保护后的代码放到虚拟机中运行, 这将使分析反编译后的代码和破解变得极为困难。除了代码保护,VMProtect 还可以生成和验证序列号,设置过期时间,限制免费更新等等。静态和动态分析一个软件产品可以使用静态或动态分析方法来进行分析。静态分析意味着保护破解算法基于反汇编结果分析或受保护应用程序的反编译。破解加密或动态变化的
VMP加壳的选项中,有个内存效验选项,默认是勾上的,于是,默认的加壳后的程序,只要修改1个字节,程序就会报错。比如,我把加了VMP2.06后的记事本程序,用Hexworkshop打开,把最后一个字节,修改成90,如图:然后保存后,打开程序,就会报如下错:下面就来分析下,如何过这个效验。VMP中,进行效验,都是由handler VM_CRC来进行的,大致的过程可以描述如下:if(VM_CRC(dwC
这次爆破的是某编辑类软件,版本是32位绿色版本:V4.3.1 1、OD打开后发现了VMP0段,这里下个内存访问断点: 又来到这里了,非常明显的VMP入口特征: 一大堆push指令又开始保存物理寄存器;同时让esi指向虚拟指令集;和上面一篇文章分析的混淆手法一模一样,个人猜测用的
转载
2024-01-30 06:15:00
345阅读
好久没有到博客写文章了,9月份开学有点忙,参加了一个上海的一个C
原创
2023-07-21 10:29:00
76阅读
# Go语言程序使用VMP加壳的科普
## 引言
在现代软件开发中,保护源代码和增加程序安全性变得越来越重要。VMP(VMProtect)是一种流行的保护工具,它能够对可执行文件进行加壳,以防止反向工程和未经授权的复制。在这篇文章中,我们将探讨如何使用VMP对Go语言程序进行加壳,并提供相关的代码示例。
## 什么是VMP?
VMProtect是一种软件保护解决方案,提供多种加壳技术以保护
一、加壳技术识别、二、VMP 加壳示例、三、Dex2C 加壳示例、
原创
2022-03-07 15:38:09
2440阅读
一代壳dex整体加固第一代壳主要是对dex/apk文件整体加密,然后自定义类加载器动态加载dex/apk文件并执行。在动态加载dex/apk文件的时候有落地加载和不落地加载,落地加载就是通过DexClassLoader从磁盘加载dex/apk文件,不落地加载就是通过InMemoryDexClassLoader从内存中加载dex/apk文件。下面以落地加载为例(不落地加载实现原理类似)。一代壳实现原
转载
2023-08-03 14:47:41
340阅读
VMProtect完美脱壳过程1.查看程序这是我自己写的一个VB的小程序,长得有点丑,别介意。然后自己加了一个壳,是VMProtect v.1.6x - 2.03的壳。接下来我们国际惯例,用PEID,EXEinfo PE查一下壳 可以看到是加了VMP的壳的,VMP壳的介绍我会放在帖子的最后哦。2.拉到OD去啦~ push 0xE131EEA3 这其实就是被V
先把核心原理记录一下,代码随后再补。PRE、dex文件结构知识和加壳原理 先看下dex文件的基本结构 对于加壳主要关注3个关键字: 1)checksum 文件校验码,使用alder32算法,校验文件除了maigc和checksum外余下的所有文件区域,用于检查文件错误。 2)signature 使用SHA-1算法hash除了magic ,checksum和signature外余下的所有
转载
2023-10-08 07:29:33
208阅读
目前针对移动应用市场上安卓APP被破解、反编译、盗版丛生的现象,很多APP开发人员已经意识到保护APP的重要性。而对于移动应用APP加密保护的问题,如何对DEX文件加密尤为重要。那么接下来,我们就先介绍一下什么是App加壳和加壳的原理,利与弊等。 一、什么是加壳?加壳是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作。大多数病毒就是基于此原理。是应用加固的一种手法
转载
2024-03-07 11:02:36
30阅读
Java定制类加载器实现Java加壳Java中有哪些类加载器?1. 顶层类加载器/引导类加载器:BootstrapClassLoader2. 拓展类加载器:ExtClassLoader3. 系统类加载器:AppClassLoader4. 线程上下文类加载器:con
转载
2023-08-13 21:14:21
322阅读
一、加壳特征识别、1、函数抽取 与 Native 化加壳的区分、2、VMP 加壳与 Dex2C 加壳的区分、
原创
2022-03-07 15:38:33
615阅读
一、DEX 整体加壳、二、函数抽取加壳、三、VMP 加壳、四、Dex2C 加壳、五、Android 应用加固防护级别、
原创
2022-03-07 15:34:25
1882阅读
作者介绍:周科,腾讯工程师,QQ动漫Android主力开发,从事过Rom开发,参与过手Q阅读、手Q趣味来电等项目,对Android底层原理有深入理解。前言说起壳可能有的同学并不太了解,简单的说,计算机软件领域所说的壳实际上是一种软件加密技术。与自然界中的壳类似,花生用壳保护种子,乌龟用壳保护自己的身体,而我们写的程序为了在一定程度上防止被逆向分析,也可以给它加壳。壳主要分为两大类:加密壳和压缩壳,
转载
2023-10-08 13:09:30
273阅读
#0x00 前言安卓应用加固技术是伴随安卓应用破解技术一同发展起来的。加固技术分为加壳保护和反反汇编保护技术。市面上成熟的加固厂商一般会使用加壳保护技术配合反反汇编技术对安卓应用进行加固。安卓反反汇编技术的总结在我以下博客中将进行详细探讨(未写完),链接:反反汇编:反动态调试: 安卓应用加壳技术的发展可以划分为以下几代壳技术:第一代壳——动态加载壳:对用户端的Dex、so、资源进行混淆及
转载
2023-10-09 13:24:02
23阅读
好久没有到博客写文章了,9月份开学有点忙,参加了一个上海的一个CHINA SIG信息比赛,前几天又无锡南京来回跑了几趟,签了阿里巴巴的安全工程师,准备11月以后过去实习,这之前就好好待在学校学习了。这段时间断断续续把《加密与解码 第三版》给看完了,虽然对逆向还是一知半解,不过对VMP虚拟机加壳这块有了一点新的认识。这里分享一些笔记和想法,没有新的东西,都是书上还KSSD里看来的,权当笔记和分享,大
转载
2024-01-28 07:59:46
248阅读
加壳的实现我是个初学者,所知有限,难免会有错误,如果有人发现了错误,还请指正。 先大致说一下加壳的原理,即在原PE文件(后面称之为宿主文件)上加一个新的区段(也就是壳),然后从这个新的区段上开始运行;也就算是成功的加上了壳;下面我们就说一下具体的实现。 这个工程有两个项目,一个用来生成壳的Win32项目(dll类型),另一个是实现加壳的MFC项目; 加壳的项目界面是用
转载
2024-01-19 23:53:21
97阅读
加壳软件的实现原理篇 Author: x0R Heap Heap棕色:代表HEAP区,也就是动态分配的内存区域. Protected Program Program蓝色:代表被加密后的源程序代码区  
转载
2024-06-30 12:35:04
39阅读