---
title: "Node.js、Java、Python 近期高危漏洞与修复指南"
description: "汇总近期运行时、框架与证书依赖安全更新，提供分支修复版本、影响条件、临时缓解和生产验收清单。"
language: "zh-Hans"
url: "https://keendigit.com/zh/insights/node-java-python-security-remediation-guide"
author: "KeenDigit"
published: "2026-10-23"
---

# Node.js、Java、Python 近期高危漏洞与修复指南

汇总近期运行时、框架与证书依赖安全更新，提供分支修复版本、影响条件、临时缓解和生产验收清单。

**资料核验截至：2026 年 10 月 23 日（UTC）**\
**覆盖时段：2026 年 7 月 25 日—10 月 23 日，重点覆盖 9—10 月的新公告与后续补丁。**\
**适用对象：维护 Node.js、Java、Python 服务、容器、构建流水线与开发环境的工程师和安全响应人员。**

本文汇总 Node.js、Java、Python 运行时、标准库及常见服务端框架和依赖中的近期重要安全风险，提供影响范围、修复版本、临时缓解措施、补丁选择与验收方法。

文中列出各生态的重点风险，实际影响需结合组件版本、功能配置和可访问入口判断。漏洞信息以官方公告为依据，日期主要指公开披露日期；修复包发布早于披露时另行说明。未经官方证实的利用条件、CVSS 分数及在野攻击情况不作推定；基于部署条件提出的措施标为实施建议。

## TL;DR：修复步骤与建议

1. **先更新真正承载服务的运行时。** Node.js 对应分支至少到 **22.23.4 / 24.22.1 / 26.12.1**。使用 Node 24 的服务，可在同一主版本内升级到 **24.22.1 或之后包含相同修复的版本**。[S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S2](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-2)
2. **Node 应用依赖另外更新。** Next.js 建议采用 **15.5.28 / 16.4.1** 作为升级基线；独立使用 React Server Components 时，核查实际安装的 `react-server-dom-*` 包。只更新 Node 二进制不能覆盖这些框架漏洞。[S8](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-8)[S9](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-9)[S10](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-10)[S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)[S12](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-12)
3. **Java 同时核对两轮更新。** 直接安装同时覆盖 10 月 20 日 CPU 和 10 月 21 日 **CVE-2026-91403** 证书信任紧急修复的厂商版本。Oracle JDK 11—27 的具体带外版本见第 2.2 节；其他发行商按自己的安全包与完整构建号验收。Tomcat 对应分支到 **9.0.123 / 10.1.61 / 11.0.27**。[S16](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-16)[S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)[S18](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-18)[S20](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-20)[S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23)
4. **Python 分别处理解释器、应用包和证书包。** 解释器基线见第 2.3 节；`certifi` 建议 **≥2026.10.19**，`pip` **≥26.2.2**，使用 `uv` 时 **≥0.13.4**。现有每个 venv 都需检查。对 `wrap_bio()` 相关代码，还必须传入正确、非空的 `server_hostname`。[S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)[S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)[S31](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-31)[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)[S35](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-35)[S36](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-36)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)
5. **暂时不能升级时，针对实际入口收缩暴露。** 优先停止不可信 Brotli 解码、受影响图像/分页/归档处理，隔离有问题的 LDAP 或认证入口；保持 TLS 证书与主机名校验。入站 WAF 无法覆盖应用拉取恶意压缩响应等出站路径。[S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)[S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)[S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)[S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)[S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)[S32](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-32)
6. **重建、替换旧进程，再从真实业务链路验收。** 保存锁文件和镜像摘要，重建应用与镜像，滚动替换全部 worker/JVM/容器；核对实际进程、依赖树、信任库和正常业务回归。只有命令行版本变新，不能算完成。
7. **若安装或运行过 LiteLLM 1.107.0，走事件处置流程。** 10 月 21 日官方确认该发布产物被投毒；先隔离并从干净环境调查、重建和轮换可访问凭据。不要先在可疑环境启动 Python/pip 做检查。详见第 9 节。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

## 1. 漏洞概览与风险判断

### 1.1 按实际暴露面安排处置

下表的“优先关注”是实施建议，漏洞等级采用厂商原始口径，包括 Apache 的 **Important**。CVSS 3.1 与 4.0 使用不同评分体系，不宜仅按分数横向排名。

| 生态 / 层级                | 重点问题                                     | 官方等级或已核实分数            | 优先关注的部署                                                                                                                                                                                                                                                                                                                            |
| ---------------------- | ---------------------------------------- | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Node.js 原生依赖           | CVE-2026-111497：Brotli 越界写，存在 RCE 风险     | Node：High             | 解码外部请求体或外部响应中的 Brotli 数据 [S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)                                                                                                                  |
| Node.js TLS / DNS      | CVE-2026-105482、105483、106069：解析与身份校验不一致 | High                  | URL 抓取、代理、Webhook、动态目标地址 [S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S5](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-5)[S6](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-6)                      |
| Node.js HTTP/2         | CVE-2026-56846、56848：内存耗尽与 UAF           | High                  | Node 直接处理不可信 HTTP/2 流量 [S7](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-7)                                                                                                                                                                                                                |
| React / Next.js        | RSC / `use cache` typed arrays RCE       | Critical；CVSS 4.0 9.5 | 服务端 RSC、相关缓存组件与数据路径 [S9](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-9)[S10](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-10)                                                                                                                     |
| Next.js 图像优化           | CVE-2026-96889：SVG 图像处理 RCE              | Critical；CVSS 4.0 9.5 | glibc Linux 上可处理不可信图像的实例 [S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)                                                                                                                                                                                                            |
| Next.js Server Actions | 特制请求造成 CPU 耗尽                            | High；CVSS 4.0 8.2     | App Router 且至少一个 Server Action [S12](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-12)                                                                                                                                                                                                      |
| Java TLS 信任            | CVE-2026-91403：继续信任受影响的中间 CA             | CVSS 3.1 9.1          | 使用受影响信任链的 TLS/API 场景 [S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)                                                                                                                                                                                                                |
| Tomcat                 | JNDIRealm 认证绕过、HTTP/2 串线、AJP 响应泄漏        | Important             | 对应 Realm / Connector / async Servlet 路径 [S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23) |
| Spring for GraphQL     | CVE-2026-59285：分页反序列化 RCE                | High                  | Jackson 2 + Connection 分页 + 可利用类路径 [S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)                                                                                                                                                                                                  |
| Spring Security        | CVE-2026-59270：内嵌 LDAP 已知管理身份暴露          | Critical              | 启用了内嵌 LDAP，且监听端口可被攻击者访问 [S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)                                                                                                                                                                                                             |
| CPython `ssl`          | CVE-2026-19445：SNI 切换上下文导致 UAF           | Critical              | Python 自己终止 TLS，且满足上下文生命周期条件 [S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)                                                                                                                                                                                                        |
| CPython `ssl`          | CVE-2026-19553：缺失 hostname 时跳过校验         | High                  | `wrap_bio()` / 相关 asyncio 调用缺失预期主机名 [S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)                                                                                                                                                                                                 |
| CPython `tarfile`      | CVE-2026-82049：硬链接与符号链接组合绕过              | High                  | 自动提取不可信 tar 归档 [S32](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-32)                                                                                                                                                                                                                      |
| Django / GeoDjango     | CVE-2026-15307：空间查询写文件、SSRF，条件下 RCE      | High                  | 对不可信输入开放空间查询或相关管理后台 [S38](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-38)                                                                                                                                                                                                                 |
| Python 证书依赖            | certifi：emSign 相关证书撤信                    | Critical；GHSA，无已知 CVE | 仍使用受影响 CA bundle 的 TLS 客户端和包管理工具 [S36](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-36)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)                                                                                                      |

缩写：RCE 为远程代码执行，UAF 为释放后使用，SSRF 为服务器端请求伪造。RCE 的直接权限通常是承载应用的进程权限，不能自动等同于 root 权限。

\*\*建议的顺序：\*\*先处理外部可达且满足条件的 RCE、认证绕过、跨用户数据泄漏及证书身份验证问题；同时对公网 DoS 入口安排更新。无需为了证明可利用而在生产运行攻击载荷。依赖存在、代码路径可达、攻击条件满足，是三个需要分别核对的问题。

### 1.2 三个容易混淆的边界

- **运行时与依赖分开升级。** Node、JDK、CPython 的安全更新不自动修复独立安装的 Next.js、Spring、Django、certifi 或原生扩展。
- **修复门槛与当前部署基线分开。** 某个 8 月漏洞的首个补丁，不保证覆盖 9—10 月新问题；第 2 节采用已核实的后续更新作为实施目标。
- **普通漏洞与已经发生的供应链投毒分开。** 对普通漏洞，补丁消除未来攻击路径；已运行恶意包时，还需调查凭据与持久化影响。第 9 节的 LiteLLM 是官方确认的事件。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

