Libevent: Dangling Pointer in `evbuffer_add_buffer_reference`
13Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 5.8epss 0.1%
exploitation probability
0.1%top 98% of all CVEs
observed exploitation
nono source reports it
Libevent is an event notification library. Prior to 2.1.13 and 2.2.2-alpha, libevent has a use-after-free in buffer.c when evbuffer_add_buffer_reference processes an output buffer whose out_total_len is zero. evbuffer_free_all_chains frees the initial empty chain without resetting outbuf->first, outbuf->last, or outbuf->last_with_datap, and APPEND_CHAIN_MULTICAST subsequently dereferences the dangling chain pointer. A caller that can drive this buffer state can cause memory corruption or a process crash. This issue is fixed in versions 2.1.13 and 2.2.2-alpha.
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N
Affected products
libevent · libeventReferences
https://github.com/libevent/libevent/commit/5cb95ba2f804f8aff46f88d58391c71e1251cd1chttps://github.com/libevent/libevent/commit/9db091b04f569be3a700fa9860ef02f90b830af9https://github.com/libevent/libevent/releases/tag/release-2.1.13-stablehttps://github.com/libevent/libevent/releases/tag/release-2.2.2-alphahttps://github.com/libevent/libevent/security/advisories/GHSA-c2pj-cg4r-88c8