UBUNTU-CVE-2026-84243: High severity ubuntu/eglibc vulnerability

Published Nov 3, 2026
·
Updated

The gettext family of functions in the GNU C Library version 2.0 and later accept LANGUAGE environment variable entries that contain '/' or that are equal to "..", unless the program is setuid or setgid (ATSECURE). An attacker who can set LANGUAGE in the environment of a program that uses gettext can make it load a message catalog (.mo file) from an arbitrary location in the file system. A crafted .mo file can crash the program through out-of-range offsets, or supply translations whose format directives do not match the arguments passed by the program. That causes undefined behaviour in the printf family of functions and may allow arbitrary code execution with the privileges of the program. The safety of message catalogs relies on them being installed in trusted, read-only locations, and the directory traversal bypasses this. The fix for CVE-2014-0475 rejects ".." path components in locale names passed to setlocale or taken from the LCALL, LC and LANG environment variables. gettext reads LANGUAGE directly and appends each colon-separated entry to the message catalog directory, so that fix did not cover LANGUAGE. LANGUAGE is only used when the LCMESSAGES locale is not "C", "C.<encoding>" or "POSIX", so the attacker must also be able to select another installed locale, for example through LANG or LCALL. Exploitation also requires that the attacker can place the crafted file in a location readable by the target program, and that the environment crosses a trust boundary without the program running as ATSECURE. An example is an SSH server that accepts LANGUAGE and LANG from clients through the AcceptEnv directive and restricts an account to a forced command; the attacker may use this to escape the restriction.

Affected Software

8 affected components
ubuntu/eglibc*
ubuntu/glibc*
ubuntu/glibc*
ubuntu/glibc*
ubuntu/glibc*
ubuntu/glibc*
ubuntu/glibc*
ubuntu/glibc*

Event History

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

Frequently Asked Questions

1

Are setuid and setgid programs affected?

No. The described behavior is not accepted when the program runs in AT_SECURE mode, which includes setuid or setgid execution.

2

What conditions are required for exploitation?

An attacker must be able to set the LANGUAGE environment variable for a program that uses gettext. LANGUAGE is used only when the LC_MESSAGES locale is not set to "C".

3

What is the practical impact of loading an attacker-controlled message catalog?

A crafted .mo file can cause a crash through out-of-range offsets. Translations with format directives that do not match the program's arguments can cause undefined behavior in printf-family functions and may permit code execution with the program's privileges.

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