The following sections summarize changes made in all Java SE 11.0.23 BPR releases. The BPR releases are listed below in date order, most current BPR first. Note that bug fixes in previous BPRs are also included in the current BPR.
Fixes from the prior BPR are included in this version.
Release date: April 16, 2024
The full version string for this update release is 11.0.23+7 (where "+" means "build"). The version number is 11.0.23.
JDK 11.0.23 contains IANA time zone data 2024a which contains the following changes:
For more information, refer to Timezone Data Versions in the JRE Software.
The security baselines for the Java Runtime at the time of the release of JDK 11.0.23 are specified in the following table:
Java Family Version | Security Baseline (Full Version String) |
---|---|
11 | 11.0.23+7 |
8 | 8u411-b09 |
Oracle recommends that the JDK is updated with each Critical Patch Update. In order to determine if a release is the latest, the Security Baseline page can be used to determine which is the latest version for each release family.
Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 11.0.23) be used after the next critical patch update scheduled for July 16, 2024.
Java Management Service, available to all users, can help you find vulnerable Java versions in your systems. Java SE Subscribers and customers running in Oracle Cloud can use Java Management Service to update Java Runtimes and to do further security reviews like identifying potentially vulnerable third party libraries used by your Java programs. Existing Java Management Service user click here to log in to your dashboard. The Java Management Service Documentation provides a list of features available to everyone and those available only to customers. Learn more about using Java Management Service to monitor and secure your Java Installations.
The XML Signature implementation has been updated to Santuario 3.0.3. Support for four new SHA-3 based RSA-MGF1 signature methods have been added: SHA3_224_RSA_MGF1
, SHA3_256_RSA_MGF1
, SHA3_384_RSA_MGF1
, and SHA3_512_RSA_MGF1
. While these new algorithm URIs are not defined in javax.xml.crypto.dsig.SignatureMethod
in the JDK update releases, they may be represented as string literals in order to be functionally equivalent. SHA-3 hash algorithm support was delivered to JDK 9 via JEP 287. Releases earlier than that may use third party security providers.
Additionally, support for the following EdDSA signatures has been added: ED25519
and ED448
. While these new algorithm URIs are not defined in javax.xml.crypto.dsig.SignatureMethod
in the JDK Update releases, they may be represented as string literals in order to be functionally equivalent. The JDK supports EdDSA since JDK 15. Releases earlier than that may use 3rd party security providers. One other difference is that the JDK still supports the here()
function by default. However, we recommend avoiding the use of the here()
function in new signatures and replacing existing signatures that use the here()
function. Future versions of the JDK will likely disable, and eventually remove, support for this function, as it cannot be supported using the standard Java XPath API. Users can now disable the here()
function by setting the security property jdk.xml.dsig.hereFunctionSupported
to "false".
The java.awt.SystemTray
API is used for notifications in a desktop taskbar and may include an icon representing an application. On Linux, the Gnome desktop's own icon support in the taskbar has not worked properly for several years due to a platform bug. This, in turn, has affected the JDK's API, which relies upon that.
Therefore, in accordance with the existing Java SE specification, java.awt.SystemTray.isSupported()
will return false where ever the JDK determines the platform bug is likely to be present.
The impact of this is likely to be limited since applications always must check for that support anyway. Additionally, some distros have not supported the SystemTray for several years unless the end-user chooses to install non-bundled desktop extensions.
The following root certificates have been added to the cacerts truststore:
+ Certainly
+ certainlyrootr1
DN: CN=Certainly Root R1, O=Certainly, C=US
+ Certainly
+ certainlyroote1
DN: CN=Certainly Root E1, O=Certainly, C=US
The XML Signature secure validation mode has been enabled by default (previously it was not enabled by default unless running with a security manager). When enabled, validation of XML signatures are subject to stricter checking of algorithms and other constraints as specified by the jdk.xml.dsig.secureValidationPolicy
security property.
If necessary, and at their own risk, applications can disable the mode by setting the org.jcp.xml.dsig.secureValidation
property to Boolean.FALSE
with the DOMValidateContext.setProperty()
API.
Library | New Version | Module | JBS |
---|---|---|---|
FreeType | 2.13.2 | java.desktop | JDK-8316028 |
HarfBuzz | 8.2.2 | java.desktop | JDK-8313643 |
Joni | 2.2.1 | jdk.scripting.nashorn | JDK-8322094 |
libpng | 1.6.40 | java.desktop | JDK-8316030 |
Xalan Java | 2.7.3 | java.xml | JDK-8305814 |
XML Security for Java | 3.0.3 | java.xml.crypto | JDK-8319124 |
This release also contains fixes for security vulnerabilities described in the Oracle Critical Patch Update.
➜ Issues fixed in 11.0.23:
# | JBS | Component | Summary |
---|---|---|---|
1 | JDK-8318951 | client-libs/2d | Additional negative value check in JPEG decoding |
2 | JDK-8301846 | client-libs/javax.sound | Invalid TargetDataLine after screen lock when using JFileChooser or COM library |
3 | JDK-8213478 | core-libs/java.lang.invoke | Reduce rebinds when applying repeated filters and conversions |
4 | JDK-8223454 | core-libs/java.lang.invoke | Reduce String concatenation shapes by folding initialLengthCoder into last mixer |
5 | JDK-8222852 | core-libs/java.lang.invoke | Reduce String concat combinator tree shapes by folding constants into prependers |
6 | JDK-8213035 | core-libs/java.lang.invoke | Pack MethodHandleInlineStrategy coder and length into a long |
7 | JDK-8212726 | core-libs/java.lang.invoke | Replace some use of drop- and foldArguments with filtering argument combinator in StringConcatFactory |
8 | JDK-8281560 | core-libs/java.util.regex | Matcher.hitEnd returns unexpected results in presence of CANON_EQ flag. |
9 | JDK-8321480 | core-libs/java.util:i18n | ISO 4217 Amendment 176 Update |
10 | JDK-8307683 | hotspot/compiler | Loop Predication should not hoist range checks with trap on success projection by negating their condition |
11 | JDK-8309119 | hotspot/compiler | [17u/11u] Redo JDK-8297951: C2: Create skeleton predicates for all If nodes in loop predication |
12 | JDK-8321215 | hotspot/compiler | Incorrect x86 instruction encoding for VSIB addressing mode |
13 | JDK-8236772 | hotspot/compiler | Fix build for windows 32-bit after 8212160 and 8234331. |
14 | JDK-8318889 | hotspot/compiler | C2: add bailout after assert Bad graph detected in build_loop_late |
15 | JDK-8317507 | hotspot/compiler | C2 compilation fails with "Exceeded _node_regs array" |
16 | JDK-8213927 | hotspot/gc | G1 ignores AlwaysPreTouch when UseTransparentHugePages is enabled |
17 | JDK-8287113 | hotspot/jfr | JFR: Periodic task thread uses period for method sampling events |
18 | JDK-8322321 | hotspot/runtime | Add man page doc for -XX:+VerifySharedSpaces |
19 | JDK-8268893 | hotspot/runtime | jcmd to trim the glibc heap |
20 | JDK-8323243 | hotspot/runtime | JNI invocation of an abstract instance method corrupts the stack |
21 | JDK-8320208 | security-libs/java.security | Update Public Suffix List to b5bf572 |
22 | JDK-8302182 | security-libs/java.security | Update Public Suffix List to 88467c9 |
23 | JDK-8307185 | security-libs/javax.crypto:pkcs11 | pkcs11 native libraries make JNI calls into java code while holding GC lock |
24 | JDK-8255867 | security-libs/javax.net.ssl | SignatureScheme JSSE property does not preserve ordering in handshake messages |
25 | JDK-8284910 | security-libs/javax.security | Buffer clean in PasswordCallback |
26 | JDK-8318971 | tools/jar | Better Error Handling for Jar Tool When Processing Non-existent Files |
27 | JDK-8308245 | tools/javac | Add -proc:full to describe current default annotation processing policy |
28 | JDK-8216408 | xml/javax.xml.stream | XMLStreamWriter setDefaultNamespace(null) throws NullPointerException |
29 | JDK-8223291 | xml/javax.xml.transform | Whitespace is added to CDATA tags when using OutputKeys.INDENT to format XML |
30 | JDK-8237456 | xml/javax.xml.transform | Transform filtered through SAX filter mishandles character entities |
31 | JDK-8265073 | xml/javax.xml.transform | XML transformation and indentation when using xml:space |
32 | JDK-8220818 | xml/javax.xml.validation | Validator does not find missing match for keyref error |