CVE-2026-28898 in swift-nio-http2info

Summary

by MITRE • 06/25/2026

swift-nio-http2's HTTP/2-to-HTTP/1.1 codec did not validate pseudo-header values for control characters before placing them into the translated HTTP/1.1 message. swift-nio-http2 1.44.1 adds validation of all pseudo-header values (:path, :authority, :scheme, :method, and :status) at both the HPACK header validation layer and the HTTP/2-to-HTTP/1.1 translation layer. Requests or responses containing CR, LF, or NUL bytes in any pseudo-header value are now rejected with a connection error. This issue is fixed in swift-nio-http2 1.44.1.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 06/26/2026

The vulnerability identified in swift-nio-http2's HTTP/2-to-HTTP/1.1 codec represents a critical security flaw that emerged from inadequate input validation during protocol translation processes. This issue stems from the failure to properly sanitize pseudo-header values before they are incorporated into translated HTTP/1.1 messages, creating potential attack vectors through malformed header data. The problem specifically affected the handling of control characters including carriage return CR, line feed LF, and null NUL bytes within HTTP/2 pseudo-headers such as :path, :authority, :scheme, :method, and :status. These pseudo-headers serve as fundamental components in HTTP/2 communication protocols, defining essential request and response metadata that must be accurately preserved during protocol conversion.

The technical implementation flaw occurs at multiple layers within the swift-nio-http2 library architecture, specifically impacting both the HPACK header validation layer and the HTTP/2-to-HTTP/1.1 translation layer. This dual-layer vulnerability means that malicious actors could potentially inject control characters through carefully crafted HTTP/2 requests that would then be silently translated into malformed HTTP/1.1 messages without proper validation checks. The absence of validation at these critical protocol translation points creates a scenario where attackers can manipulate header values to introduce unexpected behavior in downstream systems, particularly those that process HTTP/1.1 messages expecting clean, properly formatted header data. This vulnerability directly aligns with CWE-704, which covers improper input validation during protocol translation or conversion processes.

The operational impact of this vulnerability extends beyond simple protocol corruption, as it creates potential pathways for various attack vectors including HTTP response splitting, header injection attacks, and application-level exploits that rely on predictable header behavior. Systems relying on swift-nio-http2 for HTTP/2 to HTTP/1.1 translation may become vulnerable to attackers who can manipulate pseudo-header values to inject malicious content or disrupt normal application flow. The connection error response introduced in version 1.44.1 represents a significant security enhancement that prevents the propagation of malformed header data through the system, thereby protecting downstream services from potential exploitation. This fix directly addresses ATT&CK technique T1071.004 related to application layer protocol manipulation and contributes to overall network security posture by preventing unauthorized header value injection.

The remediation implemented in swift-nio-http2 version 1.44.1 demonstrates a comprehensive approach to vulnerability mitigation that includes validation at both the HPACK header processing layer and the HTTP/2-to-HTTP/1.1 translation layer. This dual validation strategy ensures that pseudo-header values containing control characters are rejected before they can cause issues within the system, effectively closing the attack vector while maintaining protocol compatibility. The implementation follows industry best practices for input sanitization and protocol handling, ensuring that all pseudo-header values undergo proper validation regardless of their origin or processing stage within the library. This fix not only resolves the immediate security concern but also establishes a more robust framework for future protocol translation scenarios where similar vulnerabilities might exist.

Organizations utilizing swift-nio-http2 libraries must prioritize upgrading to version 1.44.1 or later to ensure protection against this vulnerability, as the presence of unvalidated pseudo-header values creates potential risks for systems that depend on proper HTTP protocol handling. The vulnerability highlights the critical importance of input validation during protocol translation processes, particularly in high-performance networking libraries where such issues can have cascading effects throughout complex network infrastructures. This security enhancement reinforces the principle that all data processing within protocol translation layers must maintain strict validation standards to prevent exploitation through malformed input data that could otherwise be silently accepted and processed.

Responsible

Apple

Reservation

03/03/2026

Disclosure

06/25/2026

Moderation

accepted

CPE

ready

EPSS

0.00192

KEV

no

Activities

low

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!