Solr Security News

How to report a security issue

Published CVEs Detected by Scanners

Every CVE that is detected by a software scanner is by definition already public knowledge. That means the Solr PMC and the rest of the world probably already know about it.

To find a path forward in addressing a detected CVE we suggest the following process for fastest results:

  1. Check further down this page to see if the CVE is listed as exploitable in Solr.
  2. Check the officially published non-exploitable vulnerabilities list to see if the CVE is listed as not exploitable in Solr.
  3. Search through the Solr users mailing list archive to see if anyone else has brought up this dependency CVE.
  4. If no one has, then please do subscribe to the users mailing list and then send an email asking about the CVE.

Dos and Don'ts

  • Please DO discuss the possible need for library upgrades on the user list.
  • Please DO search Jira for the CVE number to see if we are addressing it already.
  • Please DO create Jira issues and associated pull requests to propose and discuss upgrades of a single specific dependency.
  • Please DO NOT attach a scan report, or paste output of a scan into Jira (just link the CVE instead)
  • Please DO NOT email the security email below with a scan report it will be ignored.
  • Please DO look into automating some of this with VEX and share your experience.

Use of Jira

Jira is for discussing specific development modifications. Any Jira that contains only scan report output, or references multiple dependencies at the same time is likely to be ignored/closed. The large number of folks sending us reports of things that are already known is a serious drag on our (volunteer) time so please search Jira before opening a new issue.

New Exploits You Discover in Solr

The Solr PMC greatly appreciates reports of new security vulnerabilities found in Solr itself or demonstrations of exploiting vulnerabilities via dependencies. It is important not to publish a previously unknown exploit, or exploit demonstration code on public mailing lists. Please disclose new exploits responsibly by following these ASF guidelines for reporting. The contact email for reporting newly discovered exploits in Solr is security@solr.apache.org.

Before reporting a new exploit ensure that you have tested it against an instance of Solr that is running a supported version and has been properly configured with:

  1. Authentication - Exploits demonstrated without login waste our time because Solr is not meant to run such that the entire world has access to all of its APIs. Running without forcing users to log in is no more valid than running linux with a widely known default root password, or a database with a root account that has no password.
  2. Authorization - It is not an exploit unless the authenticated user was configured with a role that should have prohibited the action, or the action should never be allowed for any user regardless of role. Your report should say why you think this action is not acceptable for the role(s) you tested it with.

VEX

Since the process of checking whether CVEs in dependencies of Solr affect your Solr deployment is tedious and error-prone, we are experimenting with sharing information about advisories that are known (not) to affect Solr in a machine-readable way.

File formats to share this information are called 'VEX' formats. A number of such formats are under active development, such as based on CycloneDX and CSAF.

We are currently providing vulnerability information in a CycloneDX JSON-based format here. We are very curious to hear about your experience, and to find out what is still missing to reduce the signal/noise ratio and make these tools more effective. We invite you to join the discussion at the security-discuss mailinglist or, if you prefer to collaborate in private, contact [email protected]. It will likely be interesting to know what security scanning/reporting tool you are using, exactly on which artifacts, and if/how its vendor appears to support VEX. We'd be happy to work with you to see if we can provide this information in other variations or formats.

More information

You will find more security related information on our Wiki: https://cwiki.apache.org/confluence/display/SOLR/SolrSecurity

Recent CVE reports for Apache Solr

Below is a list of already announced CVE vulnerabilities. These are also available as an ATOM feed:

CVE# Date Announcement
CVE-2024-45216 2024-10-14 Apache Solr: Authentication bypass possible using a fake URL Path ending
CVE-2024-45217 2024-10-14 Apache Solr: ConfigSets created during a backup restore command are trusted implicitly
CVE-2024-31391 2024-04-12 Solr-Operator liveness and readiness probes may leak basic auth credentials
CVE-2023-50291 2024-02-08 Apache Solr can leak certain passwords due to System Property redaction logic inconsistencies
CVE-2023-50292 2024-02-08 Apache Solr Schema Designer blindly "trusts" all configsets, possibly leading to RCE by unauthenticated users
CVE-2023-50298 2024-02-08 Apache Solr can expose ZooKeeper credentials via Streaming Expressions
CVE-2023-50386 2024-02-08 Apache Solr: Backup/Restore APIs allow for deployment of executables in malicious ConfigSets
CVE-2023-50290 2024-01-12 Apache Solr allows read access to host environment variables
CVE-2022-39135 2022-11-20 Apache Solr is vulnerable to CVE-2022-39135 via /sql handler
CVE-2021-44548 2021-12-18 Apache Solr information disclosure vulnerability through DataImportHandler
CVE-2021-44228 2021-12-10 Apache Solr affected by Apache Log4J CVE-2021-44228
CVE-2021-27905 2021-04-12 SSRF vulnerability with the Replication handler
CVE-2021-29262 2021-04-12 Misapplied Zookeeper ACLs can result in leakage of configured authentication and authorization settings
CVE-2021-29943 2021-04-12 Apache Solr Unprivileged users may be able to perform unauthorized read/write to collections
CVE-2020-13957 2020-10-12 The checks added to unauthenticated configset uploads in Apache Solr can be circumvented

2024-10-14, CVE-2024-45216: Apache Solr: Authentication bypass possible using a fake URL Path ending

Severity:
Critical

Versions Affected:

  • Apache Solr 5.3.0 before 8.11.4
  • Apache Solr 9.0.0 before 9.7.0

Description:
Improper Authentication vulnerability in Apache Solr.

Solr instances using the PKIAuthenticationPlugin, which is enabled by default when Solr Authentication is used, are vulnerable to Authentication bypass. A fake ending at the end of any Solr API URL path, will allow requests to skip Authentication while maintaining the API contract with the original URL Path. This fake ending looks like an unprotected API path, however it is stripped off internally after authentication but before API routing.

Mitigation:
Users are recommended to upgrade to version 9.7.0, or 8.11.4, which fix the issue.

Credit: Liu Huajin (reporter)

References:
JIRA - SOLR-17417
CVE - CVE-2024-45216


2024-10-14, CVE-2024-45217: Apache Solr: ConfigSets created during a backup restore command are trusted implicitly

Severity:
Moderate

Versions Affected:

  • Apache Solr 6.6.0 before 8.11.4
  • Apache Solr 9.0.0 before 9.7.0

Description:

Insecure Default Initialization of Resource vulnerability in Apache Solr.

New ConfigSets that are created via a Restore command, which copy a configSet from the backup and give it a new name, are created without setting the "trusted" metadata. ConfigSets that do not contain the flag are trusted implicitly if the metadata is missing, therefore this leads to "trusted" ConfigSets that may not have been created with an Authenticated request. "trusted" ConfigSets are able to load custom code into classloaders, therefore the flag is supposed to only be set when the request that uploads the ConfigSet is Authenticated & Authorized.

Mitigation:
This issue affects Apache Solr: from 6.6.0 before 8.11.4, from 9.0.0 before 9.7.0. This issue does not affect Solr instances that are secured via Authentication/Authorization.

Users are primarily recommended to use Authentication and Authorization when running Solr. However, upgrading to version 9.7.0, or 8.11.4 will mitigate this issue otherwise.

Credit: Liu Huajin (reporter)

References:
JIRA - SOLR-17418
CVE - CVE-2024-45217


2024-04-12, CVE-2024-31391: Solr-Operator liveness and readiness probes may leak basic auth credentials

Severity:
Moderate

Versions Affected:
Solr Operator 0.3.0 to 0.8.0

Description: Insertion of Sensitive Information into Log File vulnerability in the Apache Solr Operator.

The Solr sked to bootstrap Solr security, the operator will enable basic authentication and create several accounts for accessing Solr: including the "solr" and "admin" accounts for use by end-users, and a "k8s-oper" account which the operator uses for its own requests to Solr. One common source of these operator requests is healthchecks: liveness, readiness, and startup probes are all used to determine Solr's health and ability to receive traffic. By default, the operator configures the Solr APIs used for these probes to be exempt from authentication, but users may specifically request that authentication be required on probe endpoints as well. Whenever one of these probes would fail, if authentication was in use, the Solr Operator would create a Kubernetes "event" containing the username and password of the "k8s-oper" account.

Within the affected version range, this vulnerability affects any solrcloud resource which (1) bootstrapped security through use of the .solrOptions.security.authenticationType=basic option, and (2) required authentication be used on probes by setting .solrOptions.security.probesRequireAuth=true.