是否存在已确认的在野利用，应以官方披露为准。厂商未提及利用活动，也不能反向证明没有攻击；应按实际暴露面执行修复。

## 2. 修复版本与部署基线速查

### 2.1 Node.js、React、Next.js 升级基线

| 组件 / 分支                             | 建议版本基线                                 | 使用说明                                                                                                                                                                                                                           |
| ----------------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Node.js 22.x                        | **22.23.4**                            | 10 月 21 日安全发布 [S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S2](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-2)                         |
| Node.js 24.x                        | **24.22.1**                            | 适用于 24.x 分支；24.22.0 不包含 10 月 21 日安全补丁 [S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S2](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-2) |
| Node.js 26.x                        | **26.12.1**                            | 同批安全发布 [S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)[S2](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-2)                                |
| Node.js 20 及更早上游分支                  | 迁移至受支持分支                               | Node 20 不接收此次上游修复；厂商延长支持另核 [S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)                                                                                                        |
| Next.js 15.x                        | **15.5.28**                            | 10 月 14 日更新 [S8](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-8)                                                                                                                       |
| Next.js 16.x                        | **16.4.1**                             | 同上 [S8](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-8)                                                                                                                                |
| 独立 RSC 19.0 / 19.1 / 19.2 / 19.3 分支 | **19.0.9 / 19.1.10 / 19.2.9 / 19.3.1** | 三种 `react-server-dom-*` 包分别核查；不是只看顶层 `react` [S10](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-10)                                                                                    |
| Next 实际加载的 `sharp`                  | **≥0.35.5**                            | SVG 漏洞的官方临时修复条件；不替代其他 Next.js 补丁 [S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)                                                                                                |

Node 官方对 10 月漏洞列出了受影响的维护分支，但未逐项给出最初引入的补丁版本，因此无法仅凭维护分支范围确定各漏洞的精确起始版本。部署时优先使用同分支上述版本或确认包含相同修复的后续版本。

### 2.2 Java：10 月 CPU 加带外证书更新

下表是 **Oracle JDK** 口径。第二列仅代表 10 月 20 日 CPU，第三列才覆盖官方 10 月 21 日带外发布；不能把第二列直接作为本次全部 Java 风险的合格线。[S16](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-16)[S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)[S18](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-18)

| 分支 | 10 月 20 日 CPU | 10 月 21 日 Oracle 带外发布                          |
| -- | ------------- | ---------------------------------------------- |
| 11 | 11.0.33       | **11.0.33.0.2**                                |
| 17 | 17.0.21       | **17.0.21.0.2**                                |
| 21 | 21.0.13       | **21.0.13.0.2**                                |
| 25 | 25.0.5        | **25.0.5.0.2**                                 |
| 27 | 27.0.1        | **27.0.1.0.2**                                 |
| 8  | 8u511         | 公开发布表仍显示 **8u511**；必须核对具体安全构建和信任链修复，不能只凭短版本号判定 |

\*\*Java 8 需按完整构建信息核对：\*\*Oracle 警报将 8u511 列入受影响版本，而发布列表又以同一短名称列出后续更新。仅凭“8u511”短版本号无法区分补丁状态，应确认具体安全构建与信任链修复内容。[S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)[S18](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-18)

\*\*Temurin、Corretto、Zulu、Microsoft Build of OpenJDK、发行版 OpenJDK 等，按各自公告和完整包/构建号核对。\*\*例如 Adoptium 的官方发布记录说明，相关构建重新打包以加入 eMudhra 修复；上游版本名称相同不代表包内容相同。Oracle 的 `.0.2` 后缀规则不能机械套用其他发行商。[S20](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-20)

| Java 应用组件                             | 建议版本基线                                | 备注                                                                                                                                                                                                                                                                                                                 |
| ------------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Tomcat 9 / 10.1 / 11                  | **9.0.123 / 10.1.61 / 11.0.27**       | 逐分支核对；Tomcat 10.0 已停止维护 [S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23) |
| Spring for GraphQL 2.0.x              | **2.0.5（OSS）**                        | 商业支持另有 2.0.4.1 [S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)                                                                                                                                                                                                      |
| Spring Security 7.1 / 7.0             | **7.1.1 / 7.0.7（OSS）**                | 对应 8 月公告的最低修复版本；部署前还需核对后续安全公告 [S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)[S28](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-28)                                                                                         |
| Spring Security 6.5 / 6.4 / 5.8 / 5.7 | **6.5.12 / 6.4.19 / 5.8.28 / 5.7.26** | 公告列为商业支持修复；无对应支持时评估迁移，不能假定 Maven Central 免费可得 [S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)                                                                                                                                                                       |

Spring 升级应尊重项目的 Spring Boot BOM、Java 最低版本和兼容线。不要为了拿到一个补丁，把所有 Spring 模块直接强制改成同一个数字。

### 2.3 CPython、Django 与证书依赖

下表第二列主要针对 9 月披露的 TLS 问题；`tarfile` 的分支差异见第 5.3 节。10 月 21 日又有打包证书更新，因此列出后续可采用基线。[S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)[S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)[S35](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-35)

| CPython 分支 | 9 月安全批次最低版本                                                                                                                                                                                                         | 建议部署基线                                                                                                                       |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| 3.10       | 3.10.22                                                                                                                                                                                                             | 上游最后一次发布，已 EOL；安排迁移或核实发行版延长支持 [S34](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-34) |
| 3.11       | **3.11.17**                                                                                                                                                                                                         | 3.11.17，并单独更新每个环境中的 pip / certifi                                                                                            |
| 3.12       | **3.12.15**                                                                                                                                                                                                         | 3.12.15，并单独更新每个环境中的 pip / certifi                                                                                            |
| 3.13       | 3.13.16                                                                                                                                                                                                             | **3.13.17**                                                                                                                  |
| 3.14       | 3.14.8                                                                                                                                                                                                              | **3.14.9**                                                                                                                   |
| 3.15       | 正式 3.15.0 已包含两项 TLS 修复 [S31](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-31)[S47](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-47) | **3.15.1**                                                                                                                   |

3.11、3.12 的上游安全版本可能只有源码发布；使用操作系统包时，核对厂商回补公告和完整包版本，不要求把系统 Python 强行替换成自行编译版本。[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)[S34](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-34)

| 独立依赖                   | 建议版本基线                     | 说明                                                                                                                                                                                                                                   |
| ---------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Django 5.2 / 6.0 / 6.1 | **5.2.18 / 6.0.9 / 6.1.2** | 纳入 10 月 6 日后续修正 [S38](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-38)[S39](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-39)                         |
| certifi                | **≥2026.10.19**            | GHSA 初始补丁为 .18；PSF 推荐 .19 以保留未受影响证书的兼容性 [S36](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-36)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37) |
| pip                    | **≥26.2.2**                | 内置的 certifi 副本需另更新 [S35](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-35)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)                      |
| uv（若使用）                | **≥0.13.4**                | 按实际安装方式更新 [S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)                                                                                                                             |

\*\*上述基线对应已列明的补丁范围。\*\*10 月 22 日又披露了一项 `tar_filter` 中危问题，截至 2026 年 10 月 23 日，尚未确认包含该修复的正式维护版；因此，3.13.17 / 3.14.9 / 3.15.1 不能视为已覆盖所有 tarfile 问题。见第 5.4 节。[S40](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-40)

### 2.4 发行版回补如何认定

适用于 Ubuntu、Debian、RHEL 等软件包的实施原则：

1. 记录操作系统版本、仓库来源、完整包版本和厂商安全公告编号。
2. 确认公告包含具体 CVE，以及对应发行版的修复包门槛。
3. 对照实际运行进程所加载的二进制/库，而非仅对比上游短版本。
4. 没有厂商补丁证据时，保留“尚待确认”，不要把版本号看起来旧或新当作唯一结论。

不同发行版的 apt/RPM 包版本与回补策略存在差异，应以各发行版的安全公告和完整包版本为准。

## 3. Node.js / JavaScript 生态：成因与修复分析

### 3.1 CVE-2026-111497：Brotli 原生解码器越界写

**披露：2026-10-21；Node 官方等级：High。** Node 22.x、24.x、26.x 的受影响构建需要安装第 2.1 节补丁。Node 公告未列出数值 CVSS 评分。[S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)

问题发生在处理畸形 Brotli 压缩流时的原生解码逻辑，可导致越界写。Vercel 的官方说明确认，研究演示涉及进程内存泄露与命令执行。攻击者能否触达解码器，取决于应用或依赖是否实际解码其控制的数据。[S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)

需要同时检查两个方向：

- \*\*入站：\*\*框架或中间件自动解压用户提交的 Brotli 请求体。
- \*\*出站：\*\*HTTP 客户端、图片抓取器等访问攻击者可控来源，并自动解压返回内容。

因此，仅关闭服务器向浏览器发送 Brotli 压缩内容，并没有移除“解码”入口；只做入站 WAF 防护也覆盖不到主动抓取响应的路径。[S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)

