USN-5202-1: OpenJDK vulnerabilities
17 December 2021
Several security issues were fixed in OpenJDK.
Releases
Packages
- openjdk-8 - Open Source Java implementation
- openjdk-lts - Open Source Java implementation
Details
Varnavas Papaioannou discovered that the FTP client implementation in
OpenJDK accepted alternate server IP addresses when connecting with FTP
passive mode. An attacker controlling an FTP server that an application
connects to could possibly use this to expose sensitive information
(rudimentary port scans). This issue only affected Ubuntu 16.04 ESM,
Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 21.04. (CVE-2021-2341)
Markus Loewe discovered that OpenJDK did not properly handle JAR files
containing multiple manifest files. An attacker could possibly use
this to bypass JAR signature verification. This issue only affected
Ubuntu 16.04 ESM, Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu
21.04. (CVE-2021-2369)
Huixin Ma discovered that the Hotspot VM in OpenJDK did not properly
perform range check elimination in some situations. An attacker could
possibly use this to construct a Java class that could bypass Java
sandbox restrictions. This issue only affected Ubuntu 16.04 ESM,
Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 21.04. (CVE-2021-2388)
Asaf Greenholts discovered that OpenJDK preferred certain weak ciphers by
default. An attacker could possibly use this to expose sensitive
information. (CVE-2021-35550)
It was discovered that the Rich Text Format (RTF) Parser in OpenJDK did not
properly restrict the amount of memory allocated in some situations. An
attacker could use this to specially craft an RTF file that caused a denial
of service. (CVE-2021-35556)
It was discovered that the Rich Text Format (RTF) Reader in OpenJDK did not
properly restrict the amount of memory allocated in some situations. An
attacker could use this to specially craft an RTF file that caused a denial
of service. (CVE-2021-35559)
Markus Loewe discovered that the HashMap and HashSet implementations in
OpenJDK did not properly validate load factors during deserialization. An
attacker could use this to cause a denial of service (excessive memory
consumption). (CVE-2021-35561)
It was discovered that the Keytool component in OpenJDK did not properly
handle certificates with validity ending dates in the far future. An
attacker could use this to specially craft a certificate that when imported
could corrupt a keystore. (CVE-2021-35564)
Tristen Hayfield discovered that the HTTP server implementation in OpenJDK
did not properly handle TLS session close in some situations. A remote
attacker could possibly use this to cause a denial of service (application
infinite loop). (CVE-2021-35565)
Chuck Hunley discovered that the Kerberos implementation in OpenJDK did not
correctly report subject principals when using Kerberos Constrained
Delegation. An attacker could possibly use this to cause incorrect Kerberos
tickets to be used. (CVE-2021-35567)
it was discovered that the TLS implementation in OpenJDK did not properly
handle TLS handshakes in certain situations where a Java application is
acting as a TLS server. A remote attacker could possibly use this to cause
a denial of service (application crash). (CVE-2021-35578)
it was discovered that OpenJDK did not properly restrict the amount of
memory allocated when processing BMP images. An attacker could use this to
specially craft a BMP image file that could cause a denial of service.
(CVE-2021-35586)
It was discovered that the HotSpot VM in OpenJDK 8 did not properly perform
validation of inner class index values in some situations. An attacker
could use this to specially craft a class file that when loaded could cause
a denial of service (Java VM crash). (CVE-2021-35588)
Artem Smotrakov discovered that the TLS implementation in OpenJDK used non-
constant time comparisons during TLS handshakes. A remote attacker could
use this to expose sensitive information. (CVE-2021-35603)
Update instructions
The problem can be corrected by updating your system to the following package versions:
Ubuntu 21.10
-
openjdk-11-jre
-
11.0.13+8-0ubuntu1~21.10
-
openjdk-11-jre-headless
-
11.0.13+8-0ubuntu1~21.10
-
openjdk-11-jre-zero
-
11.0.13+8-0ubuntu1~21.10
-
openjdk-8-jre
-
8u312-b07-0ubuntu1~21.10
-
openjdk-8-jre-headless
-
8u312-b07-0ubuntu1~21.10
-
openjdk-8-jre-zero
-
8u312-b07-0ubuntu1~21.10
Ubuntu 21.04
-
openjdk-11-jre
-
11.0.13+8-0ubuntu1~21.04
-
openjdk-11-jre-headless
-
11.0.13+8-0ubuntu1~21.04
-
openjdk-11-jre-zero
-
11.0.13+8-0ubuntu1~21.04
-
openjdk-8-jre
-
8u312-b07-0ubuntu1~21.04
-
openjdk-8-jre-headless
-
8u312-b07-0ubuntu1~21.04
-
openjdk-8-jre-zero
-
8u312-b07-0ubuntu1~21.04
Ubuntu 20.04
-
openjdk-11-jre
-
11.0.13+8-0ubuntu1~20.04
-
openjdk-11-jre-headless
-
11.0.13+8-0ubuntu1~20.04
-
openjdk-11-jre-zero
-
11.0.13+8-0ubuntu1~20.04
-
openjdk-8-jre
-
8u312-b07-0ubuntu1~20.04
-
openjdk-8-jre-headless
-
8u312-b07-0ubuntu1~20.04
-
openjdk-8-jre-zero
-
8u312-b07-0ubuntu1~20.04
Ubuntu 18.04
-
openjdk-11-jre
-
11.0.13+8-0ubuntu1~18.04
-
openjdk-11-jre-headless
-
11.0.13+8-0ubuntu1~18.04
-
openjdk-11-jre-zero
-
11.0.13+8-0ubuntu1~18.04
-
openjdk-8-jre
-
8u312-b07-0ubuntu1~18.04
-
openjdk-8-jre-headless
-
8u312-b07-0ubuntu1~18.04
-
openjdk-8-jre-zero
-
8u312-b07-0ubuntu1~18.04
Ubuntu 16.04
-
openjdk-8-jre
-
8u312-b07-0ubuntu1~16.04
Available with Ubuntu Pro
-
openjdk-8-jre-headless
-
8u312-b07-0ubuntu1~16.04
Available with Ubuntu Pro
-
openjdk-8-jre-zero
-
8u312-b07-0ubuntu1~16.04
Available with Ubuntu Pro
This update uses a new upstream release, which includes additional bug
fixes. After a standard system update you need to restart any Java
applications or applets to make all the necessary changes.