Mitigation: Users are recommended to upgrade to Solr Operator version 0.8.1, which fixes this issue by ensuring that probes no longer print the credentials used for Solr requests. Users may also mitigate the vulnerability by disabling authentication on their healthcheck probes using the setting .solrOptions.security.probesRequireAuth=false.

References:
JIRA - SOLR-17216
CVE - CVE-2024-31391


2024-02-08, CVE-2023-50291: Apache Solr can leak certain passwords due to System Property redaction logic inconsistencies

Severity:
Moderate

Versions Affected:

  • Apache Solr 6.0.0 through 8.11.2
  • Apache Solr 9.0.0 before 9.3.0

Description:
Insufficiently Protected Credentials vulnerability in Apache Solr.

This issue affects Apache Solr: from 6.0.0 through 8.11.2, from 9.0.0 before 9.3.0. One of the two endpoints that publishes the Solr process' Java system properties, /admin/info/properties, was only setup to hide system properties that had "password" contained in the name. There are a number of sensitive system properties, such as "basicauth" and "aws.secretKey" do not contain "password", thus their values were published via the "/admin/info/properties" endpoint. This endpoint populates the list of System Properties on the home screen of the Solr Admin page, making the exposed credentials visible in the UI.

This /admin/info/properties endpoint is protected under the "config-read" permission. Therefore, Solr Clouds with Authorization enabled will only be vulnerable through logged-in users that have the "config-read" permission. Users are recommended to upgrade to version 9.3.0 or 8.11.3, which fixes the issue. A single option now controls hiding Java system property for all endpoints, "-Dsolr.hiddenSysProps". By default all known sensitive properties are hidden (including "-Dbasicauth"), as well as any property with a name containing "secret" or "password".

Users who cannot upgrade can also use the following Java system property to fix the issue:
-Dsolr.redaction.system.pattern=".*(password|secret|basicauth).*"

Mitigation:
Users are recommended to upgrade to version 8.11.3, 9.3.0 or later, which has consistent systemProperty redaction logic.

Credit: Michael Taggart (reporter)

References:
JIRA - SOLR-16809
CVE - CVE-2023-50291


2024-02-08, CVE-2023-50292: Apache Solr Schema Designer blindly "trusts" all configsets, possibly leading to RCE by unauthenticated users

Severity:
Moderate

Versions Affected:

  • Apache Solr 6.0.0 through 8.11.2
  • Apache Solr 9.0.0 before 9.3.0

Description:
Incorrect Permission Assignment for Critical Resource, Improper Control of Dynamically-Managed Code Resources vulnerability in Apache Solr.

This issue affects Apache Solr: from 8.10.0 through 8.11.2, from 9.0.0 before 9.3.0.

The Schema Designer was introduced to allow users to more easily configure and test new Schemas and configSets. However, when the feature was created, the "trust" (authentication) of these configSets was not considered. External library loading is only available to configSets that are "trusted" (created by authenticated users), thus non-authenticated users are unable to perform Remote Code Execution. Since the Schema Designer loaded configSets without taking their "trust" into account, configSets that were created by unauthenticated users were allowed to load external libraries when used in the Schema Designer.

Mitigation:
Users are recommended to upgrade to version 8.11.3, 9.3.0 or later.

Credit: Skay (reporter)

References:
JIRA - SOLR-16777
CVE - CVE-2023-50292


2024-02-08, CVE-2023-50298: Apache Solr can expose ZooKeeper credentials via Streaming Expressions

Severity:
Low

Versions Affected:

  • Apache Solr 6.0.0 through 8.11.2
  • Apache Solr 9.0.0 before 9.4.1

Description:
Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Apache Solr.This issue affects Apache Solr: from 6.0.0 through 8.11.2, from 9.0.0 before 9.4.1.

Solr Streaming Expressions allows users to extract data from other Solr Clouds, using a "zkHost" parameter. When original SolrCloud is setup to use ZooKeeper credentials and ACLs, they will be sent to whatever "zkHost" the user provides. An attacker could setup a server to mock ZooKeeper, that accepts ZooKeeper requests with credentials and ACLs and extracts the sensitive information, then send a streaming expression using the mock server's address in "zkHost". Streaming Expressions are exposed via the "/streaming" handler, with "read" permissions.

Mitigation:
Users are recommended to upgrade to version 8.11.3 or 9.4.1, which fix the issue. From these versions on, only zkHost values that have the same server address (regardless of chroot), will use the given ZooKeeper credentials and ACLs when connecting.

