IBM Support

Security Bulletin: Vulnerability in Apache Log4j affects IBM Spectrum Protect Plus Container Backup and Restore for Kubernetes and OpenShift (CVE-2021-44228)

Security Bulletin


Summary

A vulnerability in Apache Log4j could allow an attacker to execute arbitrary code on the system. This vulnerability may affect IBM Spectrum Protect Plus Container backup and restore for Kubernetes and OpenShift due to its use of the Strimzi operator.

Vulnerability Details

CVEID:   CVE-2021-44228
DESCRIPTION:   Apache Log4j could allow a remote attacker to execute arbitrary code on the system, caused by the failure to protect against attacker controlled LDAP and other JNDI related endpoints by JNDI features. By sending a specially crafted code string, an attacker could exploit this vulnerability to load arbitrary Java code on the server and take complete control of the system. Note: The vulnerability is also called Log4Shell or LogJam.
CVSS Base score: 10
CVSS Temporal Score: See: https://exchange.xforce.ibmcloud.com/vulnerabilities/214921 for the current score.
CVSS Vector: (CVSS:3.0/AV:N/AC:L/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
IBM Spectrum Protect Plus Container Backup and Restore for OpenShift10.1.9.0

 

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 included Log4j 2.15.

IBM Spectrum Protect
Affected Versions
Fixing
Level
PlatformLink to Fix and Instructions
10.1.9.010.1.9.1Linuxhttps://www.ibm.com/support/pages/node/6487159

 

.

Workarounds and Mitigations

Procedure for manually addressing this vulnerability

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

15 December 2021: Initial Publication
17 December 2021: Updated Remediation/Fixes section to include the fix
20 December 2021: Updated Remediation/Fixes section to indicate that the fix package included Log4j 2.15

*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","Edition":"","Line of Business":{"code":"LOB26","label":"Storage"}}]

Document Information

Modified date:
20 December 2021

UID

ibm16527090