Credential Hygiene Validator

检测配置文件中的密钥与令牌是否安全存储,防止泄露。

已扫描
适合谁
开发者、DevOps 工程师
不适合谁
无命令行使用经验的用户、不使用 dotfile 管理配置的用户
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @techris93/credential-hygiene-validator

Skill 说明

命令、参数、文件名以原文为准

凭证卫生检查器

检查配置文件中凭证和令牌的存储是否符合合理的安全规范。在问题演变为安全事故前发现常见错误。

检查内容

  1. 文件权限 —— 配置文件应为 600 或 700 权限,不应为全局可读
  2. 明文令牌 —— 扫描十六进制令牌、JWT(base64url 格式且包含点号)、Bearer 字符串以及 API 密钥
  3. Git 仓库污染 —— 检查配置目录是否位于 Git 工作树内
  4. .gitignore 覆盖情况 —— 检查 .gitignore 是否排除了凭证路径
  5. 日志文件泄露 —— 令牌出现在日志输出中(检查所有格式:十六进制、JWT、按 RFC 6750 定义的 Bearer)
  6. 令牌使用时长 —— 若令牌长时间未轮换则发出警告
  7. 原子写入安全性 —— 检查是否存在配置备份文件(作为安全写入模式的指示)

使用场景

  • 新工具或服务部署完成后
  • 将 dotfiles 推送到公开仓库前
  • 作为定期安全卫生审查的一部分
  • 新机器入职时
  • 凭证轮换后,确认旧令牌已清除

示例指令

  • “检查我的 OpenClaw 令牌是否安全存储”
  • “审计我的 dotfiles 是否存在凭证泄露”
  • “我的配置目录是否在 Git 仓库中?”
  • “检查我凭证文件的权限”
  • “我的令牌是否出现在任何日志文件中?”

执行检查命令

# 1. 文件权限检查
stat -c '%a %n' ~/.openclaw/openclaw.json
# 期望结果:600

# 2. 明文令牌扫描(按 RFC 7235 定义的 token68 字符集)
grep -rnP '("token"\s*:\s*")[^"]{8,}"|[Bb]earer\s+[\w\-\.+/=~]{16,}|[a-f0-9]{32,}' \
  ~/.openclaw/ --include="*.json" 2>/dev/null

# 3. Git 仓库检查
git -C ~/.openclaw rev-parse --is-inside-work-tree 2>/dev/null
# 期望结果:报错(不在 Git 仓库中)

# 4. .gitignore 覆盖检查
grep -q '.openclaw' ~/.gitignore 2>/dev/null && echo "已覆盖" || echo "未覆盖"

# 5. 日志文件泄露检查(按 token68 字符集)
grep -rnP '[Bb]earer\s+[\w\-\.+/=~]{16,}|[a-f0-9]{32,}' \
  ~/.openclaw/logs/ --include="*.log" 2>/dev/null

# 6. 令牌使用时长检查(基于配置文件修改时间)
find ~/.openclaw/openclaw.json -mtime +90 -print 2>/dev/null
# 若有输出:表示令牌已超过 90 天未轮换

# 7. 备份文件存在性检查(原子写入指示)
ls ~/.openclaw/openclaw.json.bak 2>/dev/null && echo "备份存在" || echo "无备份"

注意事项

  • 仅执行只读检查,不会修改任何文件
  • 令牌匹配模式涵盖十六进制、JWT(header.payload.signature)、base64url 格式,以及不区分大小写的 Bearer 头部,符合 RFC 6750 规范
  • 适用于任何将凭证存储在 dotfiles 中的工具
  • 与 OpenClaw 威胁模型中的 T-ACCESS-003 保持一致

参考资料

  • [OpenClaw 威胁模型(T-ACCESS-003)](https://github.com/openclaw/trust)
  • [OpenClaw 安全策略](https://github.com/openclaw/openclaw/security/policy)
  • [RFC 6750 - Bearer Token 使用规范](https://www.rfc-editor.org/rfc/rfc6750)
T
@techris93

已收录 1 个 Skill

相关推荐