Credit: Qing Xu (reporter)

References:
JIRA - SOLR-17098
CVE - CVE-2023-50298


2024-02-08, CVE-2023-50386: Apache Solr: Backup/Restore APIs allow for deployment of executables in malicious ConfigSets

Severity:
Moderate

Versions Affected:

  • Apache Solr 6.0.0 through 8.11.2
  • Apache Solr 9.0.0 before 9.4.1

Description:
Improper Control of Dynamically-Managed Code Resources, Unrestricted Upload of File with Dangerous Type, Inclusion of Functionality from Untrusted Control Sphere vulnerability in Apache Solr.This issue affects Apache Solr: from 6.0.0 through 8.11.2, from 9.0.0 before 9.4.1.

In the affected versions, Solr ConfigSets accepted Java jar and class files to be uploaded through the ConfigSets API. When backing up Solr Collections, these configSet files would be saved to disk when using the LocalFileSystemRepository (the default for backups). If the backup was saved to a directory that Solr uses in its ClassPath/ClassLoaders, then the jar and class files would be available to use with any ConfigSet, trusted or untrusted.

When Solr is run in a secure way (Authorization enabled), as is strongly suggested, this vulnerability is limited to extending the Backup permissions with the ability to add libraries.

Mitigation:
Users are recommended to upgrade to version 8.11.3 or 9.4.1, which fix the issue. In these versions, the following protections have been added:

  • Users are no longer able to upload files to a configSet that could be executed via a Java ClassLoader.
  • The Backup API restricts saving backups to directories that are used in the ClassLoader.

Credit: L3yx (reporter)

References:
JIRA - SOLR-16949
CVE - CVE-2023-50386


2024-01-12, CVE-2023-50290: Apache Solr allows read access to host environment variables

Severity:
Important

Versions Affected:
Solr 9.0 to 9.2.1

Description:
Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Apache Solr. The Solr Metrics API publishes all unprotected environment variables available to each Apache Solr instance. Users are able to specify which environment variables to hide, however, the default list is designed to work for known secret Java system properties. Environment variables cannot be strictly defined in Solr, like Java system properties can be, and may be set for the entire host, unlike Java system properties which are set per-Java-process.

The Solr Metrics API is protected by the "metrics-read" permission. Therefore, Solr Clouds with Authorization setup will only be vulnerable via users with the "metrics-read" permission.

Mitigation:
Users are recommended to upgrade to version 9.3.0 or later, in which environment variables are not published via the Metrics API.

References:
JIRA - SOLR-15233
CVE - CVE-2023-50290


2022-11-20, Apache Solr is vulnerable to CVE-2022-39135 via /sql handler

Versions Affected:
Solr 6.5 to 8.11.2 Solr 9.0

Description:
Apache Calcite has a vulnerability, CVE-2022-39135, that is exploitable in Apache Solr in SolrCloud mode. If an untrusted user can supply SQL queries to Solr’s “/sql” handler (even indirectly via proxies / other apps), then the user could perform an XML External Entity (XXE) attack. This might have been exposed by some deployers of Solr in order for internal analysts to use JDBC based tooling, but would have unlikely been granted to wider audiences.

Impact:
An XXE attack may lead to the disclosure of confidential data, denial of service, server side request forgery (SSRF), port scanning from the Solr node, and other system impacts.

Mitigation:
Most Solr installations don’t make use of the SQL functionality. For such users, the standard Solr security advice of using a firewall should be adequate. Nonetheless, the functionality can be disabled. As of Solr 9, it has been modularized and thus became opt-in, so nothing is needed for Solr 9 users that don’t use it. Users not using SolrCloud can’t use the functionality at all. For other users that wish to disable it, you must register a request handler that masks the underlying functionality in solrconfig.xml like so:

  <requestHandler name="/sql" class="solr.NotFoundRequestHandler"/>

Users needing this SQL functionality are forced to upgrade to Solr 9.1. If Solr 8.11.3 is released, then it will be an option as well. Simply replacing Calcite and other JAR files may mostly work but could fail depending on the particulars of the query. Users interested in this or in patching their own versions of Solr should examine SOLR-16421 for a source patch.

Credit:
Andreas Hubold at CoreMedia GmbH

