外观主题
阅读语言

ADONWORD —— 智能体主动防御哨兵:文件基线 / 进程监控 / 端口告警

软件 本站软件 1天前 更新于 21小时前
https://yxp.hk/p/awX1KB

📦 开源仓库:yxpil/ADONWORD

gh-card · yxpil/ADONWORD

📦 仓库名片 · Powered by gh-card


ADONWORD

面向 AI Agent(尤其 BIT 生态)的本机安全态势哨兵:守护智能体工作的目录,基于 sha256 文件完整性基线检测篡改,识别黑名单进程,并对监听端口白名单之外的端口告警。定位:只做观察 + 告警——不杀进程、不修改文件,最小干预。Rust 单一静态二进制,跨平台(macOS / Linux / Windows)。

核心功能

  • 文件完整性基线:对 [watch].paths 计算全量 sha256 基线(相对路径 → hash → mtime),存于 <data_dir>/baseline.json。baseline check 输出 added / removed / modified——每次都重新计算哈希,从不信任 mtime。
  • 进程监控:[process].blocklist(大小写不敏感、支持 * 通配)命中即 crit 告警;allowlist 非空时白名单之外进程产生 warn。留空 = 不限制。
  • 监听端口告警:TCP LISTEN 套接字对照 [ports].allowed 白名单(支持单端口与 "8000-8100" 区间写法)。
  • 巡检守护:watch 每 N 秒(默认 30s)一轮 scan,告警打印到 stderr,可按 finding POST webhook(10s 超时),同一 finding 5 分钟内去重。

四种接入方式

  1. CLI exec 契约:stdin JSON 合并参数、stdout 出 JSON、退出码 0 = 成功;
  2. Remote 工具(HTTP);3. MCP(Streamable HTTP):scan / baseline_check / report 三个工具;4. 纯 REST API。

安装

从 Releases 下载对应平台二进制,或:

cargo install --git https://github.com/yxpil/ADONWORD
adonword --version

数据存于 ~/.adonword/(可用 ADONWORD_DATA_DIR 覆盖)。

安全与合规

  • 只读取文件元数据与哈希、进程名与监听端口,不采集、不外传任何其他数据;仅在你配置了 webhook 时向自己的地址 POST 告警 JSON。
  • 基线与状态文件保存在本机,只含路径与哈希、不含文件内容。
  • 符号链接与无权限路径跳过并记 warning,不会崩溃。

许可

Apache-2.0——agents watching over agents.

🛠 技术栈与开发

  • 开发语言:Rust 100%(edition 2021)—— 单一静态二进制;数据存 ~/.adonword/(ADONWORD_DATA_DIR 可覆盖)
  • 检测引擎:sha256 文件完整性基线(每次全量重算、绝不信任 mtime)+ 进程黑/白名单(大小写不敏感、* glob 通配)+ TCP LISTEN 端口白名单(netstat2,支持 "8000-8100" 区间写法)
  • 守护模式:watch 每 30s(可调)巡检一轮,告警打印 stderr + 可选 webhook POST(10s 超时),同一 finding 5 分钟去重
  • 接入面:CLI exec(stdin JSON 契约)· BIT Remote 工具 · MCP(scan / baseline_check / report 三工具)· 纯 REST
  • 策略边界:只做观察 + 告警,永不杀进程、永不修改文件;符号链接与无权限路径跳过记 warning 而非崩溃

📚 文档与链接

  • 仓库:https://github.com/yxpil/ADONWORD · Releases 四平台预编译包或 cargo install --git https://github.com/yxpil/ADONWORD
  • 配置文件:~/.adonword/adonword.toml(watch / process / ports / alert 四段,README 有全量注释示例)