Crowd Security Advisory 2019-05-22
Crowd: pdkinstall development plugin incorrectly enabled (CVE-2019-11580)
Summary | pdkinstall development plugin incorrectly enabled (CVE-2019-11580) |
---|---|
Advisory Release Date | 10 AM PDT (Pacific Time, -7 hours) |
Products |
|
Affected Versions |
|
Fixed Versions |
|
CVE ID(s) | CVE-2019-11580 |
Summary of Vulnerability
This advisory discloses a critical severity security vulnerability which was introduced in version 2.1.0 of Crowd and Crowd Data Center. Versions of Crowd and Crowd Data Center starting with version 2.1.0 before 3.0.5 (the fixed version for 3.0.x), from version 3.1.0 before 3.1.6 (the fixed version for 3.1.x), from version 3.2.0 before 3.2.8 (the fixed version for 3.2.x), from version 3.3.0 before 3.3.5 (the fixed version for 3.3.x), and from version 3.4.0 before 3.4.4 (the fixed version for 3.4.x) are affected by this vulnerability.
Customers who have upgraded Crowd or Crowd Data Center to version 3.0.5 or 3.1.6 or 3.2.8 or 3.3.5 or 3.4.4 are not affected.
Customers who are currently running:
- Crowd or Crowd Data Center from version 2.1.0 before 3.0.5 (the fixed version for 3.0.x)
- Crowd or Crowd Data Center from version 3.1.0 before 3.1.6 (the fixed version for 3.1.x)
- Crowd or Crowd Data Center from version 3.2.0 before 3.2.8 (the fixed version for 3.2.x)
- Crowd or Crowd Data Center from version 3.3.0 before 3.3.5 (the fixed version for 3.3.x)
- Crowd or Crowd Data Center from version 3.4.0 before 3.4.4 (the fixed version for 3.4.x)
Please upgrade your Crowd or Crowd Data Center installations immediately to fix this vulnerability.
pdkinstall development plugin incorrectly enabled (CVE-2019-11580)
Severity
Atlassian rates the severity level of this vulnerability as critical, according to the scale published in our Atlassian severity levels. The scale allows us to rank the severity as critical, high, moderate or low.
This is our assessment and you should evaluate its applicability to your own IT environment.
Description
Crowd and Crowd Data Center had the pdkinstall development plugin incorrectly enabled in release builds. Attackers who can send unauthenticated or authenticated requests to a Crowd or Crowd Data Center instance can exploit this vulnerability to install arbitrary plugins, which permits remote code execution on systems running a vulnerable version of Crowd or Crowd Data Center.
All versions of Crowd from version 2.1.0 before 3.0.5 (the fixed version for 3.0.x), from version 3.1.0 before 3.1.6 (the fixed version for 3.1.x), from version 3.2.0 before 3.2.8 (the fixed version for 3.2.x), from version 3.3.0 before 3.3.5 (the fixed version for 3.3.x), and from version 3.4.0 before 3.4.4 (the fixed version for 3.4.x) are affected by this vulnerability.
This issue can be tracked here: - CWD-5388Getting issue details... STATUS
Fix
We have taken the following steps to address this issue:
- Released Crowd and Crowd Data Center version 3.4.4 that contains a fix for this issue and can downloaded from https://www.atlassian.com/software/crowd/download
- Released Crowd and Crowd Data Center versions 3.0.5, 3.1.6, 3.2.8, and 3.3.5 that contain a fix for this issue and can downloaded from https://www.atlassian.com/software/crowd/download-archive
What You Need to Do
Atlassian recommends customers running a version of Crowd below version 3.3.0 upgrade to version 3.2.8 to avoid - CWD-5352Getting issue details... STATUS , for customers running a version above or equal to 3.3.0 Atlassian recommends to upgrade to the latest version. For a full description of the latest version of Crowd, see the release notes. You can download the latest version of Crowd from the download centre.
If you are running version | Then upgrade to bugfix version |
---|---|
2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.2.4, 2.2.5, 2.2.6, 2.2.7, 2.2.8, 2.2.9, 2.3.0, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.3.5, 2.3.6, 2.3.7, 2.3.8, 2.3.9, 2.3.10, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8, 2.4.9, 2.4.10, 2.4.11, 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.5.4, 2.5.5, 2.5.6, 2.5.7, 2.6.0, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.6.6, 2.6.7, 2.7.0, 2.7.1, 2.7.2, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.8.6, 2.8.7, 2.8.8, 2.9.1, 2.9.2, 2.9.3, 2.9.4, 2.9.5, 2.9.6, 2.9.7, 2.10.1, 2.10.2, 2.10.3, 2.10.4, 2.11.0, 2.11.1, 2.11.2, 2.12.0, 2.12.1, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4 | 3.0.5 |
3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5 | 3.1.6 |
3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.5, 3.2.6, 3.2.7 | 3.2.8 |
3.3.0, 3.3.1, 3.3.2, 3.3.3, 3.3.4 | 3.3.5 |
3.4.0, 3.4.1, 3.4.2, 3.4.3 | 3.4.4 |
Mitigation
This issue can be mitigated by doing the following:
- Stop Crowd
- Find and delete any pdkinstall-plugin jar files from the Crowd installation directory and the data directory
- Remove the pdkinstall-plugin jar file from <Crowd installation directory>/crowd-webapp/WEB-INF/classes/atlassian-bundled-plugins.zip
- Unzip the <Crowd installation directory>/crowd-webapp/WEB-INF/classes/atlassian-bundled-plugins.zip file
- Delete the pdkinstall-plugin-0.4.jar file inside the extracted folder
- Zip the contents of the folder back into <Crowd installation directory>/crowd-webapp/WEB-INF/classes/atlassian-bundled-plugins.zip
- Start Crowd
- If you have any issues starting Crowd after these changes - clear the plugin cache.
- Check that there are no pdkinstall-plugin jar files in the installation directory or the data directory
The following bash script can be used to apply the above mitigation on Linux systems:
#!/bin/bash
set -u
INSTALLATION_DIRECTORY= # set this to where crowd is installed
DATA_DIRECTORY= # set this to the crowd data directory
if [ -z "$INSTALLATION_DIRECTORY" ]
then
echo "Please set INSTALLATION_DIRECTORY"
exit 1
fi
if [ -z "$DATA_DIRECTORY" ]
then
echo "Please set DATA_DIRECTORY"
exit 1
fi
if test -f $DATA_DIRECTORY; then
echo "Please check that DATA_DIRECTORY is correct."
exit 1
fi
if test -f $INSTALLATION_DIRECTORY/stop_crowd.sh; then
echo "Stopping Crowd"
$INSTALLATION_DIRECTORY/stop_crowd.sh > /dev/null
find $INSTALLATION_DIRECTORY -iname 'atlassian-bundled-plugins.zip' -exec zip -d {} 'pdkinstall-plugin-*.jar' \;
# You should see something like deleting: pdkinstall-plugin-0.4.jar after the above find command has run
find $DATA_DIRECTORY -iname 'pdkinstall-plugin*' -exec rm {} \;
echo "Starting Crowd"
if test -f $INSTALLATION_DIRECTORY/start_crowd.sh; then
$INSTALLATION_DIRECTORY/start_crowd.sh
sleep 60
find $DATA_DIRECTORY -iname 'pdkinstall-plugin*' -exec "Failed to apply the mitigation - {} still exists" \;
else
echo "Failed to start crowd"
fi
else
echo "Unable to stop crowd, please ensure that you have specified the correct installation directory."
fi
Support
If you did not receive an email for this advisory and you wish to receive such emails in the future go to https://my.atlassian.com/email and subscribe to Alerts emails.
If you have questions or concerns regarding this advisory, please raise a support request at https://support.atlassian.com/.
References
Security Bug fix Policy | As per our new policy critical security bug fixes will be back ported in accordance with https://www.atlassian.com/trust/security/bug-fix-policy. We will release new maintenance releases for the versions covered by the policy instead of binary patches. Binary patches are no longer released. |
Severity Levels for security issues | Atlassian security advisories include a severity level and a CVE identifier. This severity level is based on our self-calculated CVSS score for each specific vulnerability. CVSS is an industry standard vulnerability metric. You can also learn more about CVSS at FIRST.org. |
End of Life Policy | Our end of life policy varies for different products. Please refer to our EOL Policy for details. |