核心用法
memory-scan 是专为 OpenClaw Agent 设计的内存安全扫描器,通过本地模式分析与可选的远程 LLM 增强检测,全面排查 MEMORY.md、每日日志及工作区配置文件中的安全隐患。
扫描命令体系:
- 基础扫描:
python3 skills/memory-scan/scripts/memory-scan.py(默认扫描最近30天) - 特定文件:
--file memory/2026-02-01.md - 静默模式:
--quiet(适合自动化流水线) - JSON输出:
--json(便于程序化处理) - 远程增强:
--allow-remote(脱敏后送交 GPT-4o-mini/Claude 深度分析)
威胁处置流程:检测到 MEDIUM/HIGH/CRITICAL 级别威胁时,支持通过 quarantine.py 进行行级隔离备份,自动替换风险内容为 [QUARANTINED BY MEMORY-SCAN: <timestamp>]。
自动化集成:内置 schedule-scan.sh 可创建每日定时任务(下午3点 PT),仅在有威胁时推送告警;与 safe-install 的每日审计天然集成,也可嵌入 HEARTBEAT.md 实现周期性自查。
显著优点
1. 零依赖安全架构:全程使用 Python 标准库(urllib、json、re、subprocess),彻底规避供应链攻击风险,依赖审计得分 100/100。
2. 分级授权设计:远程 LLM 分析默认关闭,必须显式添加 --allow-remote 方可启用,且传输前自动脱敏(API Key、密码等替换为 [REDACTED]),隐私合规得分 90/100。
3. 多维威胁覆盖:内置 6 大类本地检测模式(恶意指令、提示注入、凭证泄露、数据外泄、护栏绕过、行为操控、权限提升),结合可选的 LLM 语义分析形成纵深防御。
4. 企业级可观测性:五级安全评级(SAFE/LOW/MEDIUM/HIGH/CRITICAL)、文件级定位(file:line)、结构化 JSON 输出、OpenClaw 通道告警,满足 DevSecOps 全流程需求。
5. 社区生态协同:与 input-guard(外部输入防护)形成互补,可向 molthreats 社区情报库上报内存威胁,构建众包安全网络。
潜在缺点与局限性
1. 检测范围边界:默认仅扫描最近 30 天的每日日志,历史威胁需手动调整 --days 参数;不扫描 Agent 运行时的内存状态,仅针对持久化文件。
2. LLM 成本与延迟:远程分析模式产生 API 调用费用,且增加扫描耗时;高频率自动化场景下需权衡安全深度与成本效率。
3. 误报控制挑战:本地正则模式可能对复杂混淆攻击产生漏报,而 LLM 语义分析虽提升检出率,但也可能引入语义层面的误报,需人工复核 MEDIUM 级别告警。
4. 生态锁定:深度依赖 OpenClaw 特定文件结构(MEMORY.md、SOUL.md 等),迁移至其他 Agent 框架需适配改造。
适合的目标群体
- OpenClaw 重度用户:运行多 Agent 协作或长期记忆场景的团队,需防范记忆污染攻击
- 安全合规团队:需要满足数据安全审计、内存完整性验证的企业安全工程师
- AI 应用开发者:构建基于 OpenClaw 的产品化服务,需在 CI/CD 中嵌入自动化安全检测
- 红蓝对抗研究员:测试 Agent 系统的 prompt injection 防御能力,验证记忆隔离机制有效性
常规使用风险
性能风险:大体积记忆文件(如包含嵌入式 base64 图片)可能导致扫描耗时显著增加,建议在非业务高峰期运行全量扫描。
依赖项风险:虽为零外部依赖,但依赖本地 OpenClaw CLI 工具链(openclaw gateway config.get),若 CLI 版本变更可能导致配置读取失败。
网络风险:--allow-remote 模式虽经脱敏处理,但仍向 OpenAI/Anthropic 传输结构化数据轮廓,对数据主权敏感场景需评估合规性。
配置漂移风险:告警通道依赖 OPENCLAW_ALERT_CHANNEL 环境变量,未配置时将静默跳过告警发送,可能导致高危威胁未被及时感知。