jsvmp04_某yuan宝日志还原rc4

rc4

我们看出来,这个乱码是通过+,一步步拼接而成的!

所以搜索前三位字符,看到第一次出现的位置

往上找181和和115从哪里来。

第一个181是从数组中取来的

找183怎么来,也就是173和10相加

7

不断网上看,猜测这里是乱码charCodeAt(181)得到取值10.

以上上面这里发现173是和10调换的!

这个就是0+1 然后1%256 =1

下面是,index:1,取值得到173。然后173+0= 0,然后173%256=173

对比如下rc4,对应图中框选的部分!

===计算二=

找对应代码日志:const K = S(S\[i + Sj) & 0xff];

10怎么来

181怎么来,从乱码中charCodeAt来!

115是数组index来

181^115

然后找198怎么来的,看到了181和115做了运算,可能是上面数组生成的!

然后String.FromChartCode()得到了如下图

对应了如下:

javascript 复制代码
result += String.fromCharCode(
        data.charCodeAt(n) ^ K
    );

==KSA

他上图是57...,直接搜这个数组最初的形态,发现了key!怎么知道是key的,直接根据运算来!

验证KSA

对应如下!

所以证明AI生成的这个rc4,没有问题!

最后只要拿铭文和密钥,传进rc4,再对比这个之前的密文是否相等即可

然后再将其验证(base64() === "之前base64")这个对比是否相等!

我们看到256位数组,知道里面的顺序换了,但是不知道是什么算法的时候。。。可以将日志发给AI去看

这里的index:1,得到了值173!

我们发现,它对0和56进行替换!

看56怎么来的,是这段charCodeAt来的,这也就是这段对应算法的密钥

substring(起始,终点索引),我们看到它截取的是4a3e22,截取出来了22,然后转成十六进制为0x22,最后转成了34。

一般出现256位数组,我们就可以猜测是AES或者RC4,但是AES是0x开头的,所以应该就不是。但是我们可以借助AI来解析!我们根据定位,可以随机截取一部分来验证!

相关推荐
damoluomu4 小时前
Node.js CMS 的官网和仓库,22 个一次收齐(五)
node.js
Flynt15 小时前
Deno 官宣一年后停更:我把它的招牌特性在 Node 26 和 Bun 里挨个找了一遍
node.js·deno·bun
孟陬1 天前
Node.js 中 `\b` 的作用
node.js·bun
小小荧1 天前
🚀 Node.js 之父离开 Deno,带着整个团队加入了 Cloudflare
前端·node.js
damoluomu1 天前
Directus 换掉 GPL 之后,Node.js CMS 到底怎么选?(四)
node.js
前端一小卒1 天前
搜索 API 额度用完返回空数组,Agent 就开始一本正经地胡说
前端·javascript·node.js
濮水大叔2 天前
Cabloy 双引擎架构详解:Vona 与 Zova 是如何协作的
typescript·node.js·全栈
LRL_2 天前
跨平台 Node 模块安装指南:如何利用 pnpm/npm 配置`supportedArchitectures` 锁定平台依赖
前端·npm·node.js
逍遥5966070102 天前
网络设备交换机路由器 AI 配置助手
node.js·硬件工程