\*\*补丁方向：\*\*Node 将 Brotli 上游修复移入原生依赖，补充非法解码状态检查与错误传播。维护自编译版本时，应采用正式安全发布或匹配分支的完整补丁，不能只改一个 JavaScript 包的版本声明。[S4](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-4)

\*\*临时实施建议：\*\*停止不必要的不可信 Brotli 解码；检查中间件与 HTTP 客户端的自动解压行为；如果业务必须接受该格式，尽快在已修补环境完成处理。调整 `Accept-Encoding` 只是协商行为，不应单独作为已阻断恶意响应的证据。

### 3.2 TLS / DNS 的三个 High：校验对象与实际目标不一致

三项均于 10 月 21 日披露，正式升级门槛见第 2.1 节。[S1](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-1)

| 标识              | 已确认问题                         | 官方影响分支             |
| --------------- | ----------------------------- | ------------------ |
| CVE-2026-105482 | `dns.resolve` 对包含 NUL 的名称发生截断 | 22.x / 24.x / 26.x |
| CVE-2026-105483 | 全角数字形式的 IP 导致证书主机名校验绕过        | 24.x / 26.x        |
| CVE-2026-106069 | 可被宽松解释为 IP 的主机名导致 TLS 校验绕过    | 22.x / 24.x / 26.x |

DNS 问题的本质是上层检查的字符串与底层实际解析的名称不同。官方修补在解析入口拒绝 NUL，并增加回归覆盖。[S6](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-6)

TLS 两项涉及名称规范化、IP 解释与证书匹配的一致性。修补使非标准 IP 输入被拒绝或正确处理，避免把实际 IP 端点与证书域名身份混为一谈。[S5](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-5)

\*\*实际排查建议：\*\*优先检查接收用户 URL、动态代理目标或 Webhook 地址的代码；统一规范化与允许列表判断，拒绝 NUL/控制字符，确认合法 IPv4、IPv6 和国际化域名仍工作。是否能进一步构成 SSRF，需要应用链路证据，不能从 CVE 名称直接推导。

不要通过 `NODE_TLS_REJECT_UNAUTHORIZED=0` 或 `rejectUnauthorized: false` 消除升级后的校验错误。应修正地址、证书与业务配置。

### 3.3 7 月 HTTP/2 高危与权限模型问题

7 月披露的下列问题仍需纳入排查，部署时建议直接采用第 2.1 节的 10 月安全版本基线。[S7](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-7)

| CVE            | 成因与影响                                                                | 首个修复版本                     |
| -------------- | -------------------------------------------------------------------- | -------------------------- |
| CVE-2026-56846 | 留存的 HTTP/2 header 块未被正确纳入 `maxSessionMemory` 预算，可耗尽内存；影响 22.x / 24.x | 22.23.2 / 24.18.1          |
| CVE-2026-56848 | HTTP/2 收包过程中重入发送路径，造成堆 UAF；影响 22.x / 24.x / 26.x                     | 22.23.2 / 24.18.1 / 26.5.1 |
| CVE-2026-58043 | `--permission` 路径前缀边界匹配过宽，可能访问允许列表外文件                                | 同上三条维护线                    |

三项官方均为 High。前两项优先检查 HTTP/2 是否由 Node 本身处理；第三项只有在使用权限模型并依赖该边界时才有对应意义。不能把权限模型项一律描述为无需认证的网络 RCE。[S7](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-7)

临时把 HTTP/2 终止在独立、已更新的代理上，并限制后端来源，是降低暴露的部署选择；资源配额只能控制资源耗尽的后果，不能修补 UAF。

### 3.4 10 月 React / Next.js：两项 RCE 与一项 DoS

#### A. RSC / `use cache` 返回 typed arrays 的 RCE

\*\*公开日期：2026-10-14；Critical，CVSS 4.0 9.5。\*\*官方公告标识如下：

- React：**GHSA-xqc2-xf4c-x3h3**。
- Next.js：**GHSA-673q-mjm6-r5xr**。[S9](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-9)[S10](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-10)

React 上游问题涉及 RSC 响应中的多个 typed arrays 与攻击者可控值组合。受影响的三个 `react-server-dom-*` 包版本为 **19.0.0—19.0.8、19.1.0—19.1.9、19.2.0—19.2.8、19.3.0**；修复门槛见第 2.1 节。纯浏览器端 React，或完全不使用支持 RSC 的框架/插件的应用，不属于此项范围。[S10](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-10)

Next.js 下游公告列出 **16.0.0—16.4.0**，修于 **16.4.1**；场景是 App Router、Cache Components 和返回多个 typed arrays 的 `use cache` 函数。官方没有可靠的通用 workaround，并要求受影响版本用户及时升级，不宜仅靠人工搜索“好像没有这个函数”结束处置。[S9](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-9)

#### B. SVG 图像优化 RCE

\*\*CVE-2026-96889 / GHSA-2464-fhr4-w9xw，2026-10-14，Critical，CVSS 4.0 9.5。\*\*问题在图像优化所用的上游原生库，官方指出 **glibc Linux** 场景存在 RCE 风险。[S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)

官方版本字段为：

- `>=10.0.0 <=15.5.27`；
- `>16.0.0 <=16.4.0`。

官方对 16.x 分支使用严格下界 `>16.0.0`，但该范围表述不足以证明 16.0.0 已安全。实际升级目标统一采用 **15.5.28 / 16.4.1**。[S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)

官方临时方案是保证 **Next 真正加载的 sharp ≥0.35.5**。锁文件、嵌套依赖和部署镜像可能仍保留旧实例，因此仅在顶层添加一个新版 `sharp` 依赖不够，应检查最终依赖树并重新构建。[S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)

#### C. Server Actions CPU 耗尽

\*\*GHSA-p3m5-59mp-jv5r，2026-10-14，High，CVSS 4.0 8.2。\*\*Next 影响 **13.0.0—15.5.27、16.0.0—16.4.0**，修复 **15.5.28 / 16.4.1**。条件为 App Router 且至少一个 Server Action；恶意请求可让 CPU 长时间被占用，阻塞同进程后续请求。Pages Router 或没有 Server Actions 的应用不受此项影响。[S12](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-12)

官方未给出可代替升级的 workaround。限流、并发与资源配额可减小损害，但不能作为补丁验收结论。

### 3.5 同窗口内更早的 Next.js 严重问题

以下项用于避免遗漏仍停留在 8—9 月以前版本的部署；不建议现在只升到表中的旧修复门槛。

| 日期         | 标识 / 场景                                                                                                                                | 首个修复；现行行动                                                                                                                                       |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| 2026-08-25 | GHSA-2xp9-vwfh-vxw4：AVIF 图像优化原生库 RCE，Critical                                                                                          | 15.5.24 / 16.3.3；现在采用 15.5.28 / 16.4.1 [S13](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-13)           |
| 2026-08-25 | CVE-2026-75604：Windows 上同时使用 Pages Router 与 App Router，且未启用 Cache Components 时的 RCE，Critical；版本 `>=13.4.0 <15.5.24`、`>=16.0.0 <16.3.3` | 15.5.24 / 16.3.3；Linux/macOS 不受这一特定 Windows 问题影响 [S14](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-14) |
| 2026-09-22 | GHSA-vcvr-r3jv-pc5j：`next/og` 的 Node 图像生成路径处理不可信 SVG，Critical；16.2.0—16.3.5                                                            | 16.3.6；Edge 实现不在此项范围，15.x 不属于该 RCE 影响分支 [S15](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-15)          |

## 4. Java 生态：运行时信任、容器与框架分开处理

### 4.1 JDK：常规 CPU 与 CVE-2026-91403 是两层更新

10 月 20 日 Oracle CPU 的 Java SE 风险矩阵列出 **55 个新安全补丁，其中 49 项标为可通过网络无认证利用**。这并不表示 55 个 Critical，也不表示每个 Java Web 服务都存在 49 条可直接利用的 RCE 路径；要结合矩阵中的组件、API、用户交互和部署条件理解。[S16](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-16)

次日的 \*\*CVE-2026-91403（CVSS 3.1 9.1）\*\*处理另一类风险：不再信任与 eMudhra 事件相关的一组中间 CA。它影响 TLS 对端身份认证及通信机密性/完整性，不能描述为 JVM 内存破坏漏洞。[S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)

Oracle 公告将 10 月 20 日发布的版本列为受影响，因此还需安装 10 月 21 日的带外更新，具体版本见第 2.2 节。GraalVM 也有对应受影响产品，修复版本应以其专属安全公告为准。[S17](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-17)[S18](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-18)

\*\*临时官方措施：\*\*先备份，再从每个实际使用的 truststore 移除指定根证书：

- `emSign ECC Root CA - G3`，Oracle 别名 `emsigneccrootcag3 [jdk]`。
- `AAA Certificate Services`，Oracle 别名 `comodoaaaca [jdk]`。[S19](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-19)

JDK 11 及以后，官方示例为：

