第二章–重生之我是AI人:5分钟,把Hati装好

admin 2026-06-14 04:34:27 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文为Hati渗透测试工具的详细安装指南,重点针对Windows环境提供从环境准备到实战运行的全流程操作步骤。文档涵盖MiniMaxAPI配置、Docker部署Redis、Kali虚拟机联动、RAG知识库构建等关键环节,并总结Windows系统下Unicode编码、Redis连接、MCP超时三大常见问题的解决方案。教程强调通过WebUI执行自动化渗透测试任务并生成漏洞报告的可操作性。 综合评分: 72 文章分类: 渗透测试,红队,安全工具,漏洞分析,WEB安全


cover_image

第二章 – 重生之我是AI人:5分钟,把 Hati 装好

Khan安全团队

2026年6月13日 14:48 海南

在小说阅读器读本章

去阅读

以下文章来源于威胁情报Z分析 ,作者Gachong

威胁情报Z分析 .

国际网络安全威胁情报,地缘政治事件分析。

  1. 在你开始敲命令之前

先说结论:不复杂,但坑都在细节里。这一篇我带你把 Hati 完整装起来、跑出一个真实任务。Windows、Linux 两套都给,但我主力在 Windows 上演示 — 网上这类教程 90% 是 macOS/Linux 写的,Windows 玩家太难了。

你需要的装备清单:

● 一台 8GB 内存以上的电脑(16GB 更稳)

● Python 3.10+(版本不够会报语法错误)

● Docker Desktop(我们用它的 Redis 容器,不用装本地 Redis)

● 一个 Kali Linux 虚拟机(VirtualBox / VMware 都行,2GB 内存就够)

● MiniMax API Key(去 minimax.chat 注册一个,这里选择minimax是因为量大管饱,且合规较弱,存在较多的提示词注入漏洞,可用来操作测试行为)

● 一个好用的终端(Windows 推荐 Windows Terminal + Git Bash)

网络要求:

● 你的电脑 ↔ Kali VM:同网段或 NAT 互通

● 你的电脑 → api.minimax.chat:443:能访问就行

● Kali VM 上要能装软件(能 ping 通外网)

如果你懒得自己起 VM:Hati 也能只跑主机模式(技能直接发包,不依赖 HexStrike 工具),但功能会少 30%。强烈建议起 VM。

  1. 步骤 1:克隆 + 改 .env(2 分钟)
git&nbsp;clone&nbsp;https://github.com/<your-name>/Hati.gitcd&nbsp;Hati

复制配置模板:

cp&nbsp;.env.example .env

打开 .env,至少填 4 项:

# MiniMax LLM(必填)MINIMAX_API_KEY=sk-cp-xxxxxxxxxxxxxxxxMINIMAX_GROUP_ID=xxxxxxxxxxxxxxxxMINIMAX_MODEL=MiniMax-M2.7
# HexStrike MCP Server(在 Kali VM 里运行)HEXSTRIKE_SERVER_URL=http://<Kali VM IP>:9999
# SSH 隧道(可选,如果 VM 端口不直接暴露)SSH_TUNNEL_HOST=<Kali VM IP>SSH_TUNNEL_USER=rootSSH_TUNNEL_PASSWORD=<vm password>

注意:MINIMAX_API_KEY 以 sk-cp- 开头,不是 sk-。

  1. 步骤 2:装 Python 依赖
pip install -r&nbsp;requirements-agent.txt

两个需要注意的点:

  1. chromadb 装不上:通常是缺 C++ 编译环境,Windows 上 pip install chromadb 经常报 Microsoft Visual C++ 14.0 is required。解法:装 Visual Studio Build Tools,勾选”使用 C++ 的桌面开发”

  2. sentence-transformers 第一次跑会下载模型:约 90MB,如果网不好会超时。解法:手动下好放到 ~/.cache/huggingface/

  3. 步骤 3:起 Redis

我们不用本地装 Redis,直接用 Docker:

cd&nbsp;dockerdocker-compose up -d redis

验证:

docker&nbsp;ps | grep redisredis-cli ping# 返回: PONG

docker-compose.yml 顺便还起了 Elasticsearch + Kibana,但它们是可选的 — Hati 检测到 ES 不通会自动降级到本地 JSON 日志。

如果选择不用docker也可以本地redis,看个人喜好。

  1. 步骤 4:构建 RAG 知识库
python scripts/build_rag.py

这个脚本会扫描 poc/wpoc/ 下 799 个真实产品的 POC 文件,用 all-MiniLM-L6-v2 转成向量,存到 data/poc_knowledge_base/。

