首页
社区
课程
招聘
[分享][分享]ARM64 ELF vmp protect开源
发表于: 5小时前 223

[分享][分享]ARM64 ELF vmp protect开源

5小时前
223

分享一个我最近开源的项目 VMPacker,一个完整的 ARM64 Linux ELF 虚拟机保护系统。不同于商业 VMP 方案,这个项目完全开源,适合学习和研究 VMP 保护的实现原理。

关于我的研究初衷:

最初做项目时,仅通过 UPX 魔改加固,防护效果极差,程序频繁被破解,让我束手无策。

后来我在网上寻找 开源ARM64 架构的 VMP 类虚拟化保护方案,却发现几乎没有成熟可用的开源的项目【付费又很贵】

于是我决定从零自研一套 ARM64 指令级虚拟化保护引擎,最终才有了这个项目——专注于从根源上提升程序抗逆向、防破解能力

整个系统分为三个核心模块:

1. 指令解码器(Go)

基于 ARM Architecture Reference Manual 的 table-driven 模式匹配

支持 DP-IMM / DP-REG / Branch / Load-Store 四大指令族

解码结果为统一的中间表示(IR)

2. 字节码翻译器(Go)

将 ARM64 IR 翻译为 63 条自定义 VM 指令

处理 PC 相对地址重定位(ADRP/ADR → 绝对地址计算)

分支目标地址修正

Label 引用解析

3. VM 解释器 Stub(C → flat binary)

编译为位置无关的纯二进制

通过 PT_NOTE 段劫持注入到 ELF

运行时在栈上构建间接跳转表

CRC32 完整性校验

|层级|技术|作用|

| --- | --- | --- |

|Opcode 随机映射|每次生成不同的指令编码|逆向者无法直接识别语义|

|XOR 加密|enc[pc] = op[pc] ^ (key ^ (pc * 0x9E3779B9))|静态分析困难|

|字节码逆序|指令倒序存储,解释器反向遍历|增加分析复杂度|


[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!

收藏
免费 20
支持
分享
最新回复 (8)
雪    币: 4132
活跃值: (4645)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
6
3小时前
0
雪    币: 210
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
6
2小时前
0
雪    币: 5833
活跃值: (10037)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
火钳刘明
2小时前
0
雪    币: 85
活跃值: (156)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
火钳刘明
1小时前
0
雪    币: 3712
活跃值: (2231)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
6
XUEXI
1小时前
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
1小时前
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
火钳刘明
57分钟前
0
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
还可以
7分钟前
0
游客
登录 | 注册 方可回帖
返回