HAProxy: Improper Handling of Length Parameter Inconsistency (CVE-2026-90678)
Veröffentlicht Zuletzt geändert
Was ist betroffen, was ist zu tun
Ein Problem wurde in HAProxy-Versionen 3.3.0 bis 3.4.4 und in den Entwicklerversionen 3.5-dev1 bis 3.5-dev5 entdeckt. Ausnutzung erfordert eine HTTP/3-Frontend: HAProxy muss mit QUIC-Unterstützung gebaut und mit einem QUIC-Bindings-Listener konfiguriert sein, und der betroffene Verkehr muss über HTTP/1.1 mit chunked Transfer-Coding auf einer wiederverwendeten Verbindung zu einem Backend gelangen.
Aktualisieren Sie HAProxy auf Version 3.5-dev6.
- Betroffen
- HAProxy
lte 3.3.0..3.3.14 - HAProxy
lte 3.4.0..3.4.4 - HAProxy
lte 3.5-dev1..3.5-dev5
- HAProxy
Unklar, ob und wie Sie betroffen sind? Frage zu dieser Schwachstelle stellen
Metriken
7,5
Priorität
XIEM Effective CVSS: höchste verfügbare CVSS-Bewertung aus NVD- und Herstellerangaben.
Quelle: Hersteller (CNA), CVSS v3
7,5
CVSS v3
Schweregrad Hoch auf der Skala von 0 bis 10.
0,8 %
EPSS-Score
Niedrig — Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
Quelle: FIRST EPSS, Perzentil 54,8
Alle Metriken anzeigen
- Schweregrad
- Hoch
Priority-Score
Der Priorisierungs-Score ist eine zusammengeführte Kennzahl, die mehrere Einzelsignale zu einer einzigen, handlungsleitenden Rangfolge verdichtet: technische Schwere (CVSS), Ausnutzungswahrscheinlichkeit (EPSS), der Status als bekannt ausgenutzt (KEV) und der Kontext des betroffenen Assets. Ziel ist die Antwort auf die einzig wirklich wichtige Frage im Schwachstellenmanagement: Was zuerst?
Im Glossar lesen- 90.43
Exploit-Reife
Ein Exploit ist Code oder eine Technik, die eine konkrete Schwachstelle gezielt ausnutzt, um ein unbeabsichtigtes Verhalten zu erzwingen — etwa Code auszuführen oder Rechte auszuweiten. Er ist das Werkzeug, das aus einer theoretischen Lücke einen praktischen Angriff macht.
Im Glossar lesen- kein öffentlicher PoC bekannt
XIEM Effective CVSS
XIEM® ist das gestufte Managed-Security-Betriebsmodell von NEOSEC und eine eingetragene Marke der NEOSEC GmbH. Es erweitert klassisches SIEM — die zentrale Sammlung, Normalisierung und Korrelation sicherheitsrelevanter Ereignisse — um Endpunkt-Forensik, Netzwerk-Sichtbarkeit und Täuschungstechnik und führt diese zu drei aufeinander aufbauenden Stufen zusammen: Sentry, Orchestrate und Command.
Im Glossar lesen- 7,5
CVSS v3
CVSS ist der weltweit verbreitete, offene Standard zur Bewertung der technischen Schwere einer Schwachstelle auf einer Skala von 0 bis 10. Er beschreibt, wie leicht eine Lücke ausnutzbar ist und welchen Schaden sie anrichten kann — nicht jedoch, wie wahrscheinlich ihre tatsächliche Ausnutzung ist. CVSS und das ergänzende EPSS beantworten bewusst unterschiedliche Fragen.
Im Glossar lesen- 7,5
EPSS-Score
Der EPSS-Score ist der absolute Modell-Output für eine einzelne Schwachstelle: die geschätzte Wahrscheinlichkeit einer realen Ausnutzung in den nächsten 30 Tagen, ausgedrückt als Wert zwischen 0 und 1 (bzw. 0 % bis 100 %). Ein Score von 0,42 bedeutet „das Modell schätzt eine 42-prozentige Chance auf reale Ausnutzung binnen 30 Tagen“.
Im Glossar lesen- 0,8 %
- Niedrig — Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
EPSS-Perzentil
Das EPSS-Perzentil ist die relative Einordnung einer Schwachstelle innerhalb aller EPSS-bewerteten CVEs, ausgedrückt als Wert zwischen 0 und 1. Ein Perzentil von 0,90 bedeutet „diese CVE hat einen höheren EPSS-Score als 90 % aller anderen bewerteten CVEs“. Anders als der EPSS-Score ist es keine Wahrscheinlichkeit — sondern eine Positionierung im Ranking.
Im Glossar lesen- 54,8
- Hoch — CVE rangiert über dem Median aller heute bewerteten CVEs (Rang ≥ 36 %).
KEV-Status
Der KEV-Katalog ist eine von der US-Behörde CISA gepflegte Liste von Schwachstellen, für die eine aktive Ausnutzung in der Praxis nachgewiesen ist. Er beantwortet nicht die Frage „wie schwer?“, sondern „wird es bereits angegriffen?“ — und priorisiert damit das Patchen scharf.
Im Glossar lesen- —
- Veröffentlicht
CWE
CWE ist ein Katalog typischer Schwächen-Arten in Software und Hardware — etwa fehlerhafte Eingabevalidierung, unsichere Speicherbehandlung oder mangelhafte Authentisierung. Während eine CVE eine konkrete Schwachstelle in einem konkreten Produkt benennt, beschreibt eine CWE die zugrunde liegende Fehlerklasse.
Im Glossar lesen- CWE-130
Einordnung nach NIS2 und CRA
Regelbasierte Einordnung aus Ausnutzungsstatus und Schweregrad. Sie ersetzt keine Prüfung im Einzelfall.
NIS2
NIS2 ist die EU-Richtlinie (EU) 2022/2555 zur Erhöhung des Cybersicherheitsniveaus in der Union. Sie weitet Pflichten gegenüber der ersten NIS-Richtlinie deutlich aus: mehr Sektoren, verbindliches Risikomanagement, gestufte Meldepflichten und persönliche Verantwortung der Geschäftsleitung.
Im Glossar lesen- Hohe technische Schwere: Bewerten und beheben Sie die Schwachstelle im Schwachstellenmanagement nach Art. 21 Abs. 2 lit. e NIS2 und dokumentieren Sie die Entscheidung.
CRA
Der CRA ist die EU-Verordnung (EU) 2024/2847 mit horizontalen Cybersicherheitsanforderungen an „Produkte mit digitalen Elementen“ — von Industriesteuerungen über Software bis zu vernetzten Verbrauchergeräten. Erstmals müssen Hersteller Sicherheit über den gesamten Produktlebenszyklus gewährleisten, Schwachstellen behandeln und Sicherheitsupdates bereitstellen.
Im Glossar lesen- Ab dem 11.12.2027 verpflichtet Anhang I Teil II CRA Hersteller betroffener Produkte mit digitalen Elementen, Schwachstellen unverzüglich zu behandeln und Sicherheitsupdates bereitzustellen.
ISO/IEC 27001
ISO/IEC 27001 ist der international führende Standard für ein Informationssicherheits-Managementsystem (ISMS). Er beschreibt einen risikobasierten, prozessorientierten Rahmen, um Informationssicherheit systematisch zu planen, umzusetzen, zu überprüfen und zu verbessern.
Im Glossar lesen- Maßnahme A.8.8, Management technischer Schwachstellen: Relevanz für Ihre Systeme bewerten, Behebung einplanen und nachweisen.
Beschreibung
Ein Problem wurde in HAProxy-Versionen 3.3.0 bis 3.4.4 und in den Entwicklerversionen 3.5-dev1 bis 3.5-dev5 entdeckt. Ausnutzung erfordert eine HTTP/3-Frontend: HAProxy muss mit QUIC-Unterstützung gebaut und mit einem QUIC-Bindings-Listener konfiguriert sein, und der betroffene Verkehr muss über HTTP/1.1 mit chunked Transfer-Coding auf einer wiederverwendeten Verbindung zu einem Backend gelangen. Unter diesen Bedingungen wird bei einem HTTP/3-Anfrage, die keinen Content-Length-Header enthält, die Länge, die in einem DATA-Frames-Header deklariert ist, dem bekannten Eingabepayload-Schätzwert des Streamendpunkts gutgeschrieben, sobald der Frames-Header dekodiert wird, bevor der Payload empfangen wurde. Diese deklarierte Länge wird wörtlich als HTTP/1.1-Chunks-Größe ausgegeben. Ein entfernter unauthentifizierter Client, der mehr Payload deklariert, als er liefert und dann den Stream beendet, veranlasst HAProxy dazu, einen größeren Chunk anzukündigen, als die Bytes, die es schreibt, und die Verbindung in einem desynchronisierten Zustand zurück zum Leerlaufpool zu geben. Das Ergebnis ist potenzielle HTTP-Anfrage-Schmuggel auf wiederverwendeten Backend-Verbindungen: ein Angreifer kann eine Anfrage hinter einer Frontend-Regel wie einer pfadbasierten http-request deny platzieren, so dass die geschmuggelte Anfrage nie von der HTTP-Analyse von HAProxy gesehen wird und dazu führen kann, dass gleichzeitige Clients' Anfragen, einschließlich ihrer Anfragezeilen und Authorization-Header, als Körper der Angreiferanfrage verbraucht und verloren gehen. Die Ausnutzung ist nicht deterministisch; sie hängt von einem Rennen mit dem Backend-Verbindungspooling ab, hat in einer Mehrheit, aber nicht allen Versuchen während des Tests Erfolg und kann frei wiederholt werden. Der Mechanismus wurde in 3.3-dev10 eingeführt; Versionen 3.2.x und früher sind davon unberührt.
Originalquelle nur englisch verfügbar, maschinell ins Deutsche übersetzt.
Quelle: BSI WID Portal
Betroffene Produkte
Betroffen sind die folgenden Versionen. Ältere Stände derselben Reihe sind ebenfalls verwundbar, sofern nicht anders angegeben.
| Hersteller | Produkt | Betroffene Versionen | Behoben in |
|---|---|---|---|
| HAProxy | HAProxy |
|
|
Weakness-Klassen (CWE)
CWE-130Improper Handling of Length Parameter Inconsistency
Base
The product parses a formatted message or structure, but it does not handle or incorrectly handles a length field that is inconsistent with the actual length of the associated data.
Eintrag bei MITRE CWE-130
Quellen & Referenzen
- github.comBUG/MAJOR: h3: reject H3 truncated framesPatch
- git.haproxy.org?p=haproxy.git;a=commit;h=86a4ebc761a278838e8cb06f3a292282ba704…Patch
- haproxy.orgHAProxy 3.5-dev6 ChangeLogRelease Notes
Re-Analyse & Statuswechsel
Chronologie der NVD-Audit-Events für diese CVE — Reanalyses, CVSS-Updates, CPE-Diffs.
CVE Modified134c704f-9b21-4f2e-91b3-4a467353bcc0
- SSVC: nachher {"id":"CVE-2026-90678","role":"CISA Coordinator","options":[{"exploitation":"none"},{"automatable":"no"},{"technicalI…
New CVE Receivedcve@mitre.org
- Description: nachher An issue was discovered in HAProxy 3.3.0 through 3.4.4 and in 3.5-dev1 through 3.5-dev5. Exploitation requires an HTTP/3 frontend: HAProxy must be built with QUIC support and configured with a QUIC bind listener, and the affected traffic must reach a backend over HTTP/1.1 using chunked transfer coding on a reused connection. Under those conditions, when an HTTP/3 request carries no Content-Length header, the HTTP/3 multiplexer credits the length declared in a DATA frame header to the stream endpoint's known-input-payload estimate at the moment the frame header is decoded, before the payload has been received, and that declared length is emitted verbatim as the HTTP/1.1 chunk size. A remote unauthenticated client that declares more payload than it delivers and then ends the stream causes HAProxy to announce a chunk larger than the bytes it writes and to return the connection to the idle pool in a desynchronized state. The result is potential HTTP request smuggling on reused backend connections: an attacker can place a request past a frontend rule such as a path-based http-request deny, so that the smuggled request is never seen by HAProxy's HTTP analysis, and can cause concurrent clients' requests, including their request lines and Authorization headers, to be consumed as the attacker's request body and lost. Exploitation is not deterministic; it depends on a race with backend connection pooling, succeeding in a majority of but not all trials during testing, and can be retried freely. The mechanism was introduced in 3.3-dev10; releases 3.2.x and earlier are unaffected.
- CVSS V3.1: nachher AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:L
- CWE: nachher CWE-130
- Affected: nachher New affected value received. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/90xxx/CVE-2026-90678.json">CVE-2026-90678</a>
Verknüpfte CVEs
| Schwere | CVE | Titel | CVSS | Ausnutzung |
|---|---|---|---|---|
| Hoch | CVE-2026-90678 | HAProxy: fehlerhafte Behandlung inkonsistenter Längenangaben | 7,5 | — |