References:
JIRA - SOLR-16421
CVE - CVE-2022-39135


2021-12-18, CVE-2021-44548: Apache Solr information disclosure vulnerability through DataImportHandler

Severity:
Moderate

Versions Affected:
All versions prior to 8.11.1. Affected platforms: Windows.

Description:
An Improper Input Validation vulnerability in DataImportHandler of Apache Solr allows an attacker to provide a Windows UNC path resulting in an SMB network call being made from the Solr host to another host on the network. If the attacker has wider access to the network, this may lead to SMB attacks, which may result in:

  • The exfiltration of sensitive data such as OS user hashes (NTLM/LM hashes),
  • In case of misconfigured systems, SMB Relay Attacks which can lead to user impersonation on SMB Shares or, in a worse-case scenario, Remote Code Execution

This issue affects all Apache Solr versions prior to 8.11.1. This issue only affects Windows.

Mitigation:
Upgrade to Solr 8.11.1, and/or ensure only trusted clients can make requests to Solr's DataImport handler.

Credit:
Apache Solr would like to thank LaiHan of Nsfocus security team for reporting the issue

References:
Jira issue SOLR-15826


2021-12-10, Apache Solr affected by Apache Log4J CVE-2021-44228

Severity: Critical

Versions Affected: 7.4.0 to 7.7.3, 8.0.0 to 8.11.0

Description: Apache Solr releases prior to 8.11.1 were using a bundled version of the Apache Log4J library vulnerable to RCE. For full impact and additional detail consult the Log4J security page.

Apache Solr releases prior to 7.4 (i.e. Solr 5, Solr 6, and Solr 7 through 7.3) use Log4J 1.2.17 which may be vulnerable for installations using non-default logging configurations that include the JMS Appender, see https://github.com/apache/logging-log4j2/pull/608#issuecomment-990494126 for discussion.

Solr's Prometheus Exporter uses Log4J as well but it does not log user input or data, so we don't see a risk there.

Solr is not vulnerable to the followup CVE-2021-45046 and CVE-2021-45105. A listing of these and other CVEs with some justifications are listed in Solr's wiki: https://cwiki.apache.org/confluence/display/SOLR/SolrSecurity#SolrSecurity-SolrandVulnerabilityScanningTools

Mitigation: Any of the following are enough to prevent this vulnerability for Solr servers:

  • Upgrade to Solr 8.11.1 or greater (when available), which will include an updated version (>= 2.16.0) of the Log4J dependency.
  • If you are using Solr's official docker image, it has already been mitigated in all versions listed as supported on Docker Hub: https://hub.docker.com/_/solr. You may need to re-pull the image.
  • Manually update the version of Log4J on your runtime classpath and restart your Solr application.
  • (Linux/MacOS) Edit your solr.in.sh file to include: SOLR_OPTS="$SOLR_OPTS -Dlog4j2.formatMsgNoLookups=true"
  • (Windows) Edit your solr.in.cmd file to include: set SOLR_OPTS=%SOLR_OPTS% -Dlog4j2.formatMsgNoLookups=true
  • Follow any of the other mitgations listed at https://logging.apache.org/log4j/2.x/security.html

The Log4J security page refers to setting log4j2.formatMsgNoLookups=true as a "discredited" mitigation. In reality, it depends. We've looked at the root cause and audited the code paths that lead to the vulnerability, and we feel confident in this mitigation being sufficient for Solr. See https://lists.apache.org/thread/kgh63sncrsm2bls884pg87mnt8vqztmz for discussion.

References: https://logging.apache.org/log4j/2.x/security.html


2021-04-12, CVE-2021-27905: SSRF vulnerability with the Replication handler

Severity: High

Versions Affected: 7.0.0 to 7.7.3 8.0.0 to 8.8.1

Description: The ReplicationHandler (normally registered at "/replication" under a Solr core) has a "masterUrl" (also "leaderUrl" alias) parameter that is used to designate another ReplicationHandler on another Solr core to replicate index data into the local core. To prevent a SSRF vulnerability, Solr ought to check these parameters against a similar configuration it uses for the "shards" parameter. Prior to this bug getting fixed, it did not.

Mitigation: Any of the following are enough to prevent this vulnerability:

  • Upgrade to Solr 8.8.2 or greater.
  • If upgrading is not an option, consider applying the patch in SOLR-15217
  • Ensure that any access to the replication handler is purely internal to Solr. Typically, it's only accessed externally for diagnostic/informational purposes.

