TOTP

🔐 敏感操作双因素认证防护

基于TOTP的双因素认证技能,保护敏感操作(如环境变量访问、网关重启、备份删除),提供1分钟时间容差验证,适合需要额外安全层级的AI代理场景。

收藏
5.3k
安装
1.1k
版本
1.0.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

totp技能为AI代理系统提供Time-based One-Time Password (TOTP)双因素认证能力,基于otplib库实现。核心流程包括:首次部署时通过npm run generate生成Base32密钥并配置到Google Authenticator/Authy等标准TOTP应用;敏感操作前代理请求用户输入6位动态码,通过scripts/verify.js校验(窗口设为2,即±1分钟时间容差)。

显著优点

1. 标准兼容:采用RFC 6238 TOTP标准,支持主流认证器应用,无需专用客户端
2. 场景精准:专为AI代理系统设计,覆盖.env泄露、配置篡改、破坏性操作等高风险场景

3. 工程友好:Node.js生态集成,通过环境变量管理密钥,符合12-Factor应用规范

4. 容错设计:1分钟时间窗口平衡安全性与用户体验,应对设备时钟漂移

潜在局限

  • 单点依赖:密钥集中存储于TOTP_SECRET环境变量,若宿主机沦陷则整体失效
  • 无防重放:仅校验时间窗口内有效性,不记录已使用令牌,存在理论上重放风险
  • 固定参数:SHA1/6位/30秒为硬编码配置,无法按需调整安全强度
  • 人机交互摩擦:每次敏感操作需用户主动输入,高频场景体验下降

适合人群

  • 运行AI代理的个人开发者或小型团队,需低成本增强敏感操作保护
  • 已有Node.js运维环境,希望复用现有技术栈
  • 能接受"操作级"而非"会话级"认证的安全需求场景

常规风险

  • 时钟同步:服务端与客户端时间偏差超过1分钟导致正常请求被拒
  • 密钥泄露.env文件权限配置不当或备份泄露可导致TOTP完全失效
  • 社会工程:攻击者若同时控制用户设备与代理会话,2FA防护可被绕过
  • 供应链风险otplib依赖的漏洞或恶意更新可能破坏认证逻辑

TOTP 内容

scripts文件夹
手动下载zip · 2.8 kB
generate-secret.jstext/javascript
请选择文件