Summary
Open Source Apache Struts Vulnerabilities were addressed by IBM Platform Cluster Manager Standard Edition, IBM Platform Cluster Manager Advanced Edition, Platform HPC, and Spectrum Cluster Foundation.
Vulnerability Details
CVE-ID: CVE-2017-12611 Description: Apache Struts could allow a remote attacker to execute arbitrary code on the system, caused by the use of an unintentional expression in Freemarker tag instead of string literals. An attacker could exploit this vulnerability to execute arbitrary code on the system.
CVSS Base Score: 7.3
CVSS Temporal Score: https://exchange.xforce.ibmcloud.com/vulnerabilities/131603 for more information
CVSS Environmental Score*: Undefined
CVSS Vector: (CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L)
Affected Products and Versions
Platform Cluster Manager Standard Edition Version 4.1.0, 4.1.1 and 4.1.1.1
Platform Cluster Manager Advanced Edition Version 4.2.0, 4.2.0.1, 4.2.0.2 and 4.2.1
Platform HPC Version 4.1.1, 4.1.1.1, 4.2.0 and 4.2.1
Spectrum Cluster Foundation 4.2.2
Remediation/Fixes
IBM recommends that you review your entire environment to identify vulnerable releases of the Open Source Apache Struts Vulnerabilities Collections and take appropriate mitigation and remediation actions.
Platform Cluster Manager 4.2.1 & Platform HPC 4.2.1 & Spectrum Cluster Foundation 4.2.2
1. Download the struts-2.3.34-lib.zip package from the following location: http://archive.apache.org/dist/struts/2.3.34/
2. Copy the struts-2.3.34-lib.zip package to the management node.
3. Extract the struts-2.3.34-lib.zip package on the management node.
mkdir -p /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/struts2-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/struts2-json-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/struts2-spring-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/xwork-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/freemarker-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib/ognl-* /root/backup
unzip struts-2.3.34-lib.zip
cd struts-2.3.34/lib
cp xwork-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
cp struts2-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
cp ognl-3.0.21.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
cp struts2-json-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
cp struts2-spring-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
cp freemarker-2.3.22.jar /opt/pcm/web-portal/gui/3.0/wlp/usr/servers/platform/apps/platform.war/WEB-INF/lib
4. Restart Platform HPC services. If high availability is enabled, run the following commands on the active management node:
pcmhatool failmode -m manual
pcmadmin service stop --service WEBGUI
pcmadmin service start --service WEBGUI
pcmhatool failmode -m auto
Otherwise, if high availability is not enabled, run the following commands on the management node:
pcmadmin service stop --service WEBGUI
pcmadmin service start --service WEBGUI
Platform Cluster Manager 4.2.0 4.2.0.x & Platform HPC 4.2.0 4.2.0.x
1. Download the struts-2.3.34-lib.zip package from the following location: http://archive.apache.org/dist/struts/2.3.34/
2. Copy the struts-2.3.34-lib.zip package to the management node.
3. Extract the struts-2.3.34-lib.zip package on the management node.
4. # mkdir -p /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-json-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-spring-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/xwork-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/freemarker-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/ognl-* /root/backup
unzip struts-2.3.34-lib.zip
cd struts-2.3.34/lib
cp xwork-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp ognl-3.0.21.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-json-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-spring-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp freemarker-2.3.22.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
5. Restart Platform HPC services. If high availability is enabled, run the following commands on the active management node:
pcmhatool failmode -m manual
pcmadmin service stop --service WEBGUI
pcmadmin service start --service WEBGUI
pcmhatool failmode -m auto
Otherwise, if high availability is not enabled, run the following commands on the management node:
pcmadmin service stop --service WEBGUI
pcmadmin service start --service WEBGUI
Platform Cluster Manager 4.1.x & Platform HPC 4.1.x
1. Download the struts-2.3.34-lib.zip package from the following location: http://archive.apache.org/dist/struts/2.3.34/
2. Copy the struts-2.3.34-lib.zip package to the management node.
3. Extract the struts-2.3.34-lib.zip package on the management node
mkdir -p /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-json-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/struts2-spring-plugin-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/xwork-core-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/freemarker-* /root/backup
mv /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib/ognl-* /root/backup
unzip struts-2.3.34-lib.zip
cd struts-2.3.34/lib/
cp xwork-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-core-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-json-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp struts2-spring-plugin-2.3.34.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp freemarker-2.3.22.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
cp ognl-3.0.21.jar /opt/pcm/web-portal/gui/3.0/tomcat/webapps/platform/WEB-INF/lib
4. Restart Platform HPC services. If high availability is enabled, run the following commands on the active management node:
pcmhatool failmode -m manual
pmcadmin stop
pmcadmin start
pcmhatool failmode -m auto
Otherwise, if high availability is not enabled, run the following commands on the management node:
pmcadmin stop
pmcadmin start