首页/新闻资讯/正文详情

OpenSearch 1.3.17 发布解读:Eclipse Temurin 11.0.23、BouncyCastle 1.78.1(三项 CVE 修复)与 Netty 4.1.110 升级明细

发布时间:2026/9/23 7:26:17 来源:云帆数科 栏目:资讯中心
OpenSearch 1.3.17 发布解读:Eclipse Temurin 11.0.23、BouncyCastle 1.78.1(三项 CVE 修复)与 Netty 4.1.110 升级明细
搜索引擎全文检索可观测性数据分析【免费下载链接】OpenSearch Open source distributed and RESTful search engine.项目地址https://gitcode.com/gh_mirrors/op/OpenSearch点击查看免费下载本篇指南基于 OpenSearch 官方发布说明 release-notes/opensearch.release-notes-1.3.17.md 撰写系统梳理 1.3.17 维护版本的三项核心升级运行时 JDK 安全更新、BouncyCastle FIPS 密码学库升级修复 3 个 CVE以及 Netty 网络库补丁升级。文中结合当前仓库源码JDK 打包、TLS 密钥解析、Netty 传输模块等实现帮助读者理解每次升级的落地位置、影响范围与验证方式可作为 1.3.x 长期维护分支升级评估与部署排障的参考手册。版本概览1.3.x 长期维护分支的例行安全更新1.3.17 于 2024-05-30 发布是 OpenSearch 1.3.x 系列面向广泛生产部署的长期支持分支的例行维护版本。与功能版本不同该版本不引入新特性全部变更集中在依赖与运行时环境的安全升级共包含三项升级对象升级前升级后核心目的OpenJDKEclipse Temurin11.0.22 系列11.0.2392024 年 4 月补丁集纳入季度 CPU 安全修复BouncyCastleFIPS 组件1.751.78.1修复 CVE-2024-30172、CVE-2024-30171、CVE-2024-29857Netty4.1.109.Final4.1.110.Final上游稳定性与缺陷修复从版本号跨度可见这是典型的小版本安全收割三项升级均不改变 API 与配置语义但对集群的运行时安全性TLS、传输层、加密密钥处理产生直接影响。下方三个小节分别展开并给出仓库中的源码与配置证据。升级一OpenJDK 更新至 Eclipse Temurin 11.0.239升级内容1.3.17 将随发行包捆绑的 JDK 更新为Eclipse Temurin 11.0.239。Eclipse Temurin 是 Adoptium 社区Eclipse 基金会主导的开源 JDK 发行版OpenSearch 1.3.x 系列基于 Java 11 运行因此该升级对应 2024 年 4 月的 OpenJDK 季度补丁更新Critical Patch Update涵盖该周期内公开披露的 JDK 安全漏洞修复。对应变更见发布说明PR #13406。源码证据JDK 的下载、打包与厂商定义当前仓库中与 JDK 捆绑机制直接相关的实现集中在两处版本目录gradle/libs.versions.toml 中定义了 JDK 供应商与版本bundled_jdk_vendor adoptium bundled_jdk 25.0.4.11其中bundled_jdk_vendor adoptium正是 TemurinAdoptium发行版的来源声明与 1.3.17 的 Temurin 11.0.239 属于同一供应渠道当前主线仓库已演进到更高版本号。distribution/build.gradle展示了 JDK 打包流水线对archives与packages子项目应用opensearch.jdk-download与opensearch.jre-download插件并按平台/架构矩阵下载对应 JDK/JREproject.jdks { [darwin, linux, windows].each { platform - (platform linux || platform darwin ? [x64, aarch64, s390x, ppc64le, riscv64] : [x64]).each { architecture - bundled_jdk_${platform}_${architecture} { it.platform platform it.version VersionProperties.getBundledJdk(platform, architecture) it.vendor VersionProperties.bundledJdkVendor it.architecture architecture } } } }下载后的 JDK 在打包时被放入发行包的jdk目录macOS 平台为jdk.app见 distribution/archives/build.gradle。打包产物还同时输出no-jdk 变体如no-jdk-linux-x64、no-jdk-windows-x64等供自带 JDK 的环境使用对应目录可在 distribution/archives 下查看。升级的实际影响自带 JDK 用户升级后发行包内的jdk目录即为 11.0.239无需额外操作。外部 JDK 用户若使用no-jdk发行包或自行指定JAVA_HOME请确保本机 JDK 至少为 11.0.23 或同等安全补丁级别否则无法获得本次安全修复。Docker 镜像Docker 相关构建同样复用该 JDK 定义见 distribution/docker 目录镜像升级即携带新 JDK。升级二BouncyCastle 依赖 1.75 → 1.78.1修复三项 CVE升级内容1.3.17 将 BouncyCastle 相关依赖从 1.75 升级到1.78.1官方发布说明明确标注该升级用于解决三个安全公告CVE-2024-29857CVE-2024-30171CVE-2024-30172这三个 CVE 均指向 BouncyCastle FIPS 密码学组件在 2024 年上半年披露的安全缺陷。在发布说明的语境下从 1.75 升级到 1.78.1 解决上述 CVE 即表明凡是部署在 1.3.17 之前版本、且启用了 BouncyCastle 相关功能的集群均处于这三个 CVE 的暴露面内。因此该升级对开启 TLS 传输加密、FIPS 合规模式或使用 PEM/JKS 密钥管理的生产集群尤为重要。源码证据BouncyCastle 在 OpenSearch 中的实际用途BouncyCastle 并非声明式依赖而是被核心代码直接调用最典型的实现在 libs/ssl-config/src/main/java/org/opensearch/common/ssl/PemUtils.java该类的静态初始化块PemUtils.java#L66-L74在启动时将BouncyCastleFipsProvider与BouncyCastleJsseProvider以最高优先级注册进 JCASecurity体系Security.insertProviderAt(new BouncyCastleFipsProvider(), highestPriority); Security.insertProviderAt(new BouncyCastleJsseProvider(), highestPriority);这意味着 SSL 相关操作ssl-config模块支撑了节点间传输加密与 REST TLS会优先走 BouncyCastle 的 FIPS 实现。私钥解析逻辑PemUtils.java#L120-L155依赖 BouncyCastle 的 PEM 解析与解密能力覆盖PKCS#8 加密私钥、OpenSSL 加密的 PEM 密钥对BEGIN ENCRYPTED PRIVATE KEY/BEGIN RSA PRIVATE KEY等、明文 PKCS#8/PKCS#1 密钥并使用JcePKCSPBEInputDecryptorProviderBuilder绑定BouncyCastleFipsProvider.PROVIDER_NAME完成 PBKDF 解密。注释还特别指出在FIPS approved-only 模式下部分 PBKDF 算法OpenSSL、PKCS#12 常用算法会被限制这正是 BouncyCastle 版本敏感性所在。另外构建配置 build.gradle 中带有 FIPS 模式开关-Dorg.bouncycastle.fips.approved_onlytrue该属性由发行配置 distribution/src/config/fips_java.security 配套使用表明仓库对 FIPS 合规场景有完整的支持链路——而这条链路的正确性直接依赖 BouncyCastle FIPS 库版本的健壮性。当前主线中的 BouncyCastle 版本演进作为参照当前主线仓库 gradle/libs.versions.toml 中 BouncyCastle 已迁移到 FIPS 2.x 系列bouncycastle_jce 2.1.3 bouncycastle_tls 2.1.24 bouncycastle_pkix 2.1.12 bouncycastle_pg 2.1.13 bouncycastle_util 2.1.7并在同文件的[bundles]段以bouncycastlebundle 形式聚合gradle/libs.versions.toml#L259-L265而 1.3.17 发布说明中的 1.78.1 属于 BC FIPS 1.x 维护线。1.3.x 分支用户应遵循该分支的升级节奏即 1.78.1不必照搬主线 2.x——版本线的选择由分支构建配置决定混用可能导致 FIPS 兼容性问题。升级三Netty 4.1.109.Final → 4.1.110.Final升级内容1.3.17 将网络库 Netty 从 4.1.109.Final 升级到 4.1.110.FinalPR #13802。Netty 是 OpenSearch 实现 HTTP/REST 与节点间传输通道的底层异步网络框架该升级属于 4.1 系列内的补丁级更新带来上游在该周期内积累的稳定性、协议处理与缺陷修复不涉及 API 变更。源码证据Netty 传输模块仓库中与 Netty 直接耦合的模块为 modules/transport-netty4其核心实现包括HTTP 服务端传输modules/transport-netty4/src/main/java/org/opensearch/http/netty4如Netty4Http3ServerTransport、Netty4HttpChannel等支撑 REST API 的 HTTP/1.1、HTTP/2 乃至 HTTP/3 处理传输层节点间通信实现与相应安全校验集成测试覆盖连接头校验、HTTP/2、HTTP/3、请求大小限制、pipelining 等场景例如 Netty4HttpRequestSizeLimitIT.java 与 Netty4PipeliningIT.java这些测试在升级 Netty 版本后即成为回归防线。当前主线仓库中 Netty 版本已推进到 gradle/libs.versions.toml#L44 的netty 4.2.18.Final4.2.x 新主线并以nettybundle 聚合十余个组件gradle/libs.versions.toml#L238-L2521.3.17 的 4.1.110.Final 则保持在 4.1 维护线内两者互不干扰。升级的实际影响传输层行为4.1.110 未改动 Netty 对外 API因此opensearch.yml中http.port、transport.port、http.compression等网络相关配置均无需调整若升级后观察到连接建立、TLS 握手或 HTTP 帧解析相关异常日志应优先对照 4.1.110 的修复清单排查。插件兼容性依赖 Netty 的插件如transport-reactor-netty4、transport-grpc等见 modules 与 plugins应验证其 Netty 4.1 兼容范围。如何验证 1.3.17 的升级已正确生效升级发行包后可从三个层面确认变更落地检查 JDK 版本执行发行包内jdk/bin/java -version或JAVA_HOME指向的 java应输出包含11.0.23的版本信息在 Linux 下也可用./bin/opensearch启动日志中的 JVM 行确认。检查 Netty / BouncyCastle 版本查看lib目录下的netty-*4.1.110.Final.jar与bc-*-fips-1.78.1.jar1.3.x 分支的 BC FIPS 命名或在启用TRACE日志级别后观察 SSL 提供者注册日志应显示BouncyCastleFipsProvider与BouncyCastleJsseProvider已注册。运行传输层回归测试对源码构建场景可针对 Netty 模块执行测试构建入口见 gradlew例如./gradlew :modules:transport-netty4:test验证 HTTP/2、请求大小限制等关键路径对应测试见 modules/transport-netty4/src/internalClusterTestSSL 密钥解析路径的单元测试见 libs/ssl-config/src/test/java/org/opensearch/common/ssl/PemUtilsTests.java。升级建议与注意事项FIPS 环境若集群启用 FIPS 模式配置参考 distribution/src/config/fips_java.security本次 BouncyCastle 升级属于必修项且升级后应复测 PEM 加密私钥的加载PemUtils路径避免 FIPS approved-only 限制引发的NoSuchAlgorithmException该行为在 PemUtils.java 注释中有明确说明。安全基线三项升级合计覆盖了 2024 年上半年公开披露的多个安全公告含 3 个 BouncyCastle CVE建议运行 1.3.17 之前版本的集群尽快规划升级1.3.x 分支后续的维护版本见 release-notes 目录下的 1.3.18 记录可保持滚动跟进。无需配置变更本版本不含配置语义调整升级后原opensearch.yml、证书与密钥文件均可原样复用。分支版本差异1.3.x 分支的依赖版本BC 1.78.1、Netty 4.1.110与主线BC FIPS 2.x、Netty 4.2.x见 gradle/libs.versions.toml不同源评估时务必以目标分支的发布说明为准。小结OpenSearch 1.3.17 是一次小而关键的安全维护版本Temurin 11.0.23 补齐了 JDK 季度安全补丁BouncyCastle 1.78.1 封堵了三个已披露的 FIPS 组件 CVENetty 4.1.110 收紧了网络层稳定性。对于 1.3.x 长期维护分支的生产集群本次升级成本低无配置与 API 变更、收益明确安全面收敛建议纳入例行升级窗口同时可借助仓库中 distribution/build.gradle、libs/ssl-config 与 modules/transport-netty4 的源码与测试深入理解每次依赖升级在运行时链路中的具体位置与影响边界。赞分享搜索引擎全文检索可观测性数据分析【免费下载链接】OpenSearch Open source distributed and RESTful search engine.项目地址https://gitcode.com/gh_mirrors/op/OpenSearch点击查看免费下载相关推荐OpenSearch 1.3.15 版本发布解析Netty 与 Kerby 依赖升级全解读OpenSearch 1.3.15 版本发布解析Netty 与 Kerby 依赖升级全解读 OpenSearch 1.3.15 是 1.3.x 长期维护分支上搜索引擎全文检索可观测性数据分析OpenSearch 1.3.12 版本发布解析Bouncy Castle、Netty 与 OpenJDK 依赖升级全解读OpenSearch 1.3.12 版本发布解析Bouncy Castle、Netty 与 OpenJDK 依赖升级全解读 导读 本文以 OpenSearch搜索引擎全文检索可观测性数据分析OpenSearch 1.3.8 发布说明深度解析Netty 升级、Tika 2.5.0 与依赖治理全览OpenSearch 1.3.8 发布说明深度解析Netty 升级、Tika 2.5.0 与依赖治理全览 本文以 release notes/opensear搜索引擎全文检索可观测性数据分析创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