```bash
keytool -delete -cacerts -alias "emsigneccrootcag3 [jdk]"
keytool -delete -cacerts -alias "comodoaaaca [jdk]"
```

这些命令应使用**目标 JDK 自带的 keytool**，并确认操作的是应用实际信任库。Java 8 使用对应 `jre/lib/security/cacerts` 路径；定制 truststore 要单独处理，其他发行商的别名可能不同。根证书移除会扩大拒绝范围，应回归合法业务证书链。[S19](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-19)

官方还提供启用撤销检查的选择，但效果取决于实际 TLS 实现、撤销服务可达性与失败策略。对一般部署，优先安装厂商完整更新，避免把两个 JVM 开关当作所有 TLS 库都已修复的证据。

### 4.2 Tomcat：认证绕过与跨用户请求隔离

下列三项于 **2026-10-20** 公开；修复版条目日期是 **10 月 12 日**。Apache 官方等级均为 **Important**。[S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23)

| CVE             | 确认影响区间                                               | 必要场景 / 结果                                         |
| --------------- | ---------------------------------------------------- | ------------------------------------------------- |
| CVE-2026-101296 | 9.0.0.M1—9.0.122；10.1.0-M1—10.1.60；11.0.0-M1—11.0.26 | JNDIRealm 配置非 GSSAPI 的 SASL 认证机制，凭据验证缺失，错误密码也可能通过 |
| CVE-2026-101356 | 9.0.118—9.0.122；10.1.55—10.1.60；11.0.22—11.0.26      | HTTP/2 的异步 Servlet 错误处理错误回收/复用对象，造成用户间请求或响应串线     |
| CVE-2026-103119 | 仅确认 **11.0.0-M25—11.0.26**                           | AJP 大型非阻塞写发生 buffer under-read，可能把前一响应数据带入后续请求    |

对应修复为 **9.0.123 / 10.1.61 / 11.0.27**；AJP 这一项按公告仅列 Tomcat 11，不能扩展成三个分支都有相同问题。[S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23)

JNDIRealm 补丁修复实际认证流程中的校验缺口，不能用“应用登录界面看起来正常”代替验证。应检查服务真正配置的 Realm、SASL 机制，并测试错误密码必须失败。[S24](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-24)

\*\*临时实施建议：\*\*隔离受影响认证路径；在业务允许时暂停 Tomcat 的 HTTP/2 处理；关闭无用 AJP。仅限制 AJP 端口的直接访问，不能证明经合法前置代理进入的流量没有影响。正式更新后应测试两个独立用户的异步并发请求，确认身份和响应没有串线。

### 4.3 Spring for GraphQL：CVE-2026-59285 漏洞

\*\*公开日期：2026-08-20；High。\*\*受影响 **2.0.0—2.0.4**，修复 \*\*2.0.5（OSS）\*\*或 **2.0.4.1（商业支持）**。[S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)

这是分页查询中的不安全反序列化风险，官方要求以下条件同时满足：

1. 使用 Spring for GraphQL。
2. 使用 Jackson 2.x 反序列化 JSON。
3. 对外提供 Connection 分页字段。
4. classpath 存在可在实例化或反序列化中执行非预期逻辑的特定类。

满足条件时，恶意 GraphQL 请求可能造成 RCE。不能简化为“所有使用 Jackson 的 Java 程序都可被利用”。[S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)

\*\*为何不能停留在 2.0.4：\*\*6 月的 CVE-2026-41699 曾给出 2.0.4 等修复门槛，8 月公告又明确把 2.0.4 纳入新的影响范围。因此，修复记录必须按后续公告更新，不能沿用旧 CVE 的最低版本。[S26](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-26)

暂时无法升级时，可暂停不可信调用方能触达的相关分页字段；缩小可反序列化类型与类路径是纵深措施。回归应覆盖合法 cursor、分页结果及异常输入拒绝，并检查最终应用 JAR 内的实际组件版本。

### 4.4 Spring Security：CVE-2026-59270 与关联认证风险

\*\*CVE-2026-59270，2026-08-20，Critical。\*\*内嵌 `UnboundIdContainer` 默认登记已知管理员身份，并监听所有网卡。组件启用且端口可达时，攻击者可读取或修改目录数据；普通引入 Spring Security 的项目不因此自动暴露 LDAP。[S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)

受影响范围：

| 分支        | 受影响                       | 首个修复 / 获取渠道            |
| --------- | ------------------------- | ---------------------- |
| 7.1       | 7.1.0                     | 7.1.1 OSS；另有商业 7.1.0.1 |
| 7.0       | 7.0.0—7.0.6               | 7.0.7 OSS；另有商业 7.0.6.1 |
| 6.5 / 6.4 | 6.5.0—6.5.11；6.4.0—6.4.18 | 6.5.12 / 6.4.19，商业     |
| 5.8 / 5.7 | 5.8.0—5.8.27；5.7.0—5.7.25 | 5.8.28 / 5.7.26，商业     |

来源：[S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)。排查 `spring.ldap.embedded.*` 自动配置和直接实例化代码；生产不需要该组件时关闭它，并核对实际监听地址。业务确有需要时，先限制调用来源，再完成组件升级。

\*\*同批认证问题旁注：CVE-2026-47841（High）。\*\*WebAuthn 用户验证设为 `REQUIRED`，且 HTTP session 经分布式存储序列化后，错误的对象身份比较可能使验证要求失效。该攻击还需要攻击者已掌握用户认证器设备，不是无设备的任意远程登录。涉及 7.1、7.0、6.5、6.4 的对应受影响版本，修复门槛与上表这些分支一致；验证应覆盖跨节点 session 后仍要求 PIN/生物验证。[S28](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-28)

## 5. Python 生态：解释器、标准库、框架与证书

### 5.1 CVE-2026-19445：SNI 回调中的 SSLContext UAF

\*\*公开日期：2026-09-30；PSF 等级：Critical。\*\*在 Python 服务端 TLS 中，`sni_callback` 把连接切到另一个 `SSLContext`，且原上下文没有其他存活引用时，未认证 TLS 客户端可能使服务崩溃或调用已释放对象中的指针。[S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)

核心是 Python 对象与底层 TLS 回调生命周期不一致。原上下文已被释放，底层仍可能持有回调所需状态；需要用解释器原生补丁修复引用生命周期。[S47](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-47)

\*\*适用边界：\*\*仅充当 TLS 客户端的 Python 代码不受这一项影响；监听 socket 长期持有原上下文的常规模式，也不属于公告描述的特定失效路径。Nginx 终止 TLS 后只把本地 HTTP 交给 Python，和 Python 自己直接处理 SNI，是不同暴露面。[S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)

对应 3.10—3.14 修复版本见第 2.3 节。3.15 正式版已含修复，实际可选择 3.15.1。只更新 pip 依赖无法替换解释器的 `_ssl` 实现。[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)[S35](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-35)[S47](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-47)

\*\*官方临时缓解：\*\*把所有设置了 SNI 回调的 SSLContext 保持强引用，直到服务器生命周期结束。此举需覆盖实际动态创建与切换路径；自定义 OpenSSL 1.1.1 构建还应结合官方问题记录检查重协商条件，优先完整更新。[S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)[S47](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-47)

### 5.2 CVE-2026-19553：开启了 hostname 标志，调用却缺少 hostname

**公开日期：2026-09-30；High。**`SSLContext.check_hostname=True` 时，如果 `wrap_bio()` 没有传入 `server_hostname`，原实现可能静默跳过主机名验证。证书链校验成功不代表目标域名也已匹配。[S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)

修复分两件事：

- 更新第 2.3 节中的解释器安全版本。
- 检查 `wrap_bio()`、相关 `asyncio.create_connection()` / `loop.start_tls()` 路径，显式传入预期且非空的主机名，保持证书校验开启。[S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)

\*\*不能省略的兼容性差异：\*\*3.10、3.11、3.12 为兼容性，对缺失 hostname 的部分情况只发出 `DeprecationWarning`；3.13 及以后才抛出 `ValueError`。3.12 回补还明确区分 `None` 与空字符串：新增警告针对 `None`，空字符串仍报错。因此低分支用户不能仅凭升级，就假定原本缺失的域名校验已经自动恢复。[S31](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-31)[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)

验收可在测试环境使用“证书链可信、但主机名不匹配”的测试证书，确认真实业务 TLS 客户端拒绝连接。仅读取 `check_hostname` 布尔值不构成完整验收。

### 5.3 CVE-2026-82049：tarfile 过滤器中的链接组合绕过

\*\*公开日期：2026-09-14；High。\*\*在 CPython 3.13 及更早的相关实现中，不可信 tar 内的硬链接与符号链接组合可以绕过 `data` / `tar` 提取过滤器，使解包目录外文件的内容在解包树中暴露，或修改它们的权限、修改时间。[S32](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-32)

该漏洞已确认的影响包括文件内容暴露及元数据修改；这些影响本身不足以证明可任意覆盖外部文件内容或无条件实现 RCE。

