Over the summer, the Apache Solr team addressed a remote code execution flaw, not a working exploit code was published online.
The bug addressed by the Apache Solr team fixed over the summer is more dangerous than initially thought.
Apache Solr is a highly reliable, scalable and fault-tolerant, open-source search engine written in Java.
Solr is highly reliable, scalable and fault-tolerant, providing distributed indexing, replication and load-balanced querying, automated failover and recovery, centralized configuration and more.
The vulnerability was reported to maintainers by a user named “jnyryan” and resides in the default solr.in.sh configuration. jnyryan The vulnerability was reported to maintainers by a user named “jnyryan” and resides in the default solr.in.sh configuration.
“This issue originally had the title “default solr.in.sh contains uncommented lines” and told users to check their solr.in.sh file.” reads the security advisory. “Later we upgraded the severity of this due to risk of remote code execution, acquired a CVE number and issued the public annoucement quoted below.”
The issue affects 8.1.1 and 8.2.0 releases of Apache Solr for Linux (Windows is not affected) that contain an insecure setting for the ENABLE_REMOTE_JMX_OPTS configuration option in the default solr.in.sh configuration file.
“If you use the default solr.in.sh file from the affected releases, then JMX monitoring will be enabled and exposed on RMI_PORT (default=18983), without any authentication.” continues the advisory” If this port is opened for inbound traffic in your firewall, then anyone with network access to your Solr nodes will be able to access JMX, which may in turn allow them to upload malicious code for execution on the Solr server.”
According to an analysis published by Tenable, all Solr versions from v7.7.2 to v8.3 are affected by the flaw.
“Tenable Research has confirmed that Apache Solr versions 7.7.2 through 8.3 (the most current release) are vulnerable, and we suspect older versions that include the Config API are potentially vulnerable.” reads the analysis published by Tenable.
When the flaw was reported, the Apache Solr team acknowledged it but did not recognize its severity because the experts thought it could be exploited by an attacker to only access Solr monitoring data.
On October 30, the user “s00py” published a proof-of-concept exploit code on GitHub that leverage the issue to get remote code execution of vulnerable systems. The exploit code used the exposed 8983 port to enable support for Apache Velocity templates then used it to upload and run malicious code.
The availability of the two PoC exploits forced the Solr team to publish an updated security advisory on November 15. The vulnerability received the CVE-2019-12409 identifier.
“Make sure your effective solr.in.sh file has ENABLE_REMOTE_JMX_OPTS set to ‘false’ on every Solr node and then restart Solr. Note that the effective solr.in.sh file may reside in /etc/defaults/ or another location depending on the install.” reads the updated advisory. “You can then validate that the ‘com.sun.management.jmxremote*’ family of properties are not listed in the “Java Properties” section of the Solr Admin UI, or configured in a secure way.”
Experts also recommend blocking inbound traffic on JMX_PORT.
At the time of writing, experts are not aware of attacks exploiting the issue in the wild, but they pointed out that it is only a matter of time.
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.