fix: update README

This commit is contained in:
rnet 2023-11-30 14:27:09 +08:00
parent 10af3e7a66
commit bfbc06bc8f

View File

@ -2,15 +2,15 @@
研究包括动态代码生成原理及动态cookie生成原理。
点赞是我坚持的唯一动力,希望该研究也能给一样好奇瑞数原理的人答疑解惑。
**点赞是我坚持的动力,希望该研究也能给一样好奇瑞数原理的人答疑解惑。**
## 博客文章
## 1. 博客文章
1. [瑞数vmp-动态代码生成原理](https://howduudu.tech/#/blog/article/1701276778000)
## 动态代码生成
## 2. 动态代码生成
### makecode子命令
### 2.1. makecode子命令
执行子命令`makecode`生成动态代码, 可以传入包含`$_ts.nsd``$_ts.cd`的文本文件或者直接给url让程序自己去拿。
@ -36,15 +36,24 @@ Examples:
main.js makecode -u http://url/path
```
### 手动获取动态代码和$_ts的方法
### 2.2. makecookie子命令
进行中...
## 3. 手动获取动态代码和$_ts的方法
目录`example/codes/`下的文件为手动保存,用于验证代码功能,如运行:`npm run test`后会比对程序生成的动态代码与`$_ts`文件是否与相关静态文件文本内容一致。
在文件中`http://wcjs.sbj.cnipa.gov.cn/c5rxzYrjRT2h/cCdzB9ZjDFks.294cc83.js`找到代码`_$_q.call(_$gP, _$_y)`并打入断点,通过控制台拿到相关文本:
当然也可以自己手动拿动态代码和$_ts以验证程序是否还有效可以通过控制台拿到相关文本
1. 在文件中`http://wcjs.sbj.cnipa.gov.cn/c5rxzYrjRT2h/cCdzB9ZjDFks.294cc83.js`找到代码`_$_q.call(_$gP, _$_y)`并打入断点(文件找不到可以通过其它两种方法定位);
2. 找到如第一条的js文件搜索`.call(`找到调用方法;
2. 通过代理cookie变动的方式打断点通过堆栈找到调用方法。
断点后复制相关文本:
1. 拿到动态代码:`copy(_$_y)`
2. 拿到`$_ts`: `console.log(JSON.stringify(window.$_ts))`,这里有点蒙,可以用`JSON.stringify(window.$_ts)`或者`copy(JSON.stringify(window.$_ts))`试试
初始的`$_ts`可以在这个文件入口处打断点获取。
*初始的`$_ts`可以在这个文件入口处打断点获取。*