IBM Support

Security Bulletin: Vulnerabilities in Apache Log4j affect IBM Spectrum Protect Plus Container Backup and Restore for Kubernetes and OpenShift (CVE-2021-45105, CVE-2021-45046)

Security Bulletin


Summary

Vulnerabilities in Apache Log4j could result in a denial of service or remote code execution. These vulnerabilities may affect IBM Spectrum Protect Plus Container backup and restore for Kubernetes and OpenShift due to its use of the Strimzi operator. The below fix package includes Apache Log4j 2.17

Vulnerability Details

CVEID:   CVE-2021-45105
DESCRIPTION:   Apache Log4j is vulnerable to a denial of service, caused by the failure to protect from uncontrolled recursion from self-referential lookups. A remote attacker with control over Thread Context Map (MDC) input data could craft malicious input data that contains a recursive lookup to cause a StackOverflowError that will terminate the process. Note: The vulnerability is also called LOG4J2-3230.
CVSS Base score: 7.5
CVSS Temporal Score: See: https://exchange.xforce.ibmcloud.com/vulnerabilities/215647 for the current score.
CVSS Vector: (CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)

CVEID:   CVE-2021-45046
DESCRIPTION:   Apache Log4j could result in remote code execution, caused by an incomplete fix of CVE-2021-44228 in certain non-default configurations. When the logging configuration uses a non-default Pattern Layout with a Context Lookup, an attacker with control over Thread Context Map (MDC) input data can craft malicious input data using a JNDI Lookup pattern to leak sensitive information and remote code execution in some environments and local code execution in all environments.
CVSS Base score: 9
CVSS Temporal Score: See: https://exchange.xforce.ibmcloud.com/vulnerabilities/215195 for the current score.
CVSS Vector: (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H)

Affected Products and Versions

Affected Product(s)Version(s)
IBM Spectrum Protect Plus Container Backup and Restore for Kubernetes10.1.9.0-10.1.9.1
IBM Spectrum Protect Plus Container Backup and Restore for OpenShift10.1.9.0-10.1.9.1

 

 

Remediation/Fixes

IBM strongly recommends addressing this vulnerability now by upgrading to the fixed level instead of using the manual process described under Workarounds and Mitigations.

Note:  The below fix package includes Log4j 2.17.  Customers running 10.1.9.0 or 10.1.9.1 will need to uninstall before installing 10.1.9.2.

IBM Spectrum Protect
Affected Versions
Fixing
Level
PlatformLink to Fix and Instructions
10.1.9.0-10.1.9.110.1.9.2Linux

https://www.ibm.com/support/pages/node/6487159

Note that customers running 10.1.9.0 or 10.1.9.1 will need to uninstall before installing 10.1.9.2.

 

.

 

Workarounds and Mitigations

IBM strongly recommends addressing this vulnerability by upgrading to the fixed level (above link) instead of using the procedure for manually addressing this vulnerability, but the manual process is as follows:

The strimzi Operator used by IBM Spectrum Protect Plus Container backup and restore is affected by this vulnerability.
 
To fix this issue:
:
For Cluster Operator, edit the Deployment and set the environment variable JAVA_OPTS to -Dlog4j2.formatMsgNoLookups=true
 
1. oc get deployment -n baas
 
2. oc edit deployment strimzi-cluster-operator-v0.26.0 -n baas
e.g.
    spec:
      containers:
      - args:
        - /opt/strimzi/bin/cluster_operator_run.sh
        env:
        - name: JAVA_OPTS
          value: -Dlog4j2.formatMsgNoLookups=true
        - name: STRIMZI_NAMESPACE
          valueFrom:
            fieldRef:..........
 
Editing deployment will cause strimzi-cluster-opreator pod to restart after which the system is patched.
Alternatively run the following command:
kubectl set env deploy/strimzi-cluster-operator-v0.26.0 JAVA_OPTS="-Dlog4j2.formatMsgNoLookups=true"  LOG4J_FORMAT_MSG_NO_LOOKUPS="true" -n baas
 
3. Edit the Kafka cluster definition so that the strimzi-entity-operator sets formatMsgNoLookup=true.
oc edit kafkas.kafka.strimzi.io -n baas baas
 
Under the field spec.entityOperator.topicOperator set the following fields.
 topicOperator:
   jvmOptions:
     javaSystemProperties:
     - name: log4j2.formatMsgNoLookups
       value: "true"
Under the field spec.entityOperator.userOperator set the following fields.
  userOperator:
    jvmOptions:
      javaSystemProperties:
      - name: log4j2.formatMsgNoLookups
        value: "true"
 
Save and close the file. The baas-entity-operator pod will automatically terminate and restart with the new options.
 
4. Confirm the settings were applied correctly by examining the logs of the baas-entity-operator pod.
The topic and user operator container logs should have lines such as below when starting that the JAVA_OPTS includes the formatMsgNoLookup=true option. See below for an example. Individual container logs may vary.
 
+ JAVA_OPTS=' -Dlog4j2.configurationFile=file:/opt/topic-operator/custom-config/log4j2.properties -Dlog4j2.formatMsgNoLookups=true -Dvertx.cacheDirBase=/tmp/vertx-cache -Djava.security.egd=file:/dev/./urandom'
 
Alternatives:
Updating the Strimzi operator in the install namespace from 0.26.0 to 0.26.1 or higher version will fix the vulnerability.

 

Get Notified about Future Security Bulletins

References

Off

Acknowledgement

Change History

03 January 2022: Initial Publication

*The CVSS Environment Score is customer environment specific and will ultimately impact the Overall CVSS Score. Customers can evaluate the impact of this vulnerability in their environments by accessing the links in the Reference section of this Security Bulletin.

Disclaimer

Review the IBM security bulletin disclaimer and definitions regarding your responsibilities for assessing potential impact of security vulnerabilities to your environment.

Document Location

Worldwide

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSNQFQ","label":"IBM Spectrum Protect Plus"},"Component":"","Platform":[{"code":"PF016","label":"Linux"}],"Version":"10.1.9.0, 10.1.9.1","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}}]

Document Information

Modified date:
03 January 2022

UID

ibm16537636