Obsidian+Dify搭建个人RAG知识库:从零到能聊天的AI助手
Obsidian+Dify搭建个人RAG知识库:从零到能聊天的AI助手

先说结论:我并没有搭出一套能拿去发论文或者上生产环境的RAG系统,也没有上K8s、搞高可用。我用大概两个周末的时间,用 Obsidian 整理知识源,用 Dify 做知识库流水线,再把一个 Embedding 模型和一个对话模型接进去&… · 2026/9/23 7:26:17

Matlab图像处理实现高效裂纹检测算法
Matlab图像处理实现高效裂纹检测算法

1. 项目概述:图像裂纹检测的工程价值裂纹检测是工业质检、建筑安全评估和材料研究中的基础需求。传统人工目检存在效率低、主观性强的问题,特别是在混凝土结构、金属部件等大面积检测场景中。这个Matlab项目通过数字图像处理技术,实现了对静态… · 2026/9/23 7:26:17

用大白话剪视频:Claude Code + FFmpeg 实现自然语言视频剪辑
用大白话剪视频:Claude Code + FFmpeg 实现自然语言视频剪辑

做视频剪辑的朋友应该都有过这种体验:素材导进去十几个小时,只为了剪一个15秒的片头;改一个字幕错别字,要重新渲染整个时间线;片子里某段对白太啰嗦,选中、切割、删除、补转场,一套操作下来又得… · 2026/9/23 7:26:11

