{"id":"CVE-2026-63495","summary":"Libevent: Unbounded memory accumulation in WebSocket server via fragmented frames","details":"Libevent is an event notification library. From 2.2.0-alpha-dev until 2.2.2-alpha, the libevent WebSocket server in ws.c accumulates fragmented frames in evws-\u003eincomplete_frames without enforcing a total message-size limit. An unauthenticated remote client can repeatedly send fragmented WebSocket frames below WS_MAX_RECV_FRAME_SZ with FIN=0, causing the evbuffer to grow without bound until the process or host exhausts memory. This issue is fixed in version 2.2.2-alpha.","aliases":["GHSA-qx89-wf2v-vgmx"],"modified":"2026-09-11T08:36:41.803269Z","published":"2026-08-20T17:49:16.790Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-400","CWE-770"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63495.json"},"references":[{"type":"WEB","url":"https://github.com/libevent/libevent/releases/tag/release-2.2.2-alpha"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63495.json"},{"type":"ADVISORY","url":"https://github.com/libevent/libevent/security/advisories/GHSA-qx89-wf2v-vgmx"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-63495"},{"type":"FIX","url":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/libevent/libevent","events":[{"introduced":"0"},{"fixed":"291c4d1cd75695e898030ebd5c4ddf26c094077b"},{"fixed":"df3ecad3a040fd6d4fad4287defe113395de6fd7"}],"database_specific":{"extracted_events":[{"introduced":"2.2.0-alpha-dev"},{"fixed":"2.2.2-alpha"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["release-2.2.1-alpha","release-2.1.8-stable","release-2.1.7-rc","release-2.1.6-beta","release-2.1.5-beta","release-2.1.4-alpha","release-2.1.3-alpha","release-2.1.2-alpha","release-2.1.1-alpha","release-2.0.10-stable","release-2.0.9-rc","release-2.0.8-rc","release-2.0.7-rc","release-2.0.6-rc","release-2.0.5-beta","release-2.0.4-alpha","release-2.0.3-alpha","release-2.0.1-alpha","release-1.1b"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-63495.json","vanir_signatures_modified":"2026-09-11T08:36:41Z","vanir_signatures":[{"deprecated":false,"digest":{"function_hash":"159443554126248192493229143747497657830","length":554},"id":"CVE-2026-63495-09212634","signature_type":"Function","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/df3ecad3a040fd6d4fad4287defe113395de6fd7","target":{"file":"test/regress_http.c","function":"http_check_transfer_encoding_test"}},{"deprecated":false,"digest":{"function_hash":"188120056506880376086750049002251785434","length":1386},"id":"CVE-2026-63495-3b68bf12","signature_type":"Function","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b","target":{"file":"ws.c","function":"ws_evhttp_read_cb"}},{"deprecated":false,"digest":{"line_hashes":["50437873747267768998112175640738590553"],"threshold":0.9},"id":"CVE-2026-63495-78118faf","signature_type":"Line","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b","target":{"file":"test/regress_ws.h"}},{"id":"CVE-2026-63495-923050c6","signature_type":"Line","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/df3ecad3a040fd6d4fad4287defe113395de6fd7","target":{"file":"test/regress_http.c"},"deprecated":false,"digest":{"line_hashes":["270762094980121927552802584929566056086","37564212311334647331345684303177453724","168570413533780985513641597969239978857"],"threshold":0.9}},{"source":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b","target":{"file":"ws.c"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["213468957481321018427226339738201995229","94052071169920407226466965572499839434","293650369375682398843080197576400727158","273557378343965654741816879588973687272","292158460869730718186383847428846474869","93406804361334280252497270843918184452","108661498727320488960926574765871684184","291046983898527338590001165986199307722","74180845354623197386174362900048881375","255796710253738390582221454803461753735","188576087788289166576590438222291460809","168807233739357162498720331972768143901","207600381427595741830255346604664467258","235369532291502617228627665735402136208","108464447236079641028737707808497271921"]},"id":"CVE-2026-63495-b361bd62","signature_type":"Line","signature_version":"v1"},{"id":"CVE-2026-63495-e383c8d6","signature_type":"Line","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b","target":{"file":"test/regress_http.c"},"deprecated":false,"digest":{"line_hashes":["255720742834150715684446135857577237443","563026395104730391097027085878613080","146897314833166094280947973792563546303","13973253315252243435508545163209626635"],"threshold":0.9}},{"id":"CVE-2026-63495-f733113f","signature_type":"Line","signature_version":"v1","source":"https://github.com/libevent/libevent/commit/291c4d1cd75695e898030ebd5c4ddf26c094077b","target":{"file":"test/regress_ws.c"},"deprecated":false,"digest":{"line_hashes":["260656884574983575030341913268414381506","170696670264915260610700515454980687637","176831619544044539113308260994182047241","13053641496462031098704248428487494895","111159304149661281237091630351055523275","176056969511541946932879853168471392462","179656055477667516343552645209293180473"],"threshold":0.9}}]}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}