- 博客(5)
- 收藏
- 关注
原创 美团jsvmp反编译
本文记录了美团JSVMP(JavaScript Virtual Machine Protection)反编译的第一部分研究。作者通过AST将JSVMP的控制流还原为switch结构,展示了一系列操作指令的实现逻辑,包括变量赋值、数学运算、逻辑运算、对象操作、异常处理等。这些指令通过自定义编码器编译成机器码,形成一个虚拟机的执行环境。文章提供了详细的代码片段,展示了JSVMP如何处理各种JavaScript操作,为后续建立指令映射关系奠定了基础。
2025-09-13 16:19:40
871
原创 app实战入门练习1 嘟嘟牛
用js还原的时候需要注意 如果调用crypto-js库进行md5加密 toStrin() 是hex后的结果。顺着去找方法 在初始化key和iv的时候 对key又进行了md5 把MD5的结果变成最终的key进行加密。可以看到 出现了encrypt的结果 这里面很多都是固定的参数。其中key 是通过了md5 进行了一步转化 成为最终key。现在sign解决了 接下来看最终的结果如何实现的。可以看到上图所示 已经出来了sign的结果。发送的数据是加密的 返回的数据也是加密的。首先先要看的就是跟包名有关的地方。
2025-01-06 01:03:06
366
原创 QQ音乐 sign加密 jsvmp纯算法还原
然后我选择先在case 78 插装 等到了 要进行的加密的时候 再打开swicth 慢慢跟一下可以减少看log的负担。可以发现{0:0,1:1,2:2......} 的作用其实就是 通过映射表找到对应的字母所对应的数字0-15。为了更深一步的说明 我们在仔细看一下里面有一个{0:0,1:1,2:2......}这个是干啥用的。然后又从字符串取了index为23的5 然后把一开始的80和5 相加得到85。通过日志可以看到 对上一步的字符串取了index是22的’5‘然后又取了字符串的第25位”0“
2024-09-25 05:59:42
1560
原创 京东h5st4.7.4(9段) 价值1000元?纯算奶妈级教学
可以先查看入参和结果在这里是一个异步操作,这里等待的时候是pending,完成的时候是fullfill就可以看到h5st的生成。为了细致的知道所有内容,本文建议在跟栈在call的地方和平坦流位置进行插装,可以跟栈时候详细的看到所有内容。当发现是通过函数来执行的时候如果通过日志没法清楚地知道里面的过程,就是点进去跟栈,接下来进入到第二层。最简单的办法就是跟栈,找到主要的位置插装。ƒ test(tk,fp,ts,ai,algo),//接口来的。最主要的就是能抠出来他的算法,抠出来你就已经成功一大半了。
2024-09-13 02:13:57
3802
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