CVE-2022-50659
In the Linux kernel, the following vulnerability has been resolved:
hwrng: geode - Fix PCI device refcount leak
for_each_pci_dev() is implemented by pci_get_device(). The comment of pci_get_device() says that it will increase the reference count for the returned pci_dev and also decrease the reference count for the input pci_dev @from if it is not NULL.
If we break for_each_pci_dev() loop with pdev not NULL, we need to call pci_dev_put() to decrease the reference count. We add a new struct 'amd_geode_priv' to record pointer of the pci_dev and membase, and then add missing pci_dev_put() for the normal and error path.
CVSS
NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.28%
- Percentil entre todas las CVEs puntuadas: 18
- Fecha de la puntuación: 5/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Referencias
- https://git.kernel.org/stable/c/19b7b85773b18457ff85a9ff4f5e2a2d4bf7ed0c
- https://git.kernel.org/stable/c/5cc818ad53df650cac8fb41d9066665366af3f03
- https://git.kernel.org/stable/c/6b9e43c4098f1310f5b4d52121d007a219fa5d43
- https://git.kernel.org/stable/c/82bd423ed977847652b2048b0f8dcf049b1847a9
- https://git.kernel.org/stable/c/874f798c2db5ad595e46982d7f727a679dacb048
- https://git.kernel.org/stable/c/88f4ea623f59155280d99d1a59a968f838472c4a
- https://git.kernel.org/stable/c/9f6ec8dc574efb7f4f3d7ee9cd59ae307e78f445
- https://git.kernel.org/stable/c/aa96aff394a511cc7bb7df08d1b8504d4d97671e
- https://git.kernel.org/stable/c/e2f44baf62567c5cfbc274974c7d96dddad53ccc
JSON original (NVD)
Mostrar
{
"id": "CVE-2022-50659",
"cveTags": [],
"metrics": {},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "88f4ea623f59155280d99d1a59a968f838472c4a",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "e2f44baf62567c5cfbc274974c7d96dddad53ccc",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "6b9e43c4098f1310f5b4d52121d007a219fa5d43",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "5cc818ad53df650cac8fb41d9066665366af3f03",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "aa96aff394a511cc7bb7df08d1b8504d4d97671e",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "82bd423ed977847652b2048b0f8dcf049b1847a9",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "874f798c2db5ad595e46982d7f727a679dacb048",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "19b7b85773b18457ff85a9ff4f5e2a2d4bf7ed0c",
"versionType": "git"
},
{
"status": "affected",
"version": "ef5d862734b84239e0140319a95fb0bbff5ef394",
"lessThan": "9f6ec8dc574efb7f4f3d7ee9cd59ae307e78f445",
"versionType": "git"
}
],
"programFiles": [
"drivers/char/hw_random/geode-rng.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.18"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "2.6.18",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "4.9.337",
"versionType": "semver",
"lessThanOrEqual": "4.9.*"
},
{
"status": "unaffected",
"version": "4.14.303",
"versionType": "semver",
"lessThanOrEqual": "4.14.*"
},
{
"status": "unaffected",
"version": "4.19.270",
"versionType": "semver",
"lessThanOrEqual": "4.19.*"
},
{
"status": "unaffected",
"version": "5.4.229",
"versionType": "semver",
"lessThanOrEqual": "5.4.*"
},
{
"status": "unaffected",
"version": "5.10.163",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.86",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.0.16",
"versionType": "semver",
"lessThanOrEqual": "6.0.*"
},
{
"status": "unaffected",
"version": "6.1.2",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.2",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/char/hw_random/geode-rng.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2025-12-09T16:17:17.397",
"references": [
{
"url": "https://git.kernel.org/stable/c/19b7b85773b18457ff85a9ff4f5e2a2d4bf7ed0c",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/5cc818ad53df650cac8fb41d9066665366af3f03",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6b9e43c4098f1310f5b4d52121d007a219fa5d43",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/82bd423ed977847652b2048b0f8dcf049b1847a9",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/874f798c2db5ad595e46982d7f727a679dacb048",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/88f4ea623f59155280d99d1a59a968f838472c4a",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/9f6ec8dc574efb7f4f3d7ee9cd59ae307e78f445",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/aa96aff394a511cc7bb7df08d1b8504d4d97671e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e2f44baf62567c5cfbc274974c7d96dddad53ccc",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Deferred",
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nhwrng: geode - Fix PCI device refcount leak\n\nfor_each_pci_dev() is implemented by pci_get_device(). The comment of\npci_get_device() says that it will increase the reference count for the\nreturned pci_dev and also decrease the reference count for the input\npci_dev @from if it is not NULL.\n\nIf we break for_each_pci_dev() loop with pdev not NULL, we need to call\npci_dev_put() to decrease the reference count. We add a new struct\n'amd_geode_priv' to record pointer of the pci_dev and membase, and then\nadd missing pci_dev_put() for the normal and error path."
}
],
"lastModified": "2026-06-17T05:23:56.953",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}