3.10—3.13 对应修复门槛见第 2.3 节。**Python 3.14 自 3.14.0b1 起已因 `os.link()` 行为变化而不受这个特定问题影响**，因此不适用上述 3.10—3.13 分支的受影响范围。[S33](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-33)

\*\*临时和纵深措施：\*\*暂停不可信归档自动提取；业务必须处理时使用隔离的低权限工作进程、全新独占目录，按业务拒绝符号链接、硬链接与设备条目，并限制文件数量和解压资源。这些是部署建议。

`filter="data"` 对一般不可信归档比完全信任策略更合适，但旧版本上的过滤器自身也有本次漏洞，单加这个参数不能代替更新。过滤器也不是完整文件系统沙箱。[S32](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-32)[S45](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-45)

### 5.4 补充风险：CVE-2026-114583（Medium）与补丁发布状态

PSF 于 **2026-10-22** 披露 `tarfile.tar_filter` 对特定链接名的处理可被绕过，使后续成员写到解包目录外，等级为 **Medium**。官方修复 PR 当天合并；截至 2026 年 10 月 23 日，尚未确认包含该提交的正式维护版。[S40](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-40)

因此：

- 此项按 Medium 单独列示。
- 10 月 21 日发布的解释器版本不能视为已包含这项修复。
- 仍使用 `filter="tar"` 处理不可信归档的流程，应跟踪发行版回补；短期隔离或暂停该处理路径。改用 `data` 及拒绝链接时，也必须确认符合业务要求，不能把更换过滤器描述为无条件沙箱。

### 5.5 GeoDjango：CVE-2026-15307 及 10 月后续补漏

\*\*2026-08-04，Django 官方 High。\*\*空间查询把某些字符串/字典隐式传给 `GDALRaster`，驱动可能写文件或发起网络请求；具备特定路径与后续执行条件时可能形成 RCE。具有空间字段模型查看权限的 staff，也可能通过 admin changelist 触达此路径。[S38](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-38)

初始修复是 **5.2.17 / 6.0.8**，限制空间 lookup 接受的输入类型。这个变化可能影响原有使用字符串/字典表达 raster 的业务；把不可信输入简单包装成 GDALRaster，并不等于验证了它。[S38](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-38)

10 月 6 日又修复 **CVE-2026-87890（Moderate）**：以 bytes 表示的 VRT 可引用外部资源，仍引发网络请求；同日还加强了 CVE-2026-15830 的嵌套几何 DoS 防护。后两者不能升级描述成新的高危 RCE，但说明部署基线应采用 **5.2.18 / 6.0.9 / 6.1.2**。[S39](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-39)

实施上检查 API 与管理后台两种入口，限制不可信空间 lookup、文件写权限和出站访问；更新后回归合法空间查询及被禁止输入的拒绝行为。没有使用 GeoDjango 的普通 Django 应用，不应直接套用该 RCE 结论。

### 5.6 certifi / pip：证书信任必须覆盖每一份副本

\*\*GHSA-6q48-6c7w-9gw2，2026-10-20，Critical，未列已知 CVE。\*\*这是 eMudhra 中间 CA 事件引发的证书撤信更新，不能概括为 HTTPS 的密码学机制或所有根证书被破解。[S36](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-36)

certifi 公告最初列 **2026.10.18** 为修补版；PSF 随后明确推荐 **2026.10.19**，以保留未受影响根证书的兼容性。操作基线采用 .19。[S36](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-36)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)

需要区分：

| 信任材料的位置         | 为什么需要单独检查                     |
| --------------- | ----------------------------- |
| 操作系统 CA 包       | 镜像或主机的系统信任材料                  |
| venv 中的 certifi | 应用或 Requests 等实际使用的 CA bundle |
| pip 内置 certifi  | 与外部安装的 certifi 是不同副本          |
| uv / 其他打包工具     | 依工具自己的更新和信任来源处理               |
| 自定义 CA 文件、打包快照  | 可能继续覆盖系统或包的默认信任来源             |

以上是依据不同打包位置制定的核查清单。PSF 要求更新相关工具、现有虚拟环境并重建镜像；仅更新宿主机 CA 或重装解释器，不能证明所有副本都已刷新。[S35](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-35)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)

从旧 pip 安全引导升级时，PSF 提供了**固定 wheel 及 SHA-256**的命令，见附录 S37。不要以关闭 TLS 校验或加入 `--trusted-host` 来绕过证书问题。

## 6. 正式修复流程

以下命令适用于已确认可信的环境。执行时应结合项目已有的包管理器、锁文件和部署流程，避免混用 npm/pnpm/yarn 或 pip/uv/Poetry 生成互相冲突的锁文件。

\*\*先处理一个例外：\*\*若怀疑环境运行过第 9 节的投毒包，先隔离，从干净环境检查磁盘、锁文件和镜像记录；不要先运行下面的 Python/pip 命令。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

### 6.1 建立能对应真实流量的台账

每个服务至少记录：

- 外部入口、反向代理、源站直连路径，以及后台队列/定时任务。
- 实际启动命令、运行账户、二进制路径、进程或容器身份。
- 运行时完整版本、发行商/仓库、软件包完整版本或镜像 digest。
- 框架与传递依赖、锁文件、原生库、信任库路径。
- 对应漏洞条件是否存在、补丁目标、重启范围、负责人和验证结果。

对开发机、CI runner、构建容器和后台任务也要按其接触不可信内容的路径检查；不要只更新公网 Web 容器。

### 6.2 Node.js：先确定运行时，再更新应用依赖

在实际服务环境检查：

```bash
node -p 'JSON.stringify({execPath:process.execPath,node:process.version,openssl:process.versions.openssl,brotli:process.versions.brotli},null,2)'
npm ls next react react-dom react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack sharp --all
npm audit --omit=dev
```

`node -p` 应使用服务实际可执行文件或在实际容器内执行；它检查的是新启动的进程，本身不能证明旧 worker 已替换。Node 可以把补丁回补到内置 Brotli 而保留原库版本字符串，因此不要只靠 `process.versions.brotli` 判定是否修复，应结合 Node 安全版本或厂商回补证据。[S2](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-2)[S4](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-4)

`npm ls` 用于看实际依赖树；缺失包或 peer 冲突也可能产生非零退出码，应读具体输出。`npm audit` 作为依赖检查辅助，不能替代 Node 二进制和原生库核对。

使用 **mise 管理 Node 24** 的环境，可按以下示例更新：

```bash
mise use -g node@24.22.1
mise exec node@24.22.1 -- node -p 'process.version + " " + process.execPath'
```

`mise use -g` 配置全局版本；项目本地配置仍需另外检查。服务若固定了旧的绝对路径、容器基础镜像或不同账户的环境，还要更新对应配置并重启服务。命令本身不会替换正在运行的旧进程。[S43](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-43)

在 Next 项目内，按已选分支执行对应命令。Next 15 项目：

```bash
# Next 15 分支
npm install --save-exact next@15.5.28
```

Next 16 项目：

```bash
# Next 16 分支
npm install --save-exact next@16.4.1
```

检查 React/RSC 兼容依赖、锁文件和最终 sharp 实例，再按项目流程构建。CI 中使用已更新的锁文件进行可复现安装，构建后检查运行镜像内的版本。不要把不受控的跨主版本自动修复作为本次应急默认方案。

### 6.3 Java：核实发行商、实际 JVM 和内嵌组件

初步盘点：

```bash
java -XshowSettings:properties -version
```

输出中的 `java.home`、`java.runtime.version` 与发行商，应与服务实际使用的 JVM 对齐。对于有 attach 权限的 JVM，可用该 JDK 的 `jcmd` 核对目标进程，而不只看登录 shell。

可信项目中检查依赖，按实际构建工具选择：

```bash
./mvnw dependency:tree '-Dincludes=org.apache.tomcat.embed:*,org.springframework.security:*,org.springframework.graphql:*'

./gradlew dependencyInsight --dependency tomcat-embed-core --configuration runtimeClasspath
./gradlew dependencyInsight --dependency spring-security-core --configuration runtimeClasspath
./gradlew dependencyInsight --dependency spring-graphql --configuration runtimeClasspath
```

这些构建命令可能执行插件并联网解析依赖，仅对可信项目运行。检查最终 JAR/WAR 或镜像中的实际 JAR，不以构建文件声明代替最终产物。Spring Boot 内嵌 Tomcat 需要重建应用；更新系统中一个独立 Tomcat 安装不会修改应用包里的副本。

运行时更新后，逐项核对自定义 `javax.net.ssl.trustStore`、应用自行加载的 KeyStore、jlink runtime、GraalVM/native image 等交付形态。已有定制信任材料的应用不能仅凭 JDK 目录变新就结束检查。

### 6.4 Python：逐个解释器与虚拟环境处理

在确认可信的实际 venv / 容器内：

```bash
python - <<'PY'
import sys
import ssl
import importlib.metadata as metadata

print("executable:", sys.executable)
print("version:", sys.version)
print("openssl:", ssl.OPENSSL_VERSION)
print("verify_paths:", ssl.get_default_verify_paths())
for name in ("pip", "certifi", "Django", "urllib3", "Brotli", "litellm"):
    try:
        print(name + ":", metadata.version(name))
    except metadata.PackageNotFoundError:
        print(name + ": not installed")
PY

python -m pip --version
python -m pip check
```

这份脚本只做信息采集，不执行版本合格判定。`ssl.get_default_verify_paths()` 是默认路径信息，不能证明所有第三方客户端都采用同一信任库；应结合应用配置确认。

完成附录 S37 的可信 pip 引导升级后，再按项目约束更新证书依赖，例如：

```bash
python -m pip install --upgrade 'certifi>=2026.10.19'

# 仅适用于当前就选择 Django 5.2 的项目
python -m pip install --upgrade 'Django>=5.2.18,<5.3'

python -m pip check
```

需要同时更新项目的 requirements/锁文件，否则下次部署可能恢复旧版本。使用 uv、Poetry 或企业包仓库时，使用其现有锁定与发布流程；不要只在某个生产容器内手改包。

可在已受信环境中，使用项目既有的 `pip-audit` 工作流检查已知依赖漏洞；它不是恶意代码扫描器，也不覆盖全部解释器、系统库和信任库风险。[S44](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-44)

\*\*不建议把系统 `/usr/bin/python3` 强行指向一个新编译版本。\*\*使用发行版安全更新或项目隔离运行时，避免破坏依赖系统 Python 的管理工具。这是实施选择，不是本次漏洞的额外修复要求。

### 6.5 重建与替换运行实例

建议将以下步骤作为一次完整变更：

1. 在原有可信源取得补丁，并保存版本/哈希和依赖锁。
2. 在接近生产的环境回归关键功能，确认原生扩展和 JVM/框架兼容。
3. 更新运行时、应用依赖及实际信任库；对容器刷新基础镜像与系统 CA，不能只重用旧层。
4. 重建应用和镜像，滚动替换服务、worker、队列消费者与定时任务实例。
5. 在新运行实例里重新核对版本和配置，确认旧副本全部退出。
6. 观察错误率、延迟、CPU/内存、TLS 握手失败和进程崩溃。

回滚应优先保留安全运行时与补丁依赖，回滚应用配置或业务变更。若不得不回到存在漏洞的旧产物，应同步恢复对应入口限制，明确责任人与最短恢复期限。

## 7. 临时缓解与 Patch 选择

### 7.1 临时措施的覆盖边界

以下是根据公告利用条件整理的实施建议，除注明官方方案外，不表示厂商保证能够完全阻断所有变体。

| 风险                          | 可暂时采取的措施                              | 不能据此认定已完成的部分                                                                                                                                                                                                                                                                                               |
| --------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Brotli 解码                   | 停止不可信输入解码；检查入站和出站自动解压                 | 入站 WAF 或关闭响应压缩不覆盖全部解码入口 [S3](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-3)                                                                                                                                                                                       |
| Next.js typed arrays RCE    | 立即升级；必要时临时隔离受影响服务                     | 官方没有可靠通用 workaround [S9](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-9)                                                                                                                                                                                           |
| Next.js SVG RCE             | 官方方案：确保实际 sharp ≥0.35.5；业务允许时暂停相关优化入口 | 不覆盖其他 Next/RSC 问题 [S11](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-11)                                                                                                                                                                                           |
| Tomcat Realm / HTTP/2 / AJP | 隔离相应路径、关闭不必要 Connector                | 仍需相应分支修复包 [S21](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-21)[S22](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-22)[S23](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-23)       |
| GraphQL 反序列化                | 暂停受影响 Connection 字段；限制不可信调用方          | 仅做请求长度限制不能修复类型/反序列化问题 [S25](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-25)                                                                                                                                                                                       |
| Spring embedded LDAP        | 不需要时禁用；限制真实监听端口的可达范围                  | 默认管理身份与目录完整性仍需检查 [S27](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-27)                                                                                                                                                                                            |
| CPython SNI UAF             | 官方方案：保留相关 SSLContext 强引用至服务结束         | 必须覆盖所有创建/切换路径 [S29](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-29)                                                                                                                                                                                               |
| Python hostname 跳过          | 官方方案：正确传递预期 server\_hostname          | 不能只检查 check\_hostname 标志或忽略警告 [S30](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-30)[S31](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-31)                                                                                 |
| 不可信 tar                     | 停用/隔离提取，拒绝非必要链接与设备条目                  | 过滤器与资源配额都不是通用沙箱 [S32](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-32)[S40](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-40)[S45](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-45) |
| 证书信任事件                      | 更新正确 CA 材料；Java 可按官方方案撤信              | 关闭 TLS 校验会扩大风险 [S19](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-19)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)                                                                                                |

### 7.2 根据交付方式选择补丁

| 交付方式                   | 优先修复方式              | 应保留的证据                    |
| ---------------------- | ------------------- | ------------------------- |
| 发行版管理运行时               | 厂商对应安全更新            | 完整包版本、公告、仓库来源             |
| 官方二进制 / 运行时管理器         | 同分支正式安全发布           | 版本、来源与摘要、实际执行路径           |
| 自编译 Node / CPython     | 分支匹配的正式源码版，或厂商完整回补集 | 提交集合、构建参数、依赖库与回归结果        |
| Spring / Next / Django | 兼容分支内更新，重建依赖锁与最终应用  | 最终依赖树、JAR/包/镜像中的实际版本      |
| 定制信任库                  | 官方撤信方案或确认包含撤信的厂商更新  | 实际使用路径、材料变更、TLS 正反向验证     |
| 已被投毒的环境                | 从干净可信产物重建，另行事件调查    | 历史包/镜像 digest、安装记录、凭据轮换记录 |

### 7.3 关键补丁机制与审阅重点

- \*\*Brotli：\*\*关注原生解码状态的边界检查与错误返回是否完整进入构建；只替换 JavaScript 包无法改变静态编译进 Node 的代码。[S4](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-4)
- \*\*Node DNS/TLS：\*\*关注输入拒绝、地址规范化、IP SAN 与 DNS 身份的区分，以及 DNS 回调式/Promise 式解析路径和 TLS 主机名匹配测试。[S5](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-5)[S6](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-6)
- \*\*Tomcat JNDIRealm：\*\*关注认证流程是否真正验证凭据，而不只是获得了一个目录上下文；优先正式版本，不把单个源文件替换视为完整二进制补丁。[S24](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-24)
- \*\*CPython ssl：\*\*关注 Python 引用所有权与底层 SSLContext 的生命周期；`wrap_bio()` 回补同时有分支兼容差异，必须读所用分支的实际实现。[S31](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-31)[S47](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-47)
- \*\*证书撤信：\*\*这类更新可能表现为信任材料或拒绝列表变化，而不是明显的 API 变更。Node 同批还纳入了受影响中间 CA 的拒绝机制；Java 与 Python 各自的信任来源仍要分别验收。[S19](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-19)[S37](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-37)[S46](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-46)

\*\*独立 Brotli 绑定也要检查。\*\*Google 上游同日发布 **1.0.10 / 1.1.1 / 1.2.1** 修复 CVE-2026-111497。Python 原生扩展或 JNI 产物若嵌入受影响的同一 C 实现，需要独立更新/重建；不能推断所有纯 Java 解码器都受影响，也不能认为升级 Node 自动替换其他语言的副本。[S42](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-42)

## 8. 修复验收与后续检查

### 8.1 最小验收清单

| 检查项             | 合格证据                                                                       |
| --------------- | -------------------------------------------------------------------------- |
| 运行时             | 真实进程 / 容器中的完整版本或厂商回补证据正确                                                   |
| 应用依赖            | 最终部署产物中的 Next/RSC/sharp、Tomcat/Spring、Django/certifi 达到对应门槛                |
| 替换范围            | 所有 worker/JVM/容器副本及后台任务已换新，旧实例退出                                           |
| TLS             | 合法域名证书成功；不匹配主机名、无效链按策略失败；定制信任库已覆盖                                          |
| eMudhra 撤信      | 受影响中间 CA 所建证书链被实际运行时拒绝，或有具体厂商安全构建/相应拒绝列表已部署的证据；不能只凭一般 TLS 测试或 Java 8 短版号结案 |
| Node 解码与图像      | 正常压缩响应、上传、图像优化与 RSC 功能可用；不可信来源策略生效                                         |
| Java 认证与隔离      | 错误密码被拒绝；独立用户并发异步请求没有身份/响应混用；LDAP 监听符合预期                                    |
| Python SNI / 归档 | 正常多域名 TLS 业务稳定；归档拒绝越界和非允许链接，目录外文件不被修改                                      |
| 数据与功能回归         | 分页、空间查询、权限检查和后台任务通过项目既有测试                                                  |
| 资源与观测           | CPU、内存、错误率、延迟及 TLS 错误没有异常增长                                                |
| 可追溯性            | 保存升级时间、包/镜像摘要、配置变更、验证结果和未解决项                                               |

