基于open·kritt 的 AI 漏洞挖掘流水线

admin
2
2026-10-08

优化后架构

┌─────────────────────────────────────────────────────────────────┐
│  Windows 11 主机(日常账户=非管理员)                              │
│  ┌─────────────────────┐  ┌──────────────────────────────────┐  │
│  │ Layer C: Hashcat    │  │  NVIDIA Studio Driver            │  │
│  │ (Windows 原生, 独占GPU)│  │  (唯一驱动, 勿在WSL装Linux驱动)   │  │
│  └─────────────────────┘  └──────────────┬───────────────────┘  │
└───────────────────────────────────────────┼─────────────────────┘
                                            │ GPU 半虚拟化直通
┌───────────────────────────────────────────▼─────────────────────┐
│  WSL2 · Kali(专用可销毁实例, 12GB, interop/automount=关闭)       │
│  ┌───────────────────────────────────────────────────────────┐  │
│  │ Layer A: open-kritt (Docker Compose, 固定release tag)      │  │
│  │  Frontend :5173 │ Backend :8080 │ Postgres :5432          │  │
│  │  Engine(持socket, 特权组件) │ 一次性job容器(root, 独立网络)  │  │
│  │  ── DOCKER-USER 出站白名单(可选加固) ──                     │  │
│  └───────────────────────┬───────────────────────────────────┘  │
│  Layer B: 仅出站到 api.deepseek.com (HTTPS, 凭证仅注入job容器)     │
└─────────────────────────────────────────────────────────────────┘
   文件交换方向: Windows → \\wsl$ → WSL (单向, 禁用反向 /mnt/c)

部署(门控式)

阶段 0:Windows 侧(Gate 0)

wsl --update; wsl --set-default-version 2
# 安装 Studio Driver 后:
wsl --install -d kali-linux

C:\Users\<你>\.wslconfig(加 sparse 防磁盘膨胀):

[wsl2]
memory=12GB
processors=6
swap=4GB
localhostForwarding=true
sparseVhd=true

wsl --shutdown,等 8 秒。Gate 0:任务管理器显示虚拟化已启用。

阶段 1:Kali 加固优先(Gate 1)

第一件事,/etc/wsl.conf:

[boot]
systemd=true
[automount]
enabled=false
[interop]
enabled=false
appendWindowsPath=false

wsl --shutdown 重启后:Gate 1:ls /mnt/c 应不存在;cmd.exe 应无法执行。此后 Windows→WSL 传文件用 \\wsl$\kali-linux。

阶段 2:运行时(Gate 2)

sudo apt update && sudo apt full-upgrade -y
sudo apt install -y curl git ca-certificates docker.io docker-compose-v2 clinfo ocl-icd-libopencl1
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
sudo usermod -aG docker $USER   # 重新登录

/etc/docker/daemon.json(日志轮转,防扫描日志撑爆 VHDX):

{"log-driver":"json-driver","log-opts":{"max-size":"50m","max-file":"3"}}

(注:正确键为 "log-driver":"json-file")sudo systemctl restart docker。

Gate 2:docker compose version ≥2.13;node -v =v22;nvidia-smi 出 1660S;clinfo | grep "Device Name" 见 GPU。

阶段 3:open-kritt(Gate 3)

cd ~ && git clone https://github.com/Kritt-ai/open-kritt && cd open-kritt
git tag --sort=-creatordate | head -5        # 选最新 tag
git checkout <tag>
./kritt setup    # 选 DeepSeek API key
./kritt start

确认 .env 中 ENGINE_CODEX_AUTO_UPDATE=false(或缺省)。

Gate 3:

  1. http://localhost:5173 可开;
  2. Accounts → Load DeepSeek models 拉取实时目录 → Run text API check 返回 OK1;
  3. ss -tlnp | grep -E '5173|8080|5432' 全部绑 127.0.0.1。

阶段 4:出站白名单(可选加固,SRC 范围合规用)

官方明确:egress 管控须在 Docker host 层实现2。最小示例(按你的目标范围改 IP 段):

# job 容器默认在独立 docker 网络; 在 DOCKER-USER 链限制其出站
sudo iptables -I DOCKER-USER -i br-+ -d <目标范围CIDR> -j ACCEPT
sudo iptables -I DOCKER-USER -i br-+ -d 140.82.0.0/16 -j ACCEPT   # github
sudo iptables -I DOCKER-USER -i br-+ -j DROP    # 其余全断

