{"id":"CVE-2026-34479","aliases":["GHSA-h383-gmxw-35v2"],"title":"Apache Log4j 1 to Log4j 2 bridge: silent log event loss in Log4j1XmlLayout due to unescaped XML 1.0 forbidden characters","summary":"Apache Log4j 1 to Log4j 2 bridge: silent log event loss in Log4j1XmlLayout due to unescaped XML 1.0 forbidden characters","severity":"medium","cwe":["CWE-116"],"vendor":"apache","product":"org.apache.logging.log4j:log4j-core","ecosystem":"maven","affected":["org.apache.logging.log4j:log4j-core >= 2.7, < 2.25.4","org.apache.logging.log4j:log4j-core >= 3.0.0-beta1, <= 3.0.0-beta2"],"patched":["org.apache.logging.log4j:log4j-core 2.25.4"],"published":"2026-04-10","updated":"2026-10-26","sourceUpdated":"2026-10-26T15:16:51Z","source":"GHSA","sourceUrl":"https://github.com/advisories/GHSA-h383-gmxw-35v2","references":[{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-34479"},{"url":"https://github.com/apache/logging-log4j2/pull/4078"},{"url":"https://lists.apache.org/thread/gd0hp6mj17rn3kj279vgy4p7kd4zz5on"},{"url":"https://logging.apache.org/cyclonedx/vdr.xml"},{"url":"https://logging.apache.org/log4j/2.x/migrate-from-log4j1.html"},{"url":"https://logging.apache.org/security.html#CVE-2026-34479"},{"url":"http://www.openwall.com/lists/oss-security/2026/04/10/8"},{"url":"https://github.com/advisories/GHSA-h383-gmxw-35v2"}],"tags":["ghsa","maven"],"epss":0.00535,"epssPercentile":0.44924,"ingestedAt":"2026-10-26T15:29:30.490Z","slug":"CVE-2026-34479","body":"## Overview\n\nThe `Log4j1XmlLayout` from the Apache Log4j 1-to-Log4j 2 bridge fails to escape characters forbidden by the XML 1.0 standard, producing malformed XML output. Conforming XML parsers are required to reject documents containing such characters with a fatal error, which may cause downstream log processing systems to drop or fail to index affected records.\n\nTwo groups of users are affected:\n\n* Those using `Log4j1XmlLayout` directly in a Log4j Core 2 configuration file.\n* Those using the Log4j 1 configuration compatibility layer with `org.apache.log4j.xml.XMLLayout` specified as the layout class.\n\nUsers are advised to upgrade to Apache Log4j 1-to-Log4j 2 bridge version `2.25.4`, which corrects this issue.\n\n> [!NOTE]\n> The Apache Log4j 1-to-Log4j 2 bridge is deprecated and will not be present in Log4j 3. Users are encouraged to consult the\n> [Log4j 1 to Log4j 2 migration guide](https://logging.apache.org/log4j/2.x/migrate-from-log4j1.html), and specifically the section on eliminating reliance on the bridge.\n\n## Affected packages\n\n- `org.apache.logging.log4j:log4j-core >= 2.7, < 2.25.4`\n- `org.apache.logging.log4j:log4j-core >= 3.0.0-beta1, <= 3.0.0-beta2`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `org.apache.logging.log4j:log4j-core 2.25.4`","depth":"sunlit","depthScore":28,"depthScoreParts":{"impact":27.5,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}