CVE-2017-12629: XEE
It was found that Apache Solr would accept an object from an unauthenticated user that could be manipulated through subsequent post requests. An attacker could use this flaw to assemble an object that could permit execution of arbitrary code on the server.
Other sources
Remote code execution occurs in Apache Solr before 7.1 with Apache Lucene before 7.1 by exploiting XXE in conjunction with use of a Config API add-listener command to reach the RunExecutableListener class. Elasticsearch, although it uses Lucene, is NOT vulnerable to this. Note that the XML external entity expansion vulnerability occurs in the XML Query Parser which is available, by default, for any query request with parameters deftype=xmlparser and can be exploited to upload malicious data to the /upload request handler or as Blind XXE using ftp wrapper in order to read arbitrary local files from the Solr server. Note also that the second vulnerability relates to remote code execution using the RunExecutableListener available on all affected versions of Solr.
— Launchpad
Remote code execution occurs in Apache Solr before versions 5.5.5, 6.6.2 and 7.1.0 by exploiting XXE in conjunction with use of a Config API add-listener command to reach the RunExecutableListener class. Elasticsearch, although it uses Lucene, is NOT vulnerable to this. Note that the XML external entity expansion vulnerability occurs in the XML Query Parser which is available, by default, for any query request with parameters deftype=xmlparser and can be exploited to upload malicious data to the /upload request handler or as Blind XXE using ftp wrapper in order to read arbitrary local files from the Solr server. Note also that the second vulnerability relates to remote code execution using the RunExecutableListener available on all affected versions of Solr
— GitHub
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
maven/org.apache.solr:solr-coreto a version that resolves this vulnerability.Fixed in 5.5.5 - Upgrade
Upgrade
maven/org.apache.solr:solr-coreto a version that resolves this vulnerability.Fixed in 6.6.2 - Upgrade
Upgrade
maven/org.apache.solr:solr-coreto a version that resolves this vulnerability.Fixed in 7.1.0 - Upgrade
Upgrade
debian/lucene-solrto a version that resolves this vulnerability.Fixed in 3.6.2+dfsg-24Fixed in 3.6.2+dfsg-26Fixed in 3.6.2+dfsg-27 - Upgrade
Upgrade
redhat/lucene-solrto a version that resolves this vulnerability.Fixed in 5.5.5 - Upgrade
Upgrade
redhat/lucene-solrto a version that resolves this vulnerability.Fixed in 6.6.2 - Upgrade
Upgrade
redhat/lucene-solrto a version that resolves this vulnerability.Fixed in 7.1 - Upgrade
Upgrade
redhat/lucene-solrto a version that resolves this vulnerability.Fixed in 7.2 - Upgrade
Upgrade
redhat/lucene-solrto a version that resolves this vulnerability.Fixed in 8.0 - Upgrade
Upgrade
Apache Solrto a version that resolves this vulnerability.Fixed in 5.5.5 - Upgrade
Upgrade
Apache Solrto a version that resolves this vulnerability.Fixed in 6.6.2 - Upgrade
Upgrade
Apache Solrto a version that resolves this vulnerability.Fixed in 7.1.0 - Compensating control
If Solr is exposed, restrict access so unauthenticated users cannot submit XML query requests that use deftype=xmlparser and cannot reach the /upload request handler.
Event History
Frequently Asked Questions
What is the severity of CVE-2017-12629?
CVE-2017-12629 has been classified as a critical security vulnerability due to its ability to allow remote code execution.
How do I fix CVE-2017-12629?
To remediate CVE-2017-12629, upgrade to the patched versions of Apache Solr as specified in the vulnerability details.
What types of software are affected by CVE-2017-12629?
CVE-2017-12629 affects several versions of Apache Solr, including multiple releases of Lucene-Solr across Debian, Red Hat, and Ubuntu distributions.
What can an attacker do with CVE-2017-12629?
An attacker exploiting CVE-2017-12629 can manipulate objects sent by unauthenticated users, potentially leading to arbitrary code execution on the server.
Are there any known exploits for CVE-2017-12629?
Yes, CVE-2017-12629 has been publicly disclosed, which makes it imperative for users to address the vulnerability without delay.