OpenClaw v2026.4.9已修复CRLF注入漏洞,通过强制升级basic-ftp至5.2.1、禁用危险HTTP头透传、启用输出净化中间件及三条核心清洗规则实现全面防护。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw v2026.4.9版本修复了已被利用的CRLF注入漏洞,该漏洞允许攻击者通过构造恶意HTTP头字段,在远程节点日志中伪造条目、劫持重定向响应或触发跨域请求伪造(CSRF),尤其在启用IM网关对接WhatsApp/Slack时风险极高。
确认当前版本并验证补丁生效
打开终端,进入OpenClaw安装目录,执行:cat VERSION → 确认输出为v2026.4.9;若为旧版本,请先升级至该版本再继续操作。
运行grep -r "crlf|header|sanitize" ./core/gateway/ → 返回含sanitize_http_headers函数定义的文件路径,说明CRLF过滤逻辑已编译进网关模块。
【必须关闭旧进程再启动新版本,否则补丁不生效】
禁用危险HTTP头字段自动透传
编辑config/gateway.yaml,将allow_custom_headers设为false。
找到trusted_headers列表,仅保留["User-Agent", "Accept", "Content-Type", "Authorization"]四项;删除其余所有自定义头字段声明。
这一步能阻断97%以上的CRLF注入载荷,因为攻击者无法再通过X-Forwarded-For或Referer等宽松字段注入%0D%0A序列。
清洗远程节点输出内容
第一步:启用输出净化中间件 → 在config/agent.yaml中设置output_sanitizer: true。
第二步:配置清洗规则 → 编辑config/sanitizer.rules.json,确保包含以下三条核心规则:
完整的工作区安全套件:检测未授权修改,扫描提示注入模式,自动响应应对措施——快照恢复、技能隔离、Git回滚和自动保护扫描。智能体工作区的完整安装后安全层。
{"pattern": "\r\n", "replace": "\n", "scope": "all"}
{"pattern": "Location:\s*[^\r\n]+", "replace": "Location: [REDACTED]", "scope": "http_response"}
{"pattern": "(?i)cookie:\s*[^\r\n]+", "replace": "Cookie: [SECURED]", "scope": "http_response"}
第三步:重启Agent服务 → 执行systemctl restart openclaw-agent,观察日志中是否出现[SANITIZER] loaded 3 rules提示。
注意:若使用Docker部署,需重建镜像并重新挂载config/sanitizer.rules.json卷,直接修改容器内文件无效。
验证CRLF注入防护是否生效
方法一:本地构造测试请求 → 使用curl发送含CRLF的恶意头:curl -H "User-Agent: curl/8.10.1
X-Injected: pwned" http://127.0.0.1:18789/api/status → 正常响应应返回400 Bad Request,且日志中无X-Injected字段记录。
方法二:检查网关日志 → 查看logs/gateway/access.log,任意含
的原始输入行都应被截断或替换为单换行符,未清洗的日志行即代表防护失效。
方法三:触发重定向场景 → 向/api/v1/redirect接口发送含Location: javascript:alert(1)的请求 → 响应头中Location字段必须被替换为[REDACTED],且响应体不含脚本执行内容。

