域名级白名单(api.deepseek.com 等)需 Squid 透明代理,按需再上。Gate 4:job 容器内 curl 非白名单地址超时。

阶段 5:Hashcat(Windows 原生,Gate 5)

hashcat.net 下载 Windows 版,解压即用:

hashcat.exe -I
hashcat.exe -b -m 0        # MD5 基准
hashcat.exe -b -m 22000    # WPA-PBKDF2 基准

Gate 5:识别 1660S;实测算力以 -b 为准(参考值 MD5 ~18.5 GH/s、WPA ~300 kH/s 量级)。字典可从 \\wsl$ 取 Kali 的 seclists/rockyou。


Workflow 配置(修正版)

4.1 effort 语义(以官方为准)3

请求值实际映射说明
none(Responses 格式)关思考最快最便宜
minimal/lowlow轻度
medium/high/xhighhigh默认
max/ultramax思考 token 全额按输出计费,成本大头

4.2 六层结构(保留你的设计,两处增强)

Depth步骤effort增强
0入口点枚举nonemulti-output ✓
1可达性筛选noneBound source 绑 Depth 0,实现 1:1 路由4
2可控性分析high—
3影响评估high可加 consume-all 做跨入口点去重
4PoC 生成max思考 token 计费,控制此层调用数
5报告输出noneterminal,8 键 schema 缺一不可4

若 C1 验证失败(effort 不透传)→ fallback:拆两个 workflow 串联——WF-Enum(全局 none/low,跑 Depth 0-1,人工导出中间 JSON)→ WF-Deep(全局 high/max,输入 WF-Enum 结果跑 Depth 2-5)。成本模型不变。


成本模型(公式版,峰值单价)

单次调用 = 未命中输入×$0.30/M + 命中输入×$0.006/M + 输出(含思考)×$1.20/M

假设:代码库前缀 40k token(Depth 0 后全部命中缓存);输出:枚举 6k、筛选 1k、分析 4k、PoC 16k(max 思考)。

Depth次数计算峰值成本
0140k×0.30 + 6k×1.20$0.019
15050×(40k×0.006 + 2k×0.30 + 1k×1.20)$0.102
21010×(40k×0.006 + 8k×0.30 + 4k×1.20)$0.074
33同上$0.022
433×(40k×0.006 + 15k×0.30 + 16k×1.20)$0.072
533×(3k×0.30 + 2k×1.20)$0.010
合计≈0.30(闲时≈0.15)

你的 0.34 估算量级正确。控制杆按效力排序:**①闲时调度(直接减半)→ ②Depth 1 缓存命中率(50 倍价差)→ ③Depth 4 调用数(单发最贵的 8 倍)**。熔断:DeepSeek 平台小额充值制(10/次),余额即预算。


安全基线 + 运维 SOP

上线前必查(缺一不可)

  • /etc/wsl.conf:interop/automount 已关,Windows 日常账户非管理员
  • 5173/8080/5432 全绑 127.0.0.1;远程仅走 ssh -L 隧道
  • 实例内零生产 SSH 密钥;GITHUB_TOKEN 只读+短命+按仓库最小授权2
  • ENGINE_CODEX_AUTO_UPDATE=false;.env/.data/ 已 gitignore
  • egress 白名单生效(做了的话);DeepSeek 余额 ≤$10
  • 只扫描授权目标;findings 人工审核后再提交

SOP

周期动作
每周Task Scheduler 跑 wsl --shutdown && wsl --export kali-linux D:\bak\kali-%date%.tar(关机保证一致性)
每周WSL 内 cron:docker system prune -f
每月git fetch --tags,看 release notes,升级前 docker exec <db> pg_dump -U postgres kritt > dump.sql,失败回滚旧 tag
每季度轮换 DeepSeek key;检查 VHDX 体积(wsl --manage kali-linux --set-sparse true 已开则自动回收)
随时凭证疑似泄露 → DeepSeek 平台 revoke(这是唯一真正的 kill switch)

验证来源

(检索时间:2026-10-08。价格与模型目录以 DeepSeek 官方页面实时为准。)

最优先的三件事:关 WSL interop/automount(B4)、跑 C1 的 $0.05 验证扫描、Hashcat 换装 Windows 原生版。其余按阶段门控推进即可。

Footnotes

  1. open-kritt — DeepSeek Provider Setup ↩

  2. open-kritt Threat Model ↩ ↩2

  3. DeepSeek API Docs — Thinking Mode ↩

  4. open-kritt — Workflow Steps ↩ ↩2

动物装饰