Credit: Reported by Caolinhong(Skay) from QI-ANXIN Cert (QI-ANXIN Technology Group Inc.)

References: SOLR-15217: CVE-2021-27905: SSRF vulnerability with the Replication handler


2021-04-12, CVE-2021-29262: Misapplied Zookeeper ACLs can result in leakage of configured authentication and authorization settings

Severity: High

Versions Affected: 7.0.0 to 7.7.3 8.0.0 to 8.8.1

Description: When starting Apache Solr versions prior to 8.8.2, configured with the SaslZkACLProvider or VMParamsAllAndReadonlyDigestZkACLProvider and no existing security.json znode, if the optional read-only user is configured then Solr would not treat that node as a sensitive path and would allow it to be readable. Additionally, with any ZkACLProvider, if the security.json is already present, Solr will not automatically update the ACLs.

Mitigation: Any of the following are enough to prevent this vulnerability:

  • Manually set appropriate ACLs on /security.json znode.
  • Upgrade to Solr 8.8.2 or greater.
  • If upgrading is not an option, consider applying the patch in SOLR-15249
  • Ensure that any access to zookeeper is only by trusted application.

Credit: Timothy Potter and Mike Drob, Apple Cloud Services

References: SOLR-15249: CVE-2021-29262: Misapplied Zookeeper ACLs can result in leakage of configured authentication and authorization settings


2021-04-12, CVE-2021-29943: Apache Solr Unprivileged users may be able to perform unauthorized read/write to collections

Severity: High

Versions Affected: 7.0.0 to 7.7.3 8.0.0 to 8.8.1

Description: When using ConfigurableInternodeAuthHadoopPlugin for authentication, Apache Solr versions prior to 8.8.2 would forward/proxy distributed requests using server credentials instead of original client credentials. This would result in incorrect authorization resolution on the receiving hosts.

Mitigation: Any of the following are enough to prevent this vulnerability:

  • Upgrade to Solr 8.8.2 or greater.
  • If upgrading is not an option, consider applying the patch in SOLR-15233
  • Use a different authentication plugin, such as the KerberosPlugin or HadoopAuthPlugin

Credit: Geza Nagy

References: SOLR-15233: CVE-2021-29943: Apache Solr Unprivileged users may be able to perform unauthorized read/write to collections


2020-10-12, CVE-2020-13957: The checks added to unauthenticated configset uploads in Apache Solr can be circumvented

Severity: High

Versions Affected: 6.6.0 to 6.6.6 7.0.0 to 7.7.3 8.0.0 to 8.6.2

Description: Solr prevents some features considered dangerous (which could be used for remote code execution) to be configured in a ConfigSet that's uploaded via API without authentication/authorization. The checks in place to prevent such features can be circumvented by using a combination of UPLOAD/CREATE actions.

Mitigation: Any of the following are enough to prevent this vulnerability:

  • Disable UPLOAD command in ConfigSets API if not used by setting the system property: configset.upload.enabled to false (see docs)
  • Use Authentication/Authorization and make sure unknown requests aren't allowed (see docs)
  • Upgrade to Solr 8.6.3 or greater.
  • If upgrading is not an option, consider applying the patch in SOLR-14663
  • No Solr API, including the Admin UI, is designed to be exposed to non-trusted parties. Tune your firewall so that only trusted computers and people are allowed access

Credit: Tomás Fernández Löbbe, András Salamon

References: SOLR-14925: CVE-2020-13957: The checks added to unauthenticated configset uploads can be circumvented


CVE reports for Apache Solr dependencies

Below is a list of CVE vulnerabilities in Apache Solr dependencies, and the state of their applicability to Solr.

We are currently experimenting with providing this information in a machine-readable VEX format and encourage you to participate.

