Date: March 23, 2020
Affected Versions: Nexus Repository Manager 3.x up to and including 3.21.1
Fixed in Version: 3.21.2
Multiple vulnerabilities have been discovered in Nexus Repository Manager 3, including one which allows remote code execution by any user, including anonymous users. We have mitigated the vulnerabilities in version 3.21.2.
We recommend all instances of NXRM 3.x upgrade to 3.21.2 or later as soon as possible.
Groovy Scripting Disabled by Default:
As part of making Nexus Repository Manager more secure, we have disabled (by default) the ability for users to create or modify Groovy scripts via REST or scheduled task. For more information about this specific change please see this support article.
Credit:
The vulnerabilities were discovered and reported by Github Security Lab team member @pwnster (Alvaro Muñoz).
Frequently Asked Questions:
Q: What is the risk associated with this vulnerability?
A: NXRM can be compromised, allowing an attacker to use the flaw to execute code outside the scope of the NXRM server.
Q: What preconditions must be met in order to be vulnerable?
A: An attacker must have network access to the Repository Manager instance, as well as a user account access to the Repository Manager to send the malicious request.
Q: Are there implications associated with this advisory itself?
A: Disclosure unfortunately means bad actors may try to take advantage. While we have initially limited the information to the minimum details necessary for users to affect an appropriate fix, this merely slows down a would be attacker. As such, we are advising all organizations utilizing Nexus Repository Manager to immediately assess their individual impact and take appropriate action in response.
Q: Where can I obtain more information associated with the vulnerability?
A: At this time, and in the interest of best protecting our user community, we are limiting the information released to that absolutely required in order to assess impact and affect remediation.
Q: Why is Sonatype making this information available?
A: This is part of a responsible disclosure process. Given NXRM is an open source project with widespread usage, notifying the user base will invariably lead to broad dissemination. We are taking a concerted and proactive approach in our outreach activities and an effort to achieve the most rapid remediation possible.