这些是实施验收建议，不要求为每个 CVE 制作攻击脚本。涉及崩溃、资源耗尽、归档越界的验证，应在隔离环境使用上游回归测试或项目受控测试数据。

### 8.2 修补与入侵调查是不同工作

检查已有日志中的异常解码错误、worker/JVM 崩溃、可疑文件写入、目录数据变化、认证异常、出站请求和凭据使用记录。这些迹象需要结合上下文判断：一次崩溃或 OOM 不是成功利用的证明；没有告警也不是未受影响的证明。

发现未授权修改、凭据外泄或已确认恶意依赖时，应保存证据、隔离相关实例、从可信环境轮换受影响凭据，并重建系统。补丁不会撤销已被攻击者取得的令牌或恢复已经被修改的数据。

## 9. 供应链安全事件：LiteLLM 1.107.0 投毒

\*\*官方确认日期：2026-10-21。\*\*LiteLLM 报告其发布流水线被入侵，PyPI 的 **litellm==1.107.0** 以及同期 Docker/GHCR 部分产物含窃密与远程控制恶意代码，相关产物已经撤回。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

受影响判断应查看历史安装记录和镜像 digest；`latest`、`main-latest`、`main-stable` 等标签现在指向干净镜像，不证明事发时拉取的产物干净。官方当时建议临时固定 **1.106.2**；该建议针对此次事件，部署时仍需核对其他安全公告。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

对安装或运行过相关产物的环境：

