【原创】最容易看懂自制jsvmp,开源啦

facelessJsvmp是什么?

单栈实现的js代码虚拟化保护程序,加固代码支持在浏览器和nodejs中运行

项目地址

githubhttps://github.com/Alanhays/facelessJsvmp

使用说明

注:请勿将加固后的代码用于生存环境,由于项目开源导致加固代码很容易被反编译。

base目录文件

待加固的js源文件:source.js
编译前预处理的源文件:preprocess.js
jsvmp代码加固程序:jsvmp-1.0.0.js(直接run即可)
加固后输出的文件:output.js

pass目录文件

已通过测试的算法有 HMAC-SHA256 | MD5 | SHA1 | SHA256 | SM3

存放一些通过测试的加密算法

实现原理

二进制代码虚拟化保护的基本步骤

image.png

JSVMP 的保护流程图

image.png

JavaScript 代码虚拟化过程示例

image.png

已知问题

YieldExpression 语法未实现 :yield
SpreadElement 语法未实现:…args

function* generatorFunction() {
  yield 1;
  yield 2;
  yield 3;
}
f(...args)

参考文献

JSVMP论文和专利:JSVMP 论文和专利.rar - 蓝奏云
大语言模型机器人AI

广告

本项目开源起,星球内上线同步更新课程,零基础的伙伴们可从零课程开始学习,二课程感兴趣可以学习。
课程:《零.jsvmp原理与AST基础》、《一.手把手带你反编译jsvmp》、《二.手把手带你实现jsvmp》
试听公开课请查看的投稿哦,地址: https://space.bilibili.com/247999712
逆向知识学习交流(星球): https://t.zsxq.com/104HdF074
微信号:AlanHays | QQ号:2757317549

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值