OpenSpec 接口规范实践:从契约定义到代码生成与契约测试
OpenSpec 接口规范实践:从契约定义到代码生成与契约测试

1. 从“规范”到“可执行”:OpenSpec 到底在解决什么问题第一次听到 OpenSpec 这个名字,很多人会下意识把它归类到“又一个 API 文档工具”或者“又一个接口管理平台”里。我一开始也是这么想的,直到真正把它拉进一个多人协作的项目里跑了一遍… · 2026/9/23 9:00:20

5个实战项目优化橄榄菜图片加载,告别卡顿
5个实战项目优化橄榄菜图片加载,告别卡顿

5个实战项目优化橄榄菜图片加载,告别卡顿 配置环境就卡半天?别急,这不是你的锅。 在多个 实战项目 中,我见过太多团队因为一张“橄榄菜图片”导致页面首屏加载时间飙升至 4 秒以上。用户等不了,直接关页。这不仅是体验问题,更是性能事故。… · 2026/9/23 9:00:20

C++调用NI-DMM驱动数字万用表:dmm.cpp解析与实战指南
C++调用NI-DMM驱动数字万用表:dmm.cpp解析与实战指南

简介:这是一份用于NI(National Instruments)数字万用表(DMM)的C驱动源码,面向需要以编程方式自动控制万用表完成电压、电流、电阻等参数测量的硬件开发者或测试工程师。压缩包内仅含1个cpp源文件&#xff0… · 2026/9/23 9:00:20