id versions jars state detail
CVE-2022-33980 < 9.1 commons-configuration2-2.7.jar not affected Solr uses commons-configuration2 for "hadoop-auth" only (for Kerberos). It is only used for loading Hadoop configuration files that would only ever be provided by trusted administrators, not externally (untrusted).
CVE-2022-42889 < 9.1 commons-text-1.9.jar not affected Solr uses commons-text directly (StringEscapeUtils.escapeEcmaScript) in LoadAdminUiServlet that is not vulnerable. Solr also has a "hadoop-auth" module that uses Apache Hadoop which uses commons-text through commons-configuration2. For Solr, the concern is limited to loading Hadoop configuration files that would only ever be provided by trusted administrators, not externally (untrusted).
CVE-2022-25168 < 9.1 hadoop-common-3.2.2.jar not affected The vulnerable code won't be used by Solr because Solr only is only using HDFS as a client.
CVE-2021-44832 7.4-8.11.1 log4j-core-2.14.1.jar, log4j-core-2.16.0.jar not affected Solr's default log configuration doesn't use JDBCAppender and we don't imagine a user would want to use it or other obscure appenders.
CVE-2021-45105, CVE-2021-45046 7.4-8.11.1 log4j-core-2.14.1.jar, log4j-core-2.16.0.jar not affected The MDC data used by Solr are for the collection, shard, replica, core and node names, and a potential trace id, which are all sanitized. Furthermore, Solr's default log configuration doesn't use double-dollar-sign and we don't imagine a user would want to do that.
CVE-2020-13955 8.1.0- today avatica-core-1.13.0.jar, calcite-core-1.18.0.jar not affected Solr's SQL adapter does not use the vulnerable class "HttpUtils". Calcite only used it to talk to Druid or Splunk.
CVE-2018-10237 5.4.0-today carrot2-guava-18.0.jar not affected Only used with the Carrot2 clustering engine.
CVE-2014-0114 4.9.0-7.5.0 commons-beanutils-1.8.3.jar not affected This is only used at compile time and it cannot be used to attack Solr. Since it is generally unnecessary, the dependency has been removed as of 7.5.0. See SOLR-12617.
CVE-2019-10086 8.0.0-8.3.0 commons-beanutils-1.9.3.jar not affected While commons-beanutils was removed in 7.5, it was added back in 8.0 in error and removed again in 8.3. The vulnerable class was not used in any Solr code path. This jar remains a dependency of both Velocity and hadoop-common, but Solr does not use it in our implementations.
CVE-2012-2098, CVE-2018-1324, CVE-2018-11771 4.6.0-today commons-compress (only as part of Ant 1.8.2) not affected Only used in test framework and at build time.
CVE-2018-1000632 4.6.0-today dom4j-1.6.1.jar not affected Only used in Solr tests.
CVE-2018-10237 4.6.0-today guava-*.jar not affected Only used in tests.
CVE-2017-15718 6.6.1-7.6.0 hadoop-auth-2.7.4.jar, hadoop-hdfs-2.7.4.jar (all Hadoop) not affected Does not impact Solr because Solr uses Hadoop as a client library.
CVE-2017-14952 6.0.0-7.5.0 icu4j-56.1.jar, icu4j-59.1.jar not affected Issue applies only to the C release of ICU and not ICU4J, which is what Lucene uses. ICU4J is at v63.2 as of Lucene/Solr 7.6.0
CVE-2017-15095, CVE-2017-17485, CVE-2017-7525, CVE-2018-5968, CVE-2018-7489, CVE-2019-12086, CVE-2019-12384, CVE-2018-12814, CVE-2019-14379, CVE-2019-14439, CVE-2020-35490, CVE-2020-35491, CVE-2021-20190, CVE-2019-14540, CVE-2019-16335 4.7.0-today jackson-databind-*.jar not affected These CVEs, and most of the known jackson-databind CVEs since 2017, are all related to problematic 'gadgets' that could be exploited during deserialization of untrusted data. The Jackson developers described 4 conditions that must be met in order for a problematic gadget to be exploited. See https://medium.com/@cowtowncoder/on-jackson-cves-dont-panic-here-is-what-you-need-to-know-54cd0d6e8062. Solr's use of jackson-databind does not meet 1 of the 4 conditions described which makes these CVEs unexploitable. The specific condition that Solr does not meet is the 3rd one: 'Enable polymorphic type handling' Solr does not include any polymorphic type handling, and Solr does not configure jackson-databind de/serialization to expect or include class names in serialized JSON. Two CVEs, 2019-14540 & 2019-16335, are related to HikariConfig and HikariDataSource classes, neither of which are used in Solr's code base.
CVE-2019-10241, CVE-2019-10247 7.7.0-8.2 jetty-9.4.14 not affected Solr upgraded to Jetty 9.4.19 for the 8.2 release. Additionally, the path to exploit these vulnerabilities was fixed in 8.1 and 7.7.2. Earlier versions can manually patch their configurations as described in SOLR-13409.
CVE-2020-27218 7.3.0-8.8.0 jetty-9.4.0 to 9.4.34 not affected Only exploitable through use of Jetty's GzipHandler, which is only implemented in Embedded Solr Server.
CVE-2020-27223 7.3.0-present jetty-9.4.6 to 9.4.36 not affected Only exploitable if Solr's webapp directory is deployed as a symlink, which is not Solr's default.
CVE-2021-33813 to present jdom-*.jar not affected JDOM is only used in Solr Cell, which should not be used in production which makes the vulnerability unexploitable. It is a dependency of Apache Tika, which has analyzed the issue and determined the vulnerability is limited to two libraries not commonly used in search applications, see TIKA-3488 for details. Since Tika should be used outside of Solr, use a version of Tika which updates the affected libraries if concerned about exposure to this issue.
CVE-2018-1000056 4.6.0-7.6.0 junit-4.10.jar not affected JUnit only used in tests; CVE only refers to a Jenkins plugin not used by Solr.
CVE-2014-7940, CVE-2016-6293, CVE-2016-7415, CVE-2017-14952, CVE-2017-17484, CVE-2017-7867, CVE-2017-7868 7.3.1 lucene-analyzers-icu-7.3.1.jar not affected All of these issues apply to the C release of ICU and not ICU4J, which is what Lucene uses.
CVE-2019-16869 8.2-8.3 netty-all-4.1.29.Final.jar not affected This is not included in Solr but is a dependency of ZooKeeper 3.5.5. The version was upgraded in ZooKeeper 3.5.6, included with Solr 8.3. The specific classes mentioned in the CVE are not used in Solr (nor in ZooKeeper as far as the Solr community can determine).
CVE-2017-14868, CVE-2017-14949 5.2.0-today org.restlet-2.3.0.jar not affected Solr should not be exposed outside a firewall where bad actors can send HTTP requests. These two CVEs specifically involve classes (SimpleXMLProvider and XmlRepresentation, respectively) that Solr does not use in any code path.
CVE-2015-5237 6.5.0-today protobuf-java-3.1.0.jar not affected Dependency for Hadoop and Calcite. ??
CVE-2018-1471 5.4.0-7.7.2, 8.0-8.3 simple-xml-2.7.1.jar not affected Dependency of Carrot2 and used during compilation, not at runtime (see SOLR-769. This .jar was replaced in Solr 8.3 and backported to 7.7.3 (see SOLR-13779).
CVE-2018-8088 4.x-today slf4j-api-1.7.24.jar, jcl-over-slf4j-1.7.24.jar, jul-to-slf4j-1.7.24.jar not affected The reported CVE impacts org.slf4j.ext.EventData, which is not used in Solr.
CVE-2018-1335 7.3.1-7.5.0 tika-core.1.17.jar not affected Solr does not run tika-server, so this is not a problem.
CVE- 7.3.1-today tika-core.*.jar not affected All Tika issues that could be Solr vulnerabilities would only be exploitable if untrusted files are indexed with SolrCell. This is not recommended in production systems, so Solr does not consider these valid CVEs for Solr.
CVE- 6.6.2-today velocity-tools-2.0.jar not affected Solr does not ship a Struts jar. This is a transitive POM listing and not included with Solr (see comment in SOLR-2849).
CVE-2016-6809, CVE-2018-1335, CVE-2018-1338, CVE-2018-1339 5.5.5, 6.2.0-today vorbis-java-tika-0.8.jar not affected See https://github.com/Gagravarr/VorbisJava/issues/30; reported CVEs are not related to OggVorbis at all.
CVE-2012-0881 ~2.9-today xercesImpl-2.9.1.jar not affected Only used in Lucene Benchmarks and Solr tests.
CVE-2023-51074, GHSA-pfh2-hfmq-phg5 all json-path-2.8.0.jar not affected The only places we use json-path is for querying (via Calcite) and for transforming/indexing custom JSON. Since the advisory describes a problem that is limited to the current thread, and users that are allowed to query/transform/index are already trusted to cause load to some extent, this advisory does not appear to have impact on the way json-path is used in Solr.