CVE-2026-63798
In the Linux kernel, the following vulnerability has been resolved:
irqchip/imgpdc: Fix resource leak, add missing chained handler cleanup on remove
The driver allocates domain generic chips using irq_alloc_domain_generic_chips() during probe and sets up chained handlers using irq_set_chained_handler_and_data(). However, on driver removal, the generic chips are not freed and the chained handlers are not removed.
The generic chips remain on the global gc_list and may later be accessed by generic interrupt chip suspend, resume, or shutdown callbacks after the driver has been removed, potentially resulting in a use-after-free and kernel crash.
Leer descripción completaMostrar menos
The chained handlers that were installed in probe for peripheral and syswake interrupts are also left dangling, which can lead to spurious interrupts accessing freed memory.
Fix these issues by:
Detalles técnicos trazas, registros y código del informe original
- Setting IRQ_DOMAIN_FLAG_DESTROY_GC flag in domain->flags, so the
core code automatically removes generic chips when irq_domain_remove()
is called
- Clearing all chained handlers with NULL in pdc_intc_remove()CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Puntuación base: 5.5
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.13%
- Percentil entre todas las CVEs puntuadas: 2
- Fecha de la puntuación: 6/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)
CWE
- CWE-401
Referencias
- https://git.kernel.org/stable/c/0405a65e4ebd9eac13a765f9f02ac05851ca5421
- https://git.kernel.org/stable/c/37738fdf2ab1e504d1c63ce5bc0aeb6452d8f057
- https://git.kernel.org/stable/c/41826e5297e67cd96a0a46fde06a5069a8ce436a
- https://git.kernel.org/stable/c/44567537a2623dcd2b4018a7f043cf8069579e5d
- https://git.kernel.org/stable/c/8176773dfceae7978b01c20b233693e072053700
- https://git.kernel.org/stable/c/83d7ec14b0938ad8cae008058fd6f912f4a9a312
- https://git.kernel.org/stable/c/b3a3831b2eb884641906fc5e46207b205b6aea13
- https://git.kernel.org/stable/c/c2c7733101bb8c0b29ac9ee41073eaf602821a59
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-63798",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 5.5,
"attackVector": "LOCAL",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "NONE"
},
"impactScore": 3.6,
"exploitabilityScore": 1.8
}
]
},
"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": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "8176773dfceae7978b01c20b233693e072053700",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "c2c7733101bb8c0b29ac9ee41073eaf602821a59",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "83d7ec14b0938ad8cae008058fd6f912f4a9a312",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "44567537a2623dcd2b4018a7f043cf8069579e5d",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "41826e5297e67cd96a0a46fde06a5069a8ce436a",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "b3a3831b2eb884641906fc5e46207b205b6aea13",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "0405a65e4ebd9eac13a765f9f02ac05851ca5421",
"versionType": "git"
},
{
"status": "affected",
"version": "b6ef9161e43ad58c3824bd76dc87716276f0cd70",
"lessThan": "37738fdf2ab1e504d1c63ce5bc0aeb6452d8f057",
"versionType": "git"
}
],
"programFiles": [
"drivers/irqchip/irq-imgpdc.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "3.12"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "3.12",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.10.260",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.211",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.177",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.144",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.95",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.38",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.1.3",
"versionType": "semver",
"lessThanOrEqual": "7.1.*"
},
{
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/irqchip/irq-imgpdc.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2026-07-19T12:16:52.303",
"references": [
{
"url": "https://git.kernel.org/stable/c/0405a65e4ebd9eac13a765f9f02ac05851ca5421",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/37738fdf2ab1e504d1c63ce5bc0aeb6452d8f057",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/41826e5297e67cd96a0a46fde06a5069a8ce436a",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/44567537a2623dcd2b4018a7f043cf8069579e5d",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8176773dfceae7978b01c20b233693e072053700",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/83d7ec14b0938ad8cae008058fd6f912f4a9a312",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b3a3831b2eb884641906fc5e46207b205b6aea13",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/c2c7733101bb8c0b29ac9ee41073eaf602821a59",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Analyzed",
"weaknesses": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "CWE-401"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nirqchip/imgpdc: Fix resource leak, add missing chained handler cleanup on remove\n\nThe driver allocates domain generic chips using\nirq_alloc_domain_generic_chips() during probe and sets up chained\nhandlers using irq_set_chained_handler_and_data(). However, on driver\nremoval, the generic chips are not freed and the chained handlers are\nnot removed.\n\nThe generic chips remain on the global gc_list and may later be accessed by\ngeneric interrupt chip suspend, resume, or shutdown callbacks after the\ndriver has been removed, potentially resulting in a use-after-free and\nkernel crash.\n\nThe chained handlers that were installed in probe for peripheral and\nsyswake interrupts are also left dangling, which can lead to spurious\ninterrupts accessing freed memory.\n\nFix these issues by:\n\n - Setting IRQ_DOMAIN_FLAG_DESTROY_GC flag in domain->flags, so the\n core code automatically removes generic chips when irq_domain_remove()\n is called\n\n - Clearing all chained handlers with NULL in pdc_intc_remove()"
}
],
"lastModified": "2026-08-17T05:17:16.123",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "4224A4E3-BBBF-41C4-AABC-49ECCFD3F5AB",
"versionEndExcluding": "5.10.260",
"versionStartIncluding": "3.12"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "D71C101E-388C-4A46-BD99-49049F7C5CFF",
"versionEndExcluding": "5.15.211",
"versionStartIncluding": "5.11"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "333C9E30-7FD4-46A2-94EF-C1AA1F3EE28B",
"versionEndExcluding": "6.1.177",
"versionStartIncluding": "5.16"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "C8AD3BC8-C843-423C-B9DB-CB52F67F578E",
"versionEndExcluding": "6.6.144",
"versionStartIncluding": "6.2"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "4E206B86-E0E3-4394-A93F-39F2D50A8AA8",
"versionEndExcluding": "6.12.95",
"versionStartIncluding": "6.7"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "FA591B28-5D62-449E-BDBE-3C9391BF070A",
"versionEndExcluding": "6.18.38",
"versionStartIncluding": "6.13"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9526B150-E2B3-4C6F-8AE5-1AF92B75AD9E",
"versionEndExcluding": "7.1.3",
"versionStartIncluding": "6.19"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}