跑完后验证一下:

from rag.query_interface&nbsp;import&nbsp;get_rag_interfacer = get_rag_interface()print(r.get_stats())# {'total_count':&nbsp;799,&nbsp;'index_size':&nbsp;'xxx MB'}

提示:这一步只在第一次跑。后面改了 poc/wpoc/ 下的内容才需要重新构建。Hati 启动时会自动加载,不会每次都重建。

  1. 步骤 5:Kali VM 端起 HexStrike MCP

SSH 进 VM

ssh root@<Kali&nbsp;VM&nbsp;IP>

启动 HexStrike Server:

cd hexstrike-aipip install -r&nbsp;requirements.txtpython3&nbsp;hexstrike_server.py&nbsp;--port&nbsp;9999
HexStrike&nbsp;MCP Server v6.0.0&nbsp;listening&nbsp;on&nbsp;0.0.0.0:9999Total&nbsp;tools available:&nbsp;54

截图:Kali VM 终端里 hexstrike_server.py 启动成功的输出

回到主机测试连通性:

curl http://<Kali VM IP>:9999/health#&nbsp;返回: {"version":&nbsp;"6.0.0",&nbsp;"total_tools_available": 54,&nbsp;"status":&nbsp;"healthy"}

不通的话,八成是 VM 防火墙。解法:

# Kali VM 内ufw&nbsp;allow&nbsp;9999/tcpufw&nbsp;allow&nbsp;22/tcp

还想要 SSH 隧道?(VM 端口不直接暴露时用)

# Git Bashbash scripts/ssh_tunnel.sh# PowerShell.\scripts\ssh_tunnel.ps1 -VmHost&nbsp;"<Kali VM IP>"&nbsp;-VmPassword&nbsp;"<密码>"

隧道起来后改 .env

HEXSTRIKE_SERVER_URL=http://localhost:9999
  1. 步骤 6:起 Hati API 服务
python&nbsp;-m api.main
✅ Elasticsearch 连接成功: http://localhost:9200[SkillLoader] 已加载&nbsp;47&nbsp;个攻击技能[RAG] POC 知识库已加载:&nbsp;799&nbsp;条Uvicorn running&nbsp;on&nbsp;http://0.0.0.0:8000

打开浏览器访问 http://localhost:8000,看到 Web UI:

  1. 步骤 7:跑第一个任务

在输入框敲:

对 http://testphp.vulnweb.com 进行渗透测试

回车,等。

Web UI 左侧聊天窗口会流式显示:

● 加载技能

● 启动 nmap

● 扫描端口:80, 443, 3306

● 识别技术栈:PHP, Apache, MySQL

● LLM 决策:优先测 SQL 注入

● 匹配技能:sqli-sql-injection

● 改写 POC:GET /artists.php?artist=1′ OR ‘1’=’1

● 实际发包,等待响应

● 命中 SQL 错误

● 写入漏洞:SQL Injection (HIGH)

● 生成报告

任务结束后,reports/ 目录会多出两个文件

reports/20260601_143022_target_a1b2c3d4.mdreports/20260601_143022_target_a1b2c3d4.json

  1. Windows 上 3 个最常见的坑

这节是 Windows 同学看一下。Mac/Linux 同学可以跳过。

坑 1:UnicodeEncodeError

症状:终端打印中文乱码或报 UnicodeEncodeError: ‘gbk’ codec。

解法:Hati 已经在所有入口加了:

if&nbsp;sys.platform ==&nbsp;'win32':&nbsp; &nbsp; sys.stdout.reconfigure(encoding='utf-8', errors='replace')

但 PowerShell 还得手动设:

$OutputEncoding&nbsp;= [Console]::OutputEncoding = [Text.UTF8Encoding]::UTF8

坑 2:Redis 连不上

症状:Error 10061 connecting to localhost:6379。

解法:Docker Desktop 没启动,或者 docker-compose up -d redis 没真的起。检查:

docker ps

坑 3:MCP 超时

症状:任务跑到一半,日志出现 Read timed out 或 Connection refused。

解法:先 ping ,再 curl http://:9999/health。如果 VM 没问题,建立 SSH 隧道。

  1. 跑通了吗?

如果一切顺利,你现在应该:

● ✅ Web UI 跑出了一个完整任务

● ✅ reports/ 目录下有报告

● ✅ WebSocket 流式显示正常

如果没跑通:大概率是上面 3 个坑之一。回头看,逐个排除。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:Khan安全团队 《第二章 – 重生之我是AI人:5分钟,把 Hati 装好》

评论:0   参与:  0