Multidict is an implementation of a multidict data structure. From 6.7.0 until 6.9.1, the C extension's items-view reflected union operation, operand | d.items(), in multidict_itemsview_or2_impl and subtraction operation, d.items() - operand, in multidict_itemsview_sub1_impl fail to release new key-identity and value references returned for each operand element. Applications that perform these operations over attacker-influenced sequences can leak two strong references per element, and garbage collection cannot reclaim them, so repeated operations can cause unbounded process memory growth and denial of service. Forward union, intersection, non-tuple operand elements, and pure-Python builds are not affected by this reference leak. This issue is fixed in version 6.9.1.
PUBLISHED5.2CWE-401
Multidict: Reference leak in CIMultiDict/MultiDict items-view union and subtraction
Problem type
Affected products
aio-libs
multidict
>= 6.7.0, < 6.9.1 - AFFECTED
References
https://github.com/aio-libs/multidict/security/advisories/GHSA-54p9-h82j-f925
https://github.com/aio-libs/multidict/security/advisories/GHSA-54p9-h82j-f925
https://github.com/aio-libs/multidict/commit/350b4a07bf8ff851b6d7544e81b1c748bdc74c40
https://github.com/aio-libs/multidict/commit/350b4a07bf8ff851b6d7544e81b1c748bdc74c40
https://github.com/aio-libs/multidict/releases/tag/v6.9.1
https://github.com/aio-libs/multidict/releases/tag/v6.9.1
JSON source
https://cveawg.mitre.org/api/cve/CVE-2026-104874Click to expand
{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2026-104874",
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"dateUpdated": "2026-10-02T20:21:50.903Z",
"dateReserved": "2026-10-02T14:59:11.775Z",
"datePublished": "2026-10-02T20:21:50.903Z",
"state": "PUBLISHED"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M",
"dateUpdated": "2026-10-02T20:21:50.903Z"
},
"title": "Multidict: Reference leak in CIMultiDict/MultiDict items-view union and subtraction",
"descriptions": [
{
"lang": "en",
"value": "Multidict is an implementation of a multidict data structure. From 6.7.0 until 6.9.1, the C extension's items-view reflected union operation, operand | d.items(), in multidict_itemsview_or2_impl and subtraction operation, d.items() - operand, in multidict_itemsview_sub1_impl fail to release new key-identity and value references returned for each operand element. Applications that perform these operations over attacker-influenced sequences can leak two strong references per element, and garbage collection cannot reclaim them, so repeated operations can cause unbounded process memory growth and denial of service. Forward union, intersection, non-tuple operand elements, and pure-Python builds are not affected by this reference leak. This issue is fixed in version 6.9.1."
}
],
"affected": [
{
"vendor": "aio-libs",
"product": "multidict",
"versions": [
{
"version": ">= 6.7.0, < 6.9.1",
"status": "affected"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"lang": "en",
"description": "CWE-401: Missing Release of Memory after Effective Lifetime",
"cweId": "CWE-401",
"type": "CWE"
}
]
}
],
"references": [
{
"url": "https://github.com/aio-libs/multidict/security/advisories/GHSA-54p9-h82j-f925",
"name": "https://github.com/aio-libs/multidict/security/advisories/GHSA-54p9-h82j-f925",
"tags": [
"x_refsource_CONFIRM"
]
},
{
"url": "https://github.com/aio-libs/multidict/commit/350b4a07bf8ff851b6d7544e81b1c748bdc74c40",
"name": "https://github.com/aio-libs/multidict/commit/350b4a07bf8ff851b6d7544e81b1c748bdc74c40",
"tags": [
"x_refsource_MISC"
]
},
{
"url": "https://github.com/aio-libs/multidict/releases/tag/v6.9.1",
"name": "https://github.com/aio-libs/multidict/releases/tag/v6.9.1",
"tags": [
"x_refsource_MISC"
]
}
],
"metrics": [
{
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "LOW",
"baseScore": 5.3,
"baseSeverity": "MEDIUM"
}
}
]
}
}
}