1. 隔离并保全安装记录、镜像和日志，从干净环境检查。
2. **不要先启动可疑环境里的 Python/pip**；恶意 `.pth` / `sitecustomize.py` 可能随启动再次执行。
3. 从可信来源重建宿主、venv/容器；不能只卸载或降级包。
4. 按实际可访问范围撤销/轮换云凭据、LLM provider key、LiteLLM 密钥与数据库凭据，并审查异常使用。[S41](https://keendigit.com/zh/insights/node-java-python-security-remediation-guide#source-41)

这是已经确认的供应链事件，处置时需要同时考虑恶意代码执行、凭据泄露及持久化风险。截至 2026 年 10 月 23 日，官方仍在调查初始入侵过程。

## 附录：引用来源与链接

以下来源核验日期为 **2026-10-23**，包括项目官方安全公告、官方代码仓库和厂商说明。正文 \[Sx] 对应本附录；执行更新时应检查供应商是否发布了后续修订。

### S1 — Node.js：2026-10-21 安全公告

- 用途：四项运行时 High、影响分支、10 月安全发布。
- 链接：[官方安全公告](https://nodejs.org/en/blog/vulnerability/october-2026-security-releases)

### S2 — Node.js：三条维护线的正式发布说明

- 用途：核对 22.23.4、24.22.1、26.12.1 及实际并入的补丁。
- 链接：[Node.js 22.23.4](https://nodejs.org/en/blog/release/v22.23.4/)
- 链接：[Node.js 24.22.1](https://nodejs.org/en/blog/release/v24.22.1/)
- 链接：[Node.js 26.12.1](https://nodejs.org/en/blog/release/v26.12.1/)

### S3 — Vercel：Node.js Brotli RCE 安全通告

- 用途：入站/出站解码条件、WAF 覆盖边界、Node 20 状态。
- 链接：[Node.js security advisory: Brotli decoder RCE](https://vercel.com/kb/bulletin/node-js-security-advisory)

### S4 — Node.js：Brotli 官方修补提交

- 用途：原生解码检查与错误传播的实现依据。
- 链接：[Brotli 修补提交 49dff6f57a](https://github.com/nodejs/node/commit/49dff6f57a)

### S5 — Node.js：TLS 地址规范化修补

- 用途：全角数字与非标准 IP 的证书身份校验。
- 链接：[IP normalization regression 修补](https://github.com/nodejs/node/commit/935918e342)
- 链接：[拒绝非规范 IP 地址的修补](https://github.com/nodejs/node/commit/de49c913f2)

### S6 — Node.js：DNS NUL 校验修补

- 用途：输入拒绝与回归覆盖。
- 链接：[dns.resolve 输入校验修补](https://github.com/nodejs/node/commit/843a1627dc)

### S7 — Node.js：2026-07-29 安全公告

- 用途：HTTP/2 内存耗尽、UAF 和权限模型漏洞。
- 链接：[July 2026 Security Releases](https://nodejs.org/en/blog/vulnerability/july-2026-security-releases)

### S8 — Next.js：2026-10-14 安全更新

- 用途：统一升级基线及三项重点风险。
- 链接：[Next.js Security Update for Upstream Vulnerabilities](https://nextjs.org/blog/nextjs-security-update-october-14-2026)

### S9 — Next.js：typed arrays / use cache RCE（官方公告）

- 用途：GHSA-673q-mjm6-r5xr；影响区间、条件、评分与 workaround 状态。
- 链接：[Next.js 官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-673q-mjm6-r5xr)

### S10 — React：React Server Components RCE（官方公告）

- 用途：GHSA-xqc2-xf4c-x3h3；三种 RSC 包的受影响与修复版本。
- 链接：[React 官方安全公告](https://github.com/react/react/security/advisories/GHSA-xqc2-xf4c-x3h3)

### S11 — Next.js：SVG Image Optimization RCE（官方公告）

- 用途：CVE-2026-96889 / GHSA-2464-fhr4-w9xw；glibc、sharp 与原始版本边界。
- 链接：[SVG 图像优化官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-2464-fhr4-w9xw)

### S12 — Next.js：Server Actions DoS（官方公告）

- 用途：GHSA-p3m5-59mp-jv5r；影响条件、版本与评分。
- 链接：[Server Actions DoS 官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-p3m5-59mp-jv5r)

### S13 — Next.js：AVIF 图像优化 RCE

- 用途：2026-08-25，GHSA-2xp9-vwfh-vxw4。
- 链接：[AVIF 官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-2xp9-vwfh-vxw4)

### S14 — Next.js：Windows RCE（官方公告）

- 用途：2026-08-25，CVE-2026-75604 / GHSA-p293-qw3h-jr36。
- 链接：[Windows RCE 官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-p293-qw3h-jr36)

### S15 — Next.js：next/og ImageResponse RCE（官方公告）

- 用途：2026-09-22，GHSA-vcvr-r3jv-pc5j；Node 与 Edge 差别。
- 链接：[ImageResponse 官方安全公告](https://github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j)
- 链接：[9 月 22 日发布说明](https://nextjs.org/blog/nextjs-security-update-september-22-2026)

### S16 — Oracle：2026 年 10 月 CPU

- 用途：Java SE 风险矩阵、补丁数量及适用条件。
- 链接：[Oracle Critical Patch Update – October 2026](https://www.oracle.com/security-alerts/cpuoct2026.html)
- 链接：[Oracle Java SE CPU 版本列表](https://docs.oracle.com/en-us/iaas/releasenotes/java-management/jdk-cpu-october-2026.htm)

### S17 — Oracle：CVE-2026-91403 带外警报

- 用途：2026-10-21，JSSE 证书信任风险、受影响产品与 CVSS 3.1 9.1。
- 链接：[Oracle Security Alert](https://www.oracle.com/security-alerts/alert-cve-2026-91403.html)

### S18 — Oracle：JDK 正式版本与下载

- 用途：区分 10 月 20 日 CPU 和 21 日带外版本；Java 8 的短版本区分限制。
- 链接：[JDK release list](https://ops.java/releases/)
- 链接：[Oracle Java 下载页](https://www.oracle.com/java/technologies/downloads/)

### S19 — Oracle：eMudhra 临时撤信方案

- 用途：2026-10-22 更新；两项根证书、keytool、定制 truststore 和撤销检查。
- 链接：[Distrusting eMudhra Intermediate Certificates in Oracle JDK](https://ops.java/emudhra)

### S20 — Eclipse Adoptium：发布构建记录

- 用途：Temurin 受证书事件影响而重新打包；不能机械套用 Oracle 版本后缀。
- 链接：[Adoptium Release Scorecards](https://github.com/adoptium/adoptium/wiki/Adoptium-Release-Scorecards)

### S21 — Apache Tomcat 9 安全公告

- 用途：9 分支精确受影响区间与 9.0.123 修复。
- 链接：[Tomcat 9 vulnerabilities](https://tomcat.apache.org/security-9.html)

### S22 — Apache Tomcat 10 安全公告

- 用途：10.1 分支精确区间与 10.1.61 修复；10.0 EOL。
- 链接：[Tomcat 10 vulnerabilities](https://tomcat.apache.org/security-10.html)

### S23 — Apache Tomcat 11 安全公告

- 用途：三项 Important、11.0.27、AJP 适用范围及披露/发布日期。
- 链接：[Tomcat 11 vulnerabilities](https://tomcat.apache.org/security-11.html)

### S24 — Apache Tomcat：JNDIRealm 修补提交

- 用途：认证验证缺口的正式修复依据。
- 链接：[JNDIRealm 修补提交](https://github.com/apache/tomcat/commit/e43453fc04abb44f64faf571ca98af71aa3c20a1)

### S25 — Spring：GraphQL CVE-2026-59285（官方公告）

- 用途：2026-08-20，必要条件、2.0.5 OSS / 2.0.4.1 商业修复。
- 链接：[Spring for GraphQL Unsafe Deserialization](https://spring.io/security/cve-2026-59285/)

### S26 — Spring：GraphQL CVE-2026-41699（官方公告）

- 用途：更早的修复门槛，仅用于解释为什么不能停留在旧基线。
- 链接：[6 月 GraphQL 安全公告](https://spring.io/security/cve-2026-41699/)

### S27 — Spring Security：CVE-2026-59270（官方公告）

- 用途：内嵌 UnboundID LDAP、已知管理身份与 OSS/商业版本区分。
- 链接：[Spring embedded LDAP 安全公告](https://spring.io/security/cve-2026-59270/)

### S28 — Spring Security：CVE-2026-47841（官方公告）

- 用途：WebAuthn 用户验证、session 序列化与攻击前提。
- 链接：[WebAuthn 安全公告](https://spring.io/security/cve-2026-47841/)

### S29 — PSF：CVE-2026-19445 独立安全公告

- 用途：2026-09-30，Critical、SNI 条件与保持 SSLContext 引用的临时措施。
- 链接：[SSLContext UAF 官方公告](https://mail.python.org/archives/list/security-announce@python.org/thread/QMQIUQB6WGGC3MI7I3WKQXOYOBDSPPS3/)

### S30 — PSF：CVE-2026-19553 独立安全公告

- 用途：2026-09-30，High、缺失 hostname 与显式参数缓解。
- 链接：[wrap\_bio 主机名校验官方公告](https://mail.python.org/archives/list/security-announce@python.org/thread/QNZRG3YOAMTHDCMVCICXGY6YEFPY2VDL/)

### S31 — CPython：wrap\_bio 正式补丁与 3.12 回补

- 用途：3.10—3.12 警告兼容策略，None 与空字符串的区别。
- 链接：[主修补 PR #158503](https://github.com/python/cpython/pull/158503)
- 链接：[3.12 回补 PR #158513](https://github.com/python/cpython/pull/158513)
- 链接：[3.15 回补 PR #158511](https://github.com/python/cpython/pull/158511)

### S32 — PSF：CVE-2026-82049 独立安全公告

- 用途：2026-09-14，High、链接组合、元数据修改与内容暴露。
- 链接：[tarfile 链接绕过官方公告](https://mail.python.org/archives/list/security-announce@python.org/thread/EFJWGAZJA56AKSBR2WHMHQZO7RRLZPRH/)

### S33 — CPython：9 月底 / 10 月初正式安全发布

- 用途：最低修复版本、源码发布方式与 3.14 对 tarfile 特定问题的豁免。
- 链接：[Python 跨分支安全发布说明](https://blog.python.org/2026/10/python-31022-31117/)
- 链接：[Python 3.11.17](https://www.python.org/downloads/release/python-31117/)
- 链接：[Python 3.12.15](https://www.python.org/downloads/release/python-31215/)
- 链接：[Python 3.13.16](https://www.python.org/downloads/release/python-31316/)
- 链接：[Python 3.14.8](https://www.python.org/downloads/release/python-3148/)

### S34 — CPython：3.10 最后一次安全发布

- 用途：3.10.22 及上游生命周期结束。
- 链接：[Python 3.10.22](https://www.python.org/downloads/release/python-31022/)

### S35 — CPython：2026-10-21 紧急维护版本

- 用途：3.13.17 / 3.14.9 / 3.15.1，内置 pip 与 certifi 更新、现有 venv 要求。
- 链接：[Python 3.13.17](https://www.python.org/downloads/release/python-31317/)
- 链接：[Python 3.14.9](https://www.python.org/downloads/release/python-3149/)
- 链接：[Python 3.15.1](https://www.python.org/downloads/release/python-3151/)

### S36 — certifi：emSign 证书撤信公告

- 用途：2026-10-20，GHSA-6q48-6c7w-9gw2，Critical，无已知 CVE。
- 链接：[certifi 官方安全公告](https://github.com/certifi/python-certifi/security/advisories/GHSA-6q48-6c7w-9gw2)

### S37 — PSF：eMudhra / emSign 对 Python 用户的影响

- 用途：certifi .19 推荐、pip/uv 基线、带 SHA-256 的可信引导升级命令。
- 链接：[PSF 官方事件与升级说明](https://discuss.python.org/t/information-for-python-users-regarding-emudhra-emsign-ca-certificate-security-incident/109576)

S37 所引官方说明提供的 pip 引导升级命令如下。仅在已经确认可信的 Python 环境中使用；若存在第 9 节投毒嫌疑，先按事件流程隔离和重建。它固定 wheel 内容哈希，随后再按项目流程更新其他依赖。

```bash
python -m pip install "pip @ https://files.pythonhosted.org/packages/3f/06/3e4420302363fbb71be3c7f35ce042f54bfca330e3e66b3a2e3c4cca579f/pip-26.2.2-py3-none-any.whl#sha256=fd7f4dfa8190e014013b9f08f3e973f4e4c26ffd179a204895533a7254813a70"
```

### S38 — Django：2026-08-04 安全发布

- 用途：CVE-2026-15307、GeoDjango 利用条件、初始修复及兼容性变化。
- 链接：[Django 6.0.8 / 5.2.17](https://www.djangoproject.com/weblog/2026/aug/04/security-releases/)

### S39 — Django：2026-10-06 安全发布

- 用途：CVE-2026-87890、几何 DoS 后续补强与当前选定基线。
- 链接：[Django 6.1.2 / 6.0.9 / 5.2.18](https://www.djangoproject.com/weblog/2026/oct/06/security-releases/)

### S40 — PSF / CPython：最新 tar\_filter 旁注

- 用途：2026-10-22，CVE-2026-114583（Medium）；PR 合并不等于正式维护版已发布。
- 链接：[PSF 独立公告](https://mail.python.org/archives/list/security-announce@python.org/thread/43JOWPRAV5DI3VZ4FUEUAZOHCATXXOCK/)
- 链接：[CPython 修补 PR #160098](https://github.com/python/cpython/pull/160098)

### S41 — LiteLLM：10 月 21 日官方供应链事件报告

- 用途：1.107.0 受污染产物、历史 digest、隔离重建与凭据处置。
- 链接：[Contained: LiteLLM v1.107.0 Compromised](https://docs.litellm.ai/blog/security-incident-oct-21-2026)

### S42 — Google Brotli：官方安全版本

- 用途：独立 Brotli 1.0.10 / 1.1.1 / 1.2.1 及跨语言嵌入副本核查依据。
- 链接：[Brotli releases](https://github.com/google/brotli/releases)

### S43 — mise：use 命令官方文档

- 用途：指定工具版本、全局配置的命令语义。
- 链接：[mise use](https://mise.jdx.dev/cli/use.html)

### S44 — PyPA：pip-audit 官方项目

- 用途：Python 依赖漏洞审计的用途与能力边界。
- 链接：[pip-audit](https://github.com/pypa/pip-audit)

### S45 — Python：tarfile 提取过滤器文档

- 用途：data 策略、默认行为变化及不能替代沙箱的限制。
- 链接：[tarfile extraction filters](https://docs.python.org/3/library/tarfile.html#extraction-filters)

### S46 — Node.js：中间 CA 拒绝机制

- 用途：本次 eMudhra 相关信任链处理，不等同所有根证书的密码学失效。
- 链接：[Node.js PR #66871](https://github.com/nodejs/node/pull/66871)

### S47 — CPython：SNI UAF 技术记录与修补

- 用途：引用生命周期、特殊构建条件和分支回补追溯。
- 链接：[官方问题 #156293](https://github.com/python/cpython/issues/156293)
- 链接：[官方修补 PR #158504](https://github.com/python/cpython/pull/158504)
- 链接：[3.15 回补 PR #158514](https://github.com/python/cpython/pull/158514)

## 安全维护咨询

不确定证书信任变化如何影响你的系统？我们可以协助排查受影响的客户端，并制定安全更新计划。

[咨询安全更新](<https://keendigit.com/zh/contact?service=security-remediation#form>)

[原始页面](<https://keendigit.com/zh/insights/node-java-python-security-remediation-guide>) · [内容索引](<https://keendigit.com/zh/llms.txt>)

KeenDigit LLC · 怀俄明州登记编号: 2026-002106155

[前往怀俄明州州务卿官网核验](<https://wyobiz.wyo.gov/Business/filingSearch.aspx>)

© 2026 KeenDigit LLC · 美国怀俄明州 Sheridan · 保留所有权利。
