CVE-2019-17558: Apache Solr VelocityResponseWriter Plug-In Remote Code Execution Vulnerability

Published Dec 30, 2019
·
Updated

Apache Solr 5.0.0 to Apache Solr 8.3.1 are vulnerable to a Remote Code Execution through the VelocityResponseWriter. A Velocity template can be provided through Velocity templates in a configset velocity/ directory or as a parameter. A user defined configset could contain renderable, potentially malicious, templates. Parameter provided templates are disabled by default, but can be enabled by setting params.resource.loader.enabled by defining a response writer with that setting set to true. Defining a response writer requires configuration API access. Solr 8.4 removed the params resource loader entirely, and only enables the configset-provided template rendering when the configset is trusted (has been uploaded by an authenticated user).

Other sources

The Apache Solr VelocityResponseWriter plug-in contains an unspecified vulnerability which can allow for remote code execution.

CISA

Affected Software

13 affected componentsFixes available
maven/org.apache.solr:solr-core>=8.0.0<=8.3.1
8.4.0
maven/org.apache.solr:solr-core>=7.0.0<=7.7.2
8.4.0
maven/org.apache.solr:solr-core>=6.0.0<=6.6.6
8.4.0
maven/org.apache.solr:solr-core>=5.0.0<=5.5.5
8.4.0
Apache SOLR
Apache SOLR>=5.0.0<=8.3.1
ORACLE Primavera Unifier>=17.7<=17.12
ORACLE Primavera Unifier=16.1
ORACLE Primavera Unifier=16.2
ORACLE Primavera Unifier=18.8
ORACLE Primavera Unifier=19.12
Apache SOLR>=5.0.0<7.7.3
Apache SOLR>=8.0.0<8.4.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade maven/org.apache.solr:solr-core to a version that resolves this vulnerability.

    Fixed in 8.4.0
  2. Upgrade

    Upgrade Apache Solr to a version that resolves this vulnerability.

    Fixed in 8.4
  3. Configuration

    Ensure any Velocity template rendering via the parameter-based resource loader is disabled by keeping params.resource.loader.enabled set to false (it is enabled by setting this value to true when defining a response writer).

    Apache Solr (VelocityResponseWriter / resource loader) params.resource.loader.enabled = false
  4. Configuration

    On Solr 8.4, only allow configset-provided Velocity template rendering for configsets that are marked trusted (uploaded by an authenticated user); do not render templates from untrusted user defined configsets.

    Apache Solr (configset template rendering trust check) configset trusted status = trusted-required
  5. Compensating control

    Restrict who can define or upload configsets (since configset-provided Velocity templates can be renderable and potentially malicious, and trust on Solr 8.4 depends on upload by an authenticated user).

  6. Compensating control

    Restrict configuration API access because defining a response writer requires configuration API access.

Event History

Dec 30, 2019
CVE Published
via MITRE·04:36 PM
Data Sourced
via MITRE·04:36 PM
DescriptionWeakness
Data Sourced
via NVD·05:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Feb 12, 2020
Advisory Published
via GitHub·06:45 PM
Nov 3, 2021
Known Exploited
via CISA·12:00 AM
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is CVE-2019-17558?

CVE-2019-17558 is a vulnerability in Apache Solr that allows remote code execution through the VelocityResponseWriter.

2

Who is affected by CVE-2019-17558?

Apache Solr versions 5.0.0 to 8.3.1 are affected by CVE-2019-17558.

3

What is the severity of CVE-2019-17558?

CVE-2019-17558 has a severity rating of 7.5 (high).

4

How can CVE-2019-17558 be exploited?

CVE-2019-17558 can be exploited by providing a Velocity template through a configset or as a parameter in Apache Solr.

5

Are there any references for CVE-2019-17558?

Yes, you can find more information about CVE-2019-17558 at the following references: [Link 1](http://packetstormsecurity.com/files/157078/Apache-Solr-8.3.0-Velocity-Template-Remote-Code-Execution.html), [Link 2](https://issues.apache.org/jira/browse/SOLR-13971), and [Link 3](https://lists.apache.org/thread.html/r0b7b9d4113e6ec1ae1d3d0898c645f758511107ea44f0f3a1210c5d5@%3Cissues.lucene.apache.org%3E).

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203