CVE-2018-10184

NameCVE-2018-10184
DescriptionAn 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
haproxy (PTS)buster1.8.19-1+deb10u3fixed
buster (security)1.8.19-1+deb10u5fixed
bullseye (security), bullseye2.2.9-2+deb11u6fixed
bookworm, bookworm (security)2.6.12-1+deb12u1fixed
trixie2.9.5-1fixed
sid2.9.7-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
haproxysourcewheezy(not affected)
haproxysourcejessie(not affected)
haproxysourcestretch(not affected)
haproxysource(unstable)1.8.8-1

Notes

[stretch] - haproxy <not-affected> (Vulnerable code introduced later with HTTP/2 support)
[jessie] - haproxy <not-affected> (Vulnerable code introduced later with HTTP/2 support)
[wheezy] - haproxy <not-affected> (Vulnerable code introduced later with HTTP/2 support)
http://git.haproxy.org/?p=haproxy.git;a=commit;h=3f0e1ec70173593f4c2b3681b26c04a4ed5fc588
http://git.haproxy.org/?p=haproxy-1.8.git;a=commit;h=cd117685f0cff4f2f5577ef6a21eaae96ebd9f28

Search for package or bug name: Reporting problems