加入我们的 Telegram 社群 (clawdbotCN) 学习分享和了解更多 →
网关
安全

安全

本页面涵盖 Clawdbot 的安全模型、私信策略和提示注入防护。

私信策略

策略类型

策略描述
open允许所有人
allowlist仅允许列表中的发送者
pairing需要配对批准
deny拒绝所有私信

默认策略

不同渠道的默认私信策略:

渠道默认策略
WhatsApppairing
Telegrampairing
Discordpairing
Signalpairing
iMessageallowlist
Slackallowlist

配置示例

{
  channels: {
    whatsapp: {
      dmPolicy: "allowlist",
      allowFrom: ["+8613800138000", "+8613900139000"]
    },
    telegram: {
      dmPolicy: "pairing"
    }
  }
}

配对批准

当使用 pairing 策略时:

  1. 未知发送者发送消息
  2. 网关回复一个 8 字符配对码
  3. 消息被挂起,不处理
  4. 所有者批准配对码
  5. 后续消息正常处理
# 查看待批准列表
clawdbot pairing list whatsapp
 
# 批准配对
clawdbot pairing approve whatsapp <CODE>
 
# 拒绝配对
clawdbot pairing reject whatsapp <CODE>

允许列表

配置允许的发送者:

{
  channels: {
    whatsapp: {
      allowFrom: [
        "+8613800138000",  // 完整号码
        "+86138*"          // 通配符
      ]
    },
    telegram: {
      allowFrom: [
        "123456789",       // 用户 ID
        "@username"        // 用户名
      ]
    }
  }
}

执行安全

执行策略

策略描述
deny拒绝所有命令执行
allowlist仅允许白名单命令
full允许所有执行(危险)

配置

{
  tools: {
    elevated: {
      security: "allowlist",
      allowlist: [
        "ls",
        "cat",
        "git status"
      ]
    }
  }
}

提示注入防护

Clawdbot 内置多层提示注入防护:

1. 输入清理

  • 自动转义特殊字符
  • 过滤已知的注入模式

2. 上下文隔离

  • 系统提示与用户输入分离
  • 使用安全边界标记

3. 外部内容包装

  • Webhook 载荷默认被视为不受信任
  • 外部内容用安全边界包装

4. 输出验证

  • 检测可疑的输出模式
  • 阻止敏感信息泄露

网关令牌

始终为网关设置认证令牌:

{
  gateway: {
    auth: {
      mode: "token",
      token: "your-secure-token-here"
    }
  }
}

即使在本地回环上也推荐使用令牌。

最佳实践

  1. 使用配对策略:对公开渠道使用 pairing 策略
  2. 限制执行权限:使用 allowlist 而非 full
  3. 设置网关令牌:始终配置认证令牌
  4. 定期审查允许列表:移除不再需要的发送者
  5. 监控日志:关注可疑的访问模式

相关文档