Apache Solr 是流行的、速度极快的开源搜索平台,可满足您的所有企业、电子商务和分析需求,基于Apache Lucene构建。
https://solr.apache.org
Apache Solr 中未经授权的参与者漏洞暴露敏感信息。
Solr Metrics API 发布每个 Apache Solr 实例可用的所有未受保护的环境变量。用户可以指定要隐藏哪些环境变量,但是,默认列表旨在适用于已知的秘密 Java 系统属性。环境变量不能像 Java 系统属性那样在 Solr 中严格定义,并且可以为整个主机设置,这与按 Java 进程设置的 Java 系统属性不同。
9.0.0 - 9.3.0
涉及漏洞的函数如下所示,这段代码是用于设置和注册 JVM(Java Virtual Machine)性能指标(metrics)的功能,主要目的系使用 metricManager 的 registerAll 方法注册了多个不同类型的度量指标,如缓冲池、类加载、垃圾收集器、内存使用等相关信息,实现监测 Solr 服务器的性能。
修复代码如下所示
代码逻辑中不难看出,开发者将 envVars 相关数据从 metrics API 删除;补丁的主要目的是移除了注册系统环境变量的代码块,具体来说:代码使用 MetricsMap 对象 sysenv 来获取系统环境变量,并将其添加到度量指标中。补丁将上述代码段删除,避免敏感信息泄露
复现内容如下:
请用户尽快更新至最新版本
https://solr.apache.org
https://www.cve.org/CVERecord?id=CVE-2023-50290
https://issues.apache.org/jira/browse/SOLR-16808
https://issues.apache.org/jira/browse/SOLR-15019