HaraldeRoessler/moltrust-falco-bridge
GitHub: HaraldeRoessler/moltrust-falco-bridge
该项目通过 eBPF 系统调用监控连接 Falco 与 MolTrust,用于检测 AI 代理运行时的异常行为(代理漂移)并自动降低其信任评分。
Stars: 0 | Forks: 0
# MolTrust Falco Bridge
使用 [Falco](https://falco.org/)(CNCF 毕业项目)为 [MolTrust](https://moltrust.ch) 提供内核级代理漂移检测。
## 功能说明
在 Linux 系统调用层(eBPF)监控 AI 代理行为,并将 AAE 约束违规情况报告给 MolTrust 信任层。偏离其授权行为的代理将自动降低其信任评分。
```
[Agent Container] --syscall--> [Falco eBPF] --webhook--> [Bridge] --POST--> MolTrust /vc/ipr/submit
|
Trust score degrades
```
## 原因
MolTrust 运行在身份/授权层(DID、AAE、Trust Score)。它无法看到代理在运行时的实际行为。代理可以通过与其他代理的交互被修改,并开始违反其 AAE 约束——即**代理漂移**。
Falco 通过在内核层监控系统调用填补了这一空白。代理无法绕过或检测来自用户空间的监控。
## 背景
- [MoltyCel/moltrust-api#8](https://github.com/MoltyCel/moltrust-api/issues/8) — RFC:用于策略自修改检测的端点传感器
- [MolTrust 白皮书](https://moltrust.ch/whitepaper)
## 仓库结构
```
docker/ # Bridge service (Docker deployment)
bridge.py # FastAPI webhook receiver + MolTrust IPR submitter
Dockerfile # Bridge container image
docker-compose.yml # Docker Compose deployment
.env.example # Environment variables template
falco/ # Falco configuration
moltrust-rules.yaml # MolTrust-specific Falco detection rules
falco-output-config.yaml # Falco HTTP output config for bridge
k8s/ # Kubernetes deployment (alternative)
00-namespace.yaml # moltrust-test namespace
01-secret.yaml # Placeholder for MolTrust API key
02-bridge-code.yaml # Bridge Python code (ConfigMap)
03-bridge-deployment.yaml # Bridge Deployment + Service
04-networkpolicy.yaml # Restrict bridge ingress to Falco namespace
05-falco-rules.yaml # Falco rules (standalone reference)
06-falco-values.yaml # Falco Helm values
07-test-agent.yaml # Dummy agent that intentionally violates AAE
deploy.sh # Interactive deploy script
```
## 部署选项
### 选项 A:Docker(独立 Linux 服务器)
**前置条件:**
- 内核版本 5.8+ 且支持 BTF 的 Linux 服务器
- 已安装 Docker
**1. 安装 Falco:**
```
curl -fsSL https://falco.org/repo/falcosecurity-packages.asc | \
sudo gpg --dearmor -o /usr/share/keyrings/falco-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/falco-archive-keyring.gpg] \
https://download.falco.org/packages/deb stable main" | \
sudo tee /etc/apt/sources.list.d/falcosecurity.list
sudo apt-get update && sudo apt-get install -y falco
```
**2. 配置 Falco 规则:**
```
sudo cp falco/moltrust-rules.yaml /etc/falco/falco_rules.local.yaml
sudo cp falco/falco-output-config.yaml /etc/falco/config.d/moltrust-output.yaml
sudo systemctl restart falco-modern-bpf.service
```
**3. 部署 Bridge:**
```
cd docker
cp .env.example .env
# 使用你的 MolTrust API key 和 agent DID 编辑 .env
docker compose up -d
```
**4. 验证:**
```
# 从你的 agent 容器触发一个测试违规
docker exec touch /etc/test-violation
# 检查 Falco 是否检测到它
sudo journalctl -u falco-modern-bpf.service --since '1 min ago' | grep MolTrust
# 检查 bridge 是否已转发它
docker logs moltrust-bridge --tail 5
```
### 选项 B:Kubernetes
请参阅 `k8s/` 目录和 `k8s/deploy.sh`。
## Falco 规则
包含三条检测规则:
| 规则 | 优先级 | 检测内容 |
|------|----------|---------|
| File Write | CRITICAL | 对 `/etc/` 的写入尝试 |
| Config Modify | WARNING | 对代理配置文件的修改 |
| Unexpected Process | WARNING | 不在白名单中的进程生成 |
规则匹配名称中包含 `openclaw` 的容器。请针对您的代理容器调整 `container.name contains openclaw` 条件。
## 工作原理
1. **Falco** 通过 eBPF 监控来自代理容器的所有系统调用
2. 当系统调用匹配 MolTrust 规则时,Falco 通过 HTTP 发送 JSON 警报
3. **Bridge** 接收警报,构建 IPR payload,并 POST 到 MolTrust
4. **MolTrust** 记录违规行为并降低代理的信任评分
代理无法感知 Falco 的存在——监控发生在内核层,位于应用程序之下。
## 许可证
MIT
标签:AI安全, AV绕过, Chat Copilot, CNCF, Docker, Docker镜像, Falco, FastAPI, JSONLines, Syscall监控, Webhook, Web截图, web渗透, 信任管理, 内核级监控, 力导向图, 合规性检测, 子域名突变, 安全防御评估, 容器安全, 敏感词过滤, 智能体漂移检测, 自动化运维, 请求拦截, 逆向工具, 零信任