Interchouette-ITC/evaluator
GitHub: Interchouette-ITC/evaluator
Evaluator 是一个用于评估网站上 JavaScript 函数参数的工具,支持 Web API 调用和 Rust CLI 批量处理。
Stars: 2 | Forks: 2
# _Evaluator_
本项目旨在简化对网站上 JavaScript 函数参数的评估。
通常用于辅助反混淆 ,使用 `String.fromCharCode` 或 `window.eval` 或其他类似 `JSON.stringify` 的函数。
## 部署在 [Render](https://render.com/) 的 [evaluator.onlyeum.io](https://evaluator.onlyeum.io/)(beta)
Render 将在后续步骤中从 Interchouette Docker 镜像重新部署。
## 参考
-
-


# 快速入门与文档
## API
使用
```
evaluate/?url=[site url]&function=[function to evaluate]
```
示例(前端开发端口 4200)
```
http://localhost:4200/evaluate/?url=https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_eval&function=window.eval
```
生产环境 / Docker Node gateway 监听端口 **4000**。网站的截图会包含在响应流中。
# Docker
镜像(主要):
- Docker Hub: `interchouette/evaluator`
- GHCR: `ghcr.io/interchouette-itc/evaluator`
- 个人 GHCR(可选):`ghcr.io/groussac/evaluator`
之前的 Hub 镜像 `gregoshop/evaluator` 已**废弃**。
在仓库根目录下构建并运行:
```
make docker-build
make docker-run
```
或者:
```
docker build -f docker/Dockerfile -t interchouette/evaluator:latest .
docker compose -f docker/docker-compose.yml up
```
访问 http://localhost:4000/
推送 `:dev`(在登录 Hub/GHCR 后):
```
make docker-build-dev
make docker-push-dev
```
### CI / CD
| Workflow | 触发条件 | 执行操作 |
| --- | --- | --- |
| `ci.yml` | PR / push 到 `dev` | 安装依赖并运行 `npm run build` |
| `docker-build-push-dev.yml` | 手动 | 构建并推送 `:dev` 镜像 |
| `release.yml` | GitHub Release `vX.Y.Z` | 发布 `:X.Y.Z` 和 `:latest`(tag 必须与 `package.json` 版本一致) |
要发布 release 镜像:更新 `package.json` 版本,打上 `vX.Y.Z` tag,然后创建 GitHub Release。
# 开发
## 前置条件
- 宿主机上的 Node.js `>=22`(你已经有当前的 Node;agents 不得安装另一个)
- npm `>=11`
- Docker 镜像构建使用 `node:26-bookworm-slim`(与 `engines.node` 匹配;非 root runtime,参见 `docker/Dockerfile`)
```
npm install
```
## 开发服务器
```
npm start
```
开发界面 UI:http://localhost:4200/(已配置 API 代理;Nest 后端运行在 3333)。
## 构建
```
npm run build
```
构建产物位于 `dist/`。运行生产环境 Node gateway + Nest:
```
npm run serve
```
然后打开 http://localhost:4000/
## 测试
```
npm test
```
# Rust CLI
位于 `./evaluator` 的批量评估辅助工具:
```
cd ./evaluator
cargo build
cargo run -- -p All-Live-Magento-Sites.csv -f window.eval -n 5 -s checkout
```
参数:
- `-path` / `-p` CSV 文件(第一列为网站域名)
- `-function` / `-f` 要评估的函数
- `-nb_threads` / `-n` 线程数
- `-timeout` / `-t` 导航超时时间
- `-search_pattern` / `-s` 要搜索的模式
# 许可证
GNU General Public License v3.0 or later(参见 `LICENSE` / GitHub)。
### 安全性
### 错误
如果你发现拼写错误或其他错误,请在默认工作分支上提交一个 pull request。非常感谢。
标签:CMS安全, JavaScript, MITM代理, Syscall, Web开发, 代码反混淆, 可视化界面, 安全辅助工具, 数据可视化, 自动化攻击, 请求拦截