UBUNTU-CVE-2026-119078: Medium severity ubuntu/libcommons-codec-java vulnerability

Published Nov 12, 2026
·
Updated

Apache Commons Codec's Blake3 class documented the output of its doFinalize methods as depending on any previously finalized bytes, so that consecutive calls would return different output. In fact, doFinalize does not change the hash state: calling it again without supplying more input returns the same bytes. The key-derivation example in the class Javadoc, shipped since 1.16.0, derives two keys with two consecutive doFinalize calls. Code that follows it gets identical keys, so the separation between the derived keys is lost. The same applies to any application that calls doFinalize more than once on one instance and expects new output each time. This issue affects Apache Commons Codec from 1.16.0 before 1.23.0. Version 1.23.0 corrects the documentation, but the behavior of doFinalize is unchanged. Upgrading alone does not fix affected code. Users should check their applications for repeated doFinalize calls on the same Blake3 instance and derive multiple keys by requesting the combined length in one call and splitting the output, as the updated Javadoc shows.

Affected Software

8 affected components
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*
ubuntu/libcommons-codec-java*

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Apache Commons Codec to a version that resolves this vulnerability.

    Fixed in 1.23.0
  2. Compensating control

    Check applications for repeated doFinalize calls on the same Blake3 instance. To derive multiple keys, request the combined output length in one call and split the resulting bytes, as shown in the updated Javadoc; upgrading alone does not fix affected code.

Event History

Nov 12, 2026
CVE Published
via OSV·12:00 AM
Data Sourced
via OSV·12:00 AM
DescriptionSeverityAffected Software

Frequently Asked Questions

1

Who is affected by this issue?

Applications using Apache Commons Codec Blake3 from 1.16.0 before 1.23.0 are affected if they call doFinalize more than once on the same Blake3 instance and expect each call to produce new output. This includes code based on the key-derivation example previously published in the class Javadoc.

2

What does an attacker need to exploit this?

The provided information does not describe an external attacker interaction or a separate exploitation prerequisite. The risk arises when affected application code uses supposedly distinct outputs from consecutive doFinalize calls as different derived keys.

3

Does upgrading to version 1.23.0 fix existing application code?

No. Version 1.23.0 corrects the documentation, but doFinalize behavior is unchanged, so code that makes repeated calls on one instance will still receive the same bytes unless it is changed.

4

What should be done if affected code is found?

Request the total required output length in a single doFinalize call, then split that output into the required keys or values. Review applications for multiple doFinalize calls on the same Blake3 instance.

5

How can I determine whether an application is already affected?

Inspect Blake3 usage for consecutive or repeated doFinalize calls on the same instance without additional input between calls. If the application treats those outputs as separate derived keys or otherwise expects them to differ, it is affected.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203