// For flags

CVE-2018-10184

haproxy: Heap buffer overflow in mux_h2.c:h2_process_demux() can allow attackers to cause a denial of service

Severity Score

7.5
*CVSS v3

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

An issue was discovered in HAProxy before 1.8.8. The incoming H2 frame length was checked against the max_frame_size setting instead of being checked against the bufsize. The max_frame_size only applies to outgoing traffic and not to incoming, so if a large enough frame size is advertised in the SETTINGS frame, a wrapped frame will be defragmented into a temporary allocated buffer where the second fragment may overflow the heap by up to 16 kB. It is very unlikely that this can be exploited for code execution given that buffers are very short lived and their addresses not realistically predictable in production, but the likelihood of an immediate crash is absolutely certain.

Se ha descubierto un problema en versiones anteriores a la 1.8.8 de HAProxy. La longitud del frame H2 entrante se comprobó con la opción max_frame_size en lugar de con bufsize. max_frame_size solo aplica al tráfico saliente y no al entrante, por lo que si un tamaño de frame lo suficientemente grande se anuncia en el frame SETTINGS, un frame ajustado se desfragmentará en un búfer asignado temporalmente en el que el segundo fragmento podría desbordar la memoria dinámica (heap) hasta los 16 kB. Es muy improbable que esto pueda ser explotado para ejecutar código, teniendo en cuenta la corta duración de los búfers y que sus direcciones no son predecibles de forma realista en producción, pero la posibilidad de un cierre inesperado inmediato es totalmente certera.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
High
Attack Vector
Network
Attack Complexity
Low
Authentication
None
Confidentiality
None
Integrity
None
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2018-04-17 CVE Reserved
  • 2018-05-09 CVE Published
  • 2024-04-18 EPSS Updated
  • 2024-08-05 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer
  • CWE-122: Heap-based Buffer Overflow
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
< 1.8.8
Search vendor "Haproxy" for product "Haproxy" and version " < 1.8.8"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux
Search vendor "Redhat" for product "Enterprise Linux"
7.0
Search vendor "Redhat" for product "Enterprise Linux" and version "7.0"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux
Search vendor "Redhat" for product "Enterprise Linux"
7.3
Search vendor "Redhat" for product "Enterprise Linux" and version "7.3"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux
Search vendor "Redhat" for product "Enterprise Linux"
7.4
Search vendor "Redhat" for product "Enterprise Linux" and version "7.4"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux
Search vendor "Redhat" for product "Enterprise Linux"
7.5
Search vendor "Redhat" for product "Enterprise Linux" and version "7.5"
-
Affected