[控场AI]
· 6 分钟阅读· 3,358 字

Claude Code v2.1.290 更新解读:安全加固与稳定性全面升级

Claude Code v2.1.290 更新解读:安全加固与稳定性全面升级

Claude Code v2.1.290 以百余条修复系统性加固安全边界、长会话稳定性和企业治理能力

Claude Code v2.1.290 是一次以"打磨"为核心的版本更新,没有抢眼的新功能,而是集中力量封堵安全漏洞、修复稳定性缺陷。安全方面,多条符号链接偷换文件的攻击路径被堵住,Bash 通配符越权、zsh/bash 解析差异等边缘漏洞也得到修复,组织级插件与守卫的防护逻辑进一步强化。稳定性方面,含大量图片的长会话卡死、深层嵌套 Markdown 引发的调用栈崩溃、以及多种界面冻结问题均被系统性清理,会话恢复逻辑也变得更加可靠。云端与代理兼容性同步提升,WebFetch 新增对超长页面的分段读取支持。面向开发者,插件钩子新增 serverToolUses、agentId、ceiling 等字段,为企业级权限管控提供更细粒度的控制能力。

Anthropic 旗下的 AI 编程助手 Claude Code 发布了 v2.1.290 版本。这次更新的看点不在新功能的华丽堆砌,而在于对权限安全、会话稳定性与企业级治理能力的大规模修复和打磨。超过百条变更中,相当比例涉及权限绕过、沙箱逃逸、符号链接攻击等安全隐患的封堵,显示出该工具正朝着更适合企业部署的方向演进。

Claude Code v2.1.290 发布

安全是本次更新的主线

从变更日志看,这次发布最密集的改动集中在权限与读写边界的收紧。多条修复针对的是“通过符号链接在读取过程中偷换文件”的攻击路径——例如 macOS 与 Windows 上的图片读取、@-mention 引用、以及受 blockReadsOutsideWorkingDirectories 限制的 CLAUDE.md、规则文件和 AGENTS.md,此前都可能被中途替换的软链接绕过工作目录限制读到外部文件。现在这些路径均已被堵住。

Bash 权限检查也得到了多处加固。此前某些被判定为“只读”的命令(如 rg 或 git grep),其参数仍可能被 shell 展开为通配符,从而越权;zsh 与 bash 对变量名解析差异导致的误判也被修复。这些命令现在都会重新触发审批提示。此外,管道中带 heredoc 的沙箱命令(如 cat <<EOF | python3)不再每次运行都要求审批,兼顾了安全与体验。

对于企业用户,组织级插件(mod)与守卫(guard)的防护被进一步强化:用户自行安装的 mod 若试图卸载组织插件、或让组织守卫跳过检查,现在会被反向卸载。Read deny 规则也扩展到了粘贴、拖拽进提示框的图片路径,以及 @-mention 文件夹中列出的文件名。

符号链接攻击(Symlink Attack)是一种利用文件系统软链接实施的安全漏洞。攻击者在程序打开文件与实际读取文件之间的短暂时间窗口内,将目标路径替换为指向敏感文件的符号链接,从而让程序在不知情的情况下读取工作目录外的内容——这类漏洞也被称为 TOCTOU(Time-of-Check to Time-of-Use)竞态条件。在 AI 编程助手场景中,若用户输入的 @-mention 路径或配置文件路径未做充分验证,恶意插件或构造特殊的仓库结构就可能借此读取系统敏感文件(如 SSH 私钥、环境变量文件等)。此次修复通过在读取时对路径进行规范化校验(resolving canonical path)、拒绝最终指向工作目录外的链接,从根本上阻断了这条攻击路径。

长会话与稳定性修复

长时间、高负载的会话一直是 AI 编程工具的痛点,这次有针对性地解决了多个卡死与崩溃问题。包含数百张图片的长会话此前会卡在 “Request rejected as unprocessable by the model” 错误上,现已修复;响应中嵌套数千层列表或引用导致的 “Maximum call stack size exceeded” 崩溃也被解决。

多项“冻结”问题同样被清理:发送超长消息后的卡顿、展开 transcript(ctrl+o)时遇到大量非 ASCII 字符(箭头、破折号、制表符等)的卡顿、rewind 菜单在含有超大粘贴堆栈或源文件时每次按键延迟数百毫秒,都得到了优化。密钥扫描或权限提示遇到超长 token 文本时的停顿也被修复。

会话恢复逻辑更加可靠。计划模式(plan mode)在使用 --continue 或 --resume <session-id> 恢复时不再丢失;被恢复的子代理(subagent)和队友不再丢失此前的思考过程和 prompt cache;定时任务(带间隔的 /loop、提醒)在对话被压缩后不再静默失效。自动压缩在 Mac 休眠期间运行也不会再以 “Prompt is too long” 放弃。

AI 编程助手的"长会话"稳定性问题根源通常有两类:一是上下文窗口压力,随着对话轮次增加,历史消息、工具调用结果和代码片段不断累积,触发自动压缩(summarization)或超出模型最大 token 限制;二是前端渲染瓶颈,Markdown 深层嵌套列表、大量非 ASCII 字符等内容在终端或 UI 渲染时会触发递归解析,导致调用栈溢出(Maximum call stack size exceeded)或每次按键都触发全量重渲染。此次修复同时覆盖了这两个方向:后端层面让自动压缩在休眠恢复后能正常继续而不是直接放弃,前端层面则通过限制递归深度和虚拟化大列表渲染来解决界面冻结。

云端、代理与网络兼容性

这次更新对网络环境复杂的部署做了不少适配。此前在代理和网关后,若对方以非 400 状态码拒绝 Claude Code 的某个 beta header,请求会失败;现已修复。Bedrock、Vertex、Foundry 及自定义网关上,被电脑休眠打断的响应不再被误判为“流中断”。

云端会话(Cowork、Remote Control)的多项问题得到解决:容器在 Claude 刚发送消息或文件后重启导致回复永远无法完成、容器重启丢失 /loop 唤醒或定时任务、以及超长远程会话中回复一次性成块出现而非流式输出等。WebFetch 此前会静默丢弃页面超过 100,000 字符的内容,现在会告知未读取的量并支持通过 offset 继续读取。

针对通过网关(ANTHROPIC_BASE_URL 配合 ANTHROPIC_AUTH_TOKEN)且无 Anthropic 账户的用户,mod 此前会一直处于关闭状态,这一问题也被修复——这对使用自建网关的团队尤为重要。

插件与开发者体验

面向插件开发者,turn.step 钩子的结果新增了 serverToolUses 字段,暴露 advisor 自身运行的 API 工具调用(含 id、name、input 及起止时间);tool.check 事件新增 agentId,让钩子能区分子代理与主会话的权限检查;还引入了 ceiling 字段描述组织对某工具所需的审批级别。类型系统上补充了 ThemeKey 和 Color,便于编辑器提示主题颜色。

命令行也有便利性增强:claude attach <name> 和 claude logs <name> 支持用会话名的一部分代替完整 id;新增 /claude-api managed-agents-onboard 用于配置 Managed Agents 模式或基于 Console quickstart 模板(如 deep-researcher)构建。Claude apps 网关的登录审批页新增了 Deny 按钮,可在数秒内终止挂起的登录。

新增的 ceiling 字段对企业部署有重要意义。它描述的是组织层面对某个工具所要求的最低审批级别,与用户侧或插件侧设置的审批级别共同构成分层权限模型——最终生效的是两者中更严格的那一个。这一设计使安全团队可以在不修改用户配置的前提下,通过组织策略强制要求高风险工具(如执行任意 shell 命令、访问生产数据库)必须经过人工确认,即便用户或第三方插件将其设置为自动放行,ceiling 也能作为兜底防线。这是 Claude Code 在企业零信任架构下落地的重要基础能力。

小结

v2.1.290 是一次典型的“打磨型”发布——没有引爆眼球的新特性,却用上百条修复系统性地填补了安全漏洞、稳定性缺陷和边缘场景的兼容问题。对个人开发者而言,长会话卡死和权限误判的减少直接改善日常体验;对企业用户而言,密集的权限边界加固和组织级治理修复,是把 Claude Code 推向生产环境的必要基础。这类版本虽然不易成为头条,却是工具走向成熟的真实注脚。

分享:

相关推荐