CyberSecBulletin

Inconsistent Interpretation of HTTP Requests

CWE-444

The product acts as an intermediary HTTP agent (such as a proxy or firewall) in the data flow between two entities such as a client and server, but it does not interpret malformed HTTP requests or responses in ways that are consistent with how the messages will be processed by those entities that are at the ultimate destination.

HTTP requests or responses (messages) can be malformed or unexpected in ways that cause web servers or clients to interpret the messages in different ways than intermediary HTTP agents such as load balancers, reverse proxies, web caching proxies, application firewalls, etc. For example, an adversary may be able to add duplicate or different header fields that a client or server might interpret as one set of messages, whereas the intermediary might interpret the same sequence of bytes as a different set of messages. For example, discrepancies can arise in how to handle duplicate headers like two Transfer-encoding (TE) or two Content-length (CL), or the malicious HTTP message will have different headers for TE and CL. The inconsistent parsing and interpretation of messages can allow the adversary to smuggle a message to the client/server without the intermediary being aware of it. This weakness is usually the result of the usage of outdated or incompatible HTTP protocol versions in the HTTP agents.

We track 174 vulnerabilities of this type. 99% are rated high or critical, and the average CVSS score is 8.4. 5 have been exploited in real attacks.

How this weakness is prevented

  • Implementation: Use a web server that employs a strict HTTP parsing procedure, such as Apache.
  • Implementation: Terminate the client session after each request.

Latest Inconsistent Interpretation of HTTP Requests vulnerabilities

  • 7.5 High severity

    Dproxy-nexgen: Inconsistent Interpretation of HTTP Requests

    CVE-2022-33988Dproxy-nexgen ProjectEPSS 1.23%

    dproxy-nexgen (aka dproxy nexgen) re-uses the DNS transaction id (TXID) value from client queries, which allows attackers (able to send queries to the resolver) to conduct DNS cache-poisoning attacks because the TXID value is known to the attacker.

  • 7.5 High severity

    Apache Traffic Server: Inconsistent Interpretation of HTTP Requests

    CVE-2022-25763ApacheEPSS 2.09%

    Improper Input Validation vulnerability in HTTP/2 request validation of Apache Traffic Server allows an attacker to create smuggle or cache poison attacks. This issue affects Apache Traffic Server 8.0.0 to 9.1.2.

  • 7.5 High severity

    Apache HTTP Server: Inconsistent Interpretation of HTTP Requests

    CVE-2022-26377ApacheEPSS 21.1%

    Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server allows an attacker to smuggle requests to the AJP server it forwards requests to. This issue affects Apache HTTP Server Apache HTTP Ser

  • 9.8 Critical severity

    Werkzeug: Inconsistent Interpretation of HTTP Requests

    CVE-2022-29361PalletsprojectsEPSS 8.07%

    Improper parsing of HTTP requests in Pallets Werkzeug v2.1.0 and below allows attackers to perform HTTP Request Smuggling using a crafted HTTP request with multiple requests included inside the body. NOTE: the vendor's position is that this behavior can only o

  • 8.1 High severity

    twisted: Inconsistent Interpretation of HTTP Requests

    CVE-2022-24801TwistedEPSS 2.8%

    Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to version 22.4.0rc1, the Twisted Web HTTP 1.1 server, located in the `twisted.web.http` module, parsed several HTTP request constructs more leniently than permitted b

  • 7.5 High severity

    puma: Inconsistent Interpretation of HTTP Requests

    CVE-2022-24790PumaEPSS 2.19%

    Puma is a simple, fast, multi-threaded, parallel HTTP 1.1 server for Ruby/Rack applications. When using Puma behind a proxy that does not properly validate that the incoming HTTP request matches the RFC7230 standard, Puma and the frontend proxy may disagree on

  • 9.8 Critical severity

    mitmproxy: Inconsistent Interpretation of HTTP Requests

    CVE-2022-24766MitmproxyEPSS 1.63%

    mitmproxy is an interactive, SSL/TLS-capable intercepting proxy. In mitmproxy 7.0.4 and below, a malicious client or server is able to perform HTTP request smuggling attacks through mitmproxy. This means that a malicious client/server could smuggle a request/r

  • 7.5 High severity

    waitress: Inconsistent Interpretation of HTTP Requests

    CVE-2022-24761PylonsEPSS 1.78%

    Waitress is a Web Server Gateway Interface server for Python 2 and 3. When using Waitress versions 2.1.0 and prior behind a proxy that does not properly validate the incoming HTTP request matches the RFC7230 standard, Waitress and the frontend proxy may disagr

  • 9.8 Critical severity

    Apache HTTP Server: Inconsistent Interpretation of HTTP Requests

    CVE-2022-22720ApacheEPSS 28.2%

    Apache HTTP Server 2.4.52 and earlier fails to close inbound connection when errors are encountered discarding the request body, exposing the server to HTTP Request Smuggling

  • 10.0 Critical severity

    SAP Multiple Products HTTP Request Smuggling Exploited

    CVE-2022-22536SAPEPSS 97.9%

    SAP NetWeaver Application Server ABAP, SAP NetWeaver Application Server Java, ABAP Platform, SAP Content Server 7.53 and SAP Web Dispatcher are vulnerable for request smuggling and request concatenation. An unauthenticated attacker can prepend a victim's reque

  • 9.8 Critical severity

    SAP NetWeaver Application Server Java: Inconsistent Interpretation of HTTP Requests

    CVE-2022-22532SAPEPSS 2.06%

    In SAP NetWeaver Application Server Java - versions KRNL64NUC 7.22, 7.22EXT, 7.49, KRNL64UC, 7.22, 7.22EXT, 7.49, 7.53, KERNEL 7.22, 7.49, 7.53, an unauthenticated attacker could submit a crafted HTTP server request which triggers improper shared memory buffer

  • 9.1 Critical severity

    Varnich Cache: Inconsistent Interpretation of HTTP Requests

    CVE-2022-23959Varnish-softwareEPSS 2.01%

    In Varnish Cache before 6.6.2 and 7.x before 7.0.2, Varnish Cache 6.0 LTS before 6.0.10, and and Varnish Enterprise (Cache Plus) 4.1.x before 4.1.11r6 and 6.0.x before 6.0.9r4, request smuggling can occur for HTTP/1 connections.

  • 7.4 High severity

    Umbraco CMS: Inconsistent Interpretation of HTTP Requests

    CVE-2022-22691UmbracoEPSS 1.05%

    The password reset component deployed within Umbraco uses the hostname supplied within the request host header when building a password reset URL. It may be possible to manipulate the URL sent to Umbraco users when so that it points to the attackers server the

  • 7.5 High severity

    Umbraco CMS: Inconsistent Interpretation of HTTP Requests

    CVE-2022-22690UmbracoEPSS 1.18%

    Within the Umbraco CMS, a configuration element named "UmbracoApplicationUrl" (or just "ApplicationUrl") is used whenever application code needs to build a URL pointing back to the site. For example, when a user resets their password and the application builds