OpenSpec:让 OpenAPI 规范真正可执行的契约驱动开发引擎
OpenSpec:让 OpenAPI 规范真正可执行的契约驱动开发引擎

1. OpenSpec 是什么:一个被严重低估的 Spec-driven 开发基础设施OpenSpec 不是一个玩具级 CLI 工具,也不是某个大厂内部孵化后半途而废的开源项目。它是一套面向现代前端与全栈协作场景的、可嵌入式集成的规范驱动开发(Spec-driven Developme… · 2026/9/23 9:00:20

实木家具防开裂防潮技巧,日照气候专属居家养护攻略
实木家具防开裂防潮技巧,日照气候专属居家养护攻略

一、日照气候对实木家具的致命影响实木家具天然环保、纹理自然、质感温润、耐看耐用,是新中式、原木风、极简风家装的主流选择,深受日照业主喜爱。但日照属于临海城市,空气湿度季节性变化极大,春夏潮湿回潮、秋冬干燥多风&#xf… · 2026/9/23 9:00:20

Open-Code-Review:基于Git Diff与CLI的新型代码评审范式
Open-Code-Review:基于Git Diff与CLI的新型代码评审范式

1. “open-code-review”不是工具名,而是一类新型代码评审范式的代号最近在多个技术社区和内部工程团队的分享中,“open-code-review”这个词高频出现,但它既不是某个开源项目的名字,也不是某家公司的私有产品代号。我第一次听到它… · 2026/9/23 9:00:14

3招搞定手机怎么下载微信面试难题实战项目解析
3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧
Win7无线热点配置工具源码解析:解决API失效的3个实战技巧

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧 Win7无线热点配置工具在Win10/11上跑不动?不是你的问题,是版本升级后 API 全变了。很多老项目里的 netsh wlan… · 2026/9/23 0:00:36

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码