NGINX Plus
CVE-2026-48142
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify NGINX instance with dual-charset location block configured
-
DeliverySend crafted HTTP request to targeted location endpoint
-
ExploitAwait response with content meeting over-read trigger conditions
-
ExecutionHeap buffer over-read fires in ngx_http_charset_module worker
-
ImpactLeak adjacent heap memory fragments or crash NGINX worker process
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an NGINX location block explicitly configured with BOTH source_charset utf-8; AND a charset directive specifying a different target encoding (such as charset koi8-r;) simultaneously in the same block - this dual-directive combination is not present in default NGINX configurations and must be deliberately deployed. Beyond configuration, the CVE description states exploitation also depends on 'conditions beyond the attacker's control,' meaning specific content characteristics in the response body served or proxied through that location must be present at the time of the request; the attacker cannot independently guarantee these conditions from a remote position. What limits exploitation: the non-default dual-charset configuration is the primary gating factor, meaning the vast majority of NGINX deployments have zero exposure; the content-dependent triggering condition further reduces reliable exploitability; and the CVSS AC:H metric formalizes these stacked prerequisites. Impact is bounded to partial heap memory disclosure or a worker process restart, with no code execution or integrity impact. |
| Impact | The CVSS 4.8 score with vector AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L accurately characterizes a moderate, conditionally constrained risk. AC:H is well-justified by two stacked prerequisites: first, the target location block must be explicitly configured with both source_charset and a differing charset directive - not a default NGINX setting - and second, exploitation depends on content characteristics in the served or proxied response that the attacker cannot independently control. The limited impact metrics (C:L for partial heap memory leak, A:L for worker restart) confirm this is not a critical-severity issue. EPSS data was not provided in the available intelligence, preventing quantitative exploitation-probability assessment. No CISA KEV listing and no public POC indicate no confirmed active or mass exploitation at time of analysis. Real-world priority is low-to-moderate: organizations not using dual-charset configuration have zero exposure, while those using the feature should patch per the F5 advisory. The CVSS score does not conflict with the description - the AC:H metric correctly captures the dual-condition dependency described by the vendor. |
| Exploit ScenarioDerived | An attacker identifies or infers an NGINX endpoint whose location block is configured with both source_charset utf-8 and a differing charset directive, then sends HTTP requests designed to elicit responses whose body content contains specific byte sequences that drive the charset conversion logic past the heap buffer boundary. Success additionally depends on the proxied or served content meeting specific structural conditions at the moment of request - a factor outside the attacker's direct control - meaning repeated requests against suitable endpoints increase the probability of triggering the over-read. A successful trigger either leaks a small quantity of adjacent heap memory from the NGINX worker (potentially exposing fragments of other in-flight request data) or causes the worker to crash and automatically restart, resulting in a brief disruption to request handling; no public POC exists at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 17, 2026
Heap buffer over-read in NGINX Plus and NGINX Open Source's ngx_http_charset_module exposes limited worker process memory or triggers a worker restart when remote unauthenticated attackers send crafted requests against a non-default charset conversion configuration. Exploitation requires both a specific dual-directive configuration (source_charset utf-8 alongside a differing charset directive such as koi8-r in the same location block) and content-dependent conditions outside the attacker's direct control, reflected in the CVSS AC:H rating. No public exploit code exists and this CVE does not appear in the CISA KEV catalog; the vendor F5 has published advisory K000161585 with patched version guidance.
RemediationAI
Consult F5 advisory K000161585 at https://my.f5.com/manage/s/article/K000161585 for exact patched NGINX Plus and NGINX Open Source version numbers, which were not independently confirmed from the available intelligence. As an immediate compensating control, audit all NGINX location blocks and remove any co-occurrence of source_charset and a differing charset directive in the same block; eliminating this dual-directive combination entirely removes the vulnerable code path, though at the cost of disabling charset conversion for affected endpoints - a trade-off only acceptable if charset transcoding is non-functional for those routes. If charset conversion is a required feature and patching is delayed, restrict access to affected location blocks using NGINX's allow/deny directives or upstream network ACLs to reduce the attacker pool, accepting reduced availability in exchange for risk reduction. Do not rely on rate limiting alone as a mitigation, since a single well-timed request with suitable response content is sufficient to trigger the over-read.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The ngx_http_charset_module is a built-in NGINX module that performs on-the-fly character encoding conversion between declared source and target charsets for proxied or served response bodies. When a location block simultaneously declares source_charset utf-8 and a charset directive targeting a different encoding (e.g., koi8-r), the module walks multibyte UTF-8 sequences during conversion. CWE-125 (Out-of-bounds Read) identifies the root cause: the conversion logic reads beyond the boundary of its heap-allocated buffer, likely due to insufficient length validation when iterating over variable-width UTF-8 code points. CPE data confirms both F5's commercial offering (cpe:2.3:a:f5:nginx_plus) and the community distribution (cpe:2.3:a:f5:nginx_open_source) are affected, with wildcard version ranges indicating all supported releases are in scope. The vulnerability is isolated to the worker process, limiting blast radius to memory leakage or a graceful worker restart rather than full process compromise.
Know when Nginx Plus 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
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:L/SC:N/SI:N/SA:N
AV:N for network-delivered HTTP requests; AC:H for dual stacked prerequisites (non-default config plus content-dependent conditions); C:L and A:L for partial heap leak and worker restart only.
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L
Primary rating from Vendor (f5).
CVSS VectorVendor: f5
Lifecycle Timeline
1DescriptionCVE.org
NGINX Plus and NGINX Open Source have a vulnerability in the ngx_http_charset_module module. When content is served or proxied through a location block with both source_charset utf-8; and a charset directive (for example, charset koi8-r;) configured, remote, unauthenticated attackers can send requests (in conjunction with conditions beyond their control) to cause a heap buffer over-read in the NGINX worker process, leading to limited disclosure of memory or a restart.
Note: Software versions which have reached End of Technical Support (EoTS) are not evaluated.
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
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)CVE.org
More in Nginx Plus
View allDenial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Heap buffer overflow in NGINX Plus and NGINX Open Source ngx_http_rewrite_module allows remote attackers to crash worker
Heap-based buffer overflow in NGINX Plus and NGINX Open Source affects deployments that proxy HTTP/2 or gRPC traffic ups
Heap buffer overflow in NGINX Plus and NGINX Open Source ngx_http_rewrite_module can be triggered by unauthenticated rem
Heap buffer overflow in NGINX Plus and NGINX Open Source lets unauthenticated remote attackers crash worker processes (D
Heap buffer overflow in NGINX Plus and NGINX Open Source can be triggered by crafted HTTP requests when a non-default ma
Heap buffer overflow in NGINX Plus and NGINX Open Source can be triggered by unauthenticated remote attackers through cr
Unauthenticated remote attackers can trigger a use-after-free in NGINX's ngx_http_core_module when asynchronous file I/O
Limited memory disclosure and worker-process restart in NGINX Plus and NGINX Open Source arise when the optional ngx_htt
Buffer overflow in NGINX's DAV module allows remote attackers to crash worker processes or manipulate file names outside
NGINX worker process crashes via null pointer dereference in the mail authentication module when CRAM-MD5 or APOP authen
When the NGINX Plus is configured to use the MQTT pre-read module, undisclosed requests can cause an increase in memory
Same weakness CWE-125 – Out-of-bounds Read
View allSame technique Buffer Overflow
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| openSUSE Tumbleweed | Fixed |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Manager Proxy 4.3 | Affected |
| SUSE Manager Proxy LTS 4.3 | Affected |
| SUSE Manager Retail Branch Server 4.3 | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Affected |
| SUSE Manager Server 4.3 | Affected |
| SUSE Manager Server LTS 4.3 | Affected |
| SUSE CaaS Platform 4.0 | Affected |
| SUSE Enterprise Storage 6 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Manager Proxy 4.0 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Affected |
| SUSE Manager Retail Branch Server 4.0 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Affected |
| SUSE Manager Server 4.0 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
| private-registry/1.2/harbor-portal private-registry/harbor-nginx private-registry/harbor-portal suse/nginx suse/rmt-nginx | Affected |
NVD
CVE.org
EPSS
Vulnrichment
VulDB
GitHub PoC
Exploit-DB