Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessInject NUL byte into attacker-controlled input
-
ExploitData rendered by EventLogAppender into event text
-
ExecutionReportEventW truncates stored record at NUL
-
ImpactTrailing exception/audit fields silently dropped
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Metacharacter neutralization
|
| Exploitation Conditions | Requires a Windows application running log4net 1.2.9 to before 3.5.0 AND configured to use EventLogAppender; applications on non-Windows platforms or using any other appender are not affected. The attacker must be able to get attacker-controlled data containing a NUL (\0) character into a value that the configured layout renders into the event text. Limiting factors: impact is confined to silently truncating/hiding the remainder of that single Windows Event Log record (exception text and trailing fields) - there is no code execution, confidentiality loss, or availability impact, and no error is raised, so the effect is log/audit suppression rather than system compromise. |
| Impact | This is a genuinely medium/low-priority issue, not a high-urgency flaw despite the AV:N network vector. The provided CVSS is 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N), with the only impact being low integrity (C:N/A:N) - specifically log-record integrity, i.e. an anti-forensics/log-tampering weakness (CWE-158), not data theft, privilege escalation, or code execution. No EPSS score, CISA KEV listing, or SSVC decision data was supplied, and there is no public exploit identified at time of analysis - the referenced GitHub commit and unit tests are the vendor fix, not weaponized exploit code, and must not be conflated with exploitation. The AV:N rating reflects that attacker-controlled input can traverse the network to eventually land in a logged field, but real exploitation also depends on narrow deployment conditions (Windows-only, EventLogAppender configured) and only lets an attacker silently truncate the tail of one Event Log entry. Note a nuance: the 'Information Disclosure' tag mischaracterizes the effect - the flaw HIDES data from the log rather than disclosing it to the attacker, so the practical risk is evidence suppression/audit evasion by an already-active attacker, not confidentiality loss. Net: treat as a defense-in-depth/log-integrity fix to schedule, not an emergency. |
| Exploit ScenarioDerived | An attacker who can influence any value that log4net renders into a Windows Event Log entry (for example a username, HTTP header, or search term) embeds a NUL (\0) byte in that value. Because ReportEventW treats the string as null-terminated, everything the layout renders after the NUL - including exception text and trailing audit fields - is silently dropped from the stored record, letting the attacker conceal evidence of their activity. No public exploit code is identified at time of analysis; the attack requires only the ability to get crafted data into a logged message on an affected Windows deployment. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 06, 2026
Log-record truncation in Apache log4net's EventLogAppender silently drops everything a layout renders after a NUL (\0) character, so a party whose data reaches a log message can hide the remainder of that Windows Event Log record - including exception text and trailing fields - with no error raised. The flaw (CWE-158, CVSS 5.3, AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N) affects Apache log4net from 1.2.9 before 3.5.0 and only Windows applications configured to use EventLogAppender; non-Windows hosts and any other appender are unaffected. Impact is limited to integrity of a single log entry (no code execution, confidentiality or availability loss), and no public exploit code was identified at time of analysis - this is a medium/low-priority log-suppression issue rather than an urgent compromise vector. The upstream fix escapes NUL characters before the message-size limit is applied and is shipped in log4net 3.5.0.
RemediationAI
Vendor-released patch: upgrade Apache log4net to 3.5.0, which escapes NUL characters before applying the event-log message size limit; the fix is tracked in the Apache advisory thread (https://lists.apache.org/thread.html/9fx1qo5hc0tg8ym0t6p9gt1zpb2qlxpq) and in commit dc5855a0720c91590fd7a81d729ea01fdd69e000 / pull request apache/logging-log4net#315. If the upgrade cannot be deployed immediately, the highest-fidelity compensating control is to remove or replace NUL bytes from the rendered event text before it reaches EventLogAppender - for example a custom layout/converter or a sanitizing wrapper appender that substitutes \0 for the raw byte - but such a shim must be applied before any truncation to the maximum message size, since escaping doubles each NUL and post-truncation escaping can push a near-limit record back over the cap that 3.5.0 handles correctly. A coarser alternative is to stop using EventLogAppender on affected Windows hosts and route logs to a file or shipper-based appender, accepting that this changes the log destination and can break existing Event Log-based collection, forwarding, and alerting. Sanitizing attacker-controlled input fields upstream wherever they feed into log messages reduces the exposure but does not fix the appender itself, and because WriteEntry raises no error when truncation occurs, defenders should not rely on exceptions or failure signals to detect exploitation - monitor for anomalously short or abruptly terminated Windows Event Log records from affected applications.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-158, improper neutralization of a null byte/NUL character - an in-band special-character injection class in which a delimiter meaningful to a downstream consumer is accepted verbatim from data. Apache log4net's EventLogAppender renders the logging event to a string via the configured layout and passes it to the Win32 Event Log API, whose WriteEntry ultimately calls ReportEventW; that API takes a null-terminated LPWSTR, so any embedded NUL terminates the stored record at that offset. The appender's prior code rendered the event, truncated it to the configured maximum event-log message size (~32K characters), and wrote it with no sanitization, so a NUL planted by any party whose data is rendered into the message caused the tail of the record to be silently discarded rather than written. The upstream commit (dc5855a0720c91590fd7a81d729ea01fdd69e000, PR apache/logging-log4net#315) introduces a private PrepareEventText helper that calls NativeStringEscape.EscapeNulCharacters first and only then applies the size limit - order is significant because escaping doubles each NUL and escaping after truncation could push a near-limit message back over the cap. New unit tests in EventLogAppenderTest.cs assert NULs are escaped, that escaping precedes the limit, and that NUL-free messages pass through unchanged; the changelog records a measured case on Windows 11 build 26200 where a 45-character message with a NUL at offset 23 stored only the 23-character prefix.
Know when Log4Net gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Attacker-controlled data reaching a logged message needs no privileges or interaction (AV:N/PR:N/UI:N/AC:L); only log-record integrity is affected (I:L), with no confidentiality or availability impact.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
Lifecycle Timeline
2DescriptionCVE.org
Improper Neutralization of Null Byte or NUL Character vulnerability in the EventLogAppender of Apache log4net.
A NUL character in logged content ended the Windows Event Log record at that point, so everything the layout rendered after it, including exception text and trailing fields, was silently not stored. A party whose data reaches a log message could hide the rest of that record. Only applications on Windows that use EventLogAppender are affected.
This issue affects Apache log4net: from 1.2.9 before 3.5.0.
Users are recommended to upgrade to version 3.5.0, which fixes the issue.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Log-integrity tampering in the RemoteSyslogAppender of Apache log4net affects versions from 1.2.12 up to but not includi
Log-record suppression in the %aspnet-request pattern converter of Apache log4net lets an unauthenticated remote sender
Improper handling of Unicode encoding in Apache log4net's SmtpPickupDirAppender lets an attacker who can place unencodab
Silent suppression of Windows event-log records in Apache log4net's EventLogAppender lets a party that can influence log
A NUL character (U+0000) embedded in content that reaches a log message causes Apache log4net's OutputDebugStringAppende
EUVD-2026-93863
GHSA-wf3f-44xg-jxj3
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB