cve-2026-64082
HIGH CVSS 7.8 nvd
Description
In the Linux kernel, the following vulnerability has been resolved: riscv: Fix register corruption from uninitialized cregs on error compat_riscv_gpr_set() calls cregs_to_regs() unconditionally, even when user_regset_copyin() fails. Since cregs is an uninitialized stack variable, a copyin failure causes uninitialized stack data to be written into the target task's pt_regs, corrupting its register state and potentially leaking kernel stack contents. compat_restore_sigcontext() has the same issue: it calls cregs_to_regs() even when __copy_from_user() fails, leading to the same corruption of the signal-returning task's register state on error. Only call cregs_to_regs() when the user copy succeeds.
Timeline
- Published
- 2026-07-19
- Last Modified
- 2026-09-03
CVSS Details
- Attack Vector
- LOCAL
- Attack Complexity
- LOW
- Privileges Required
- LOW
Affected Products
- linux linux_kernel
Weaknesses (CWE)
CVSS metrics
| Version | Base | Severity | Vector | Exploitability | Impact | Source |
|---|---|---|---|---|---|---|
| 3.1 | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
1.8 | 5.9 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
CPE configurations
OR
| CPE | Version range | Vulnerable |
|---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
>= 5.19, < 7.0.11 | yes |
cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* |
— | yes |
cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:* |
— | yes |
cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:* |
— | yes |
NVD metadata
- NVD status
- Analyzed
- Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
References
- https://git.kernel.org/stable/c/0599aa23734c48de9bce36d043a9ec90c23945a1 Patch
- https://git.kernel.org/stable/c/2a7d1daf2674fe7d5b1cc99a4e3b5f0f72d5958f Patch
- https://git.kernel.org/stable/c/66dedb6028c3df6c6a3372dd935b823917e150d5 Patch
- https://git.kernel.org/stable/c/6ebcbb53fc9bc30843054ed99fd60b8e542628f4 Patch
- https://git.kernel.org/stable/c/9e020156833f1ad0d425a1e3d85b65639f1c1c50 Patch
- https://git.kernel.org/stable/c/f2d88b0d7aebfa4643fc58bbae57210c6daff9c6 Patch
Linked Vulnerabilities
No linked vulnerabilities found.
{
"cvss": 7.8,
"datePublished": "2026-07-19T16:17:48.807",
"dateUpdated": "2026-09-03T20:03:09.430",
"description": "In the Linux kernel, the following vulnerability has been resolved:\n\nriscv: Fix register corruption from uninitialized cregs on error\n\ncompat_riscv_gpr_set() calls cregs_to_regs() unconditionally, even when\nuser_regset_copyin() fails. Since cregs is an uninitialized stack\nvariable, a copyin failure causes uninitialized stack data to be written\ninto the target task's pt_regs, corrupting its register state and\npotentially leaking kernel stack contents.\n\ncompat_restore_sigcontext() has the same issue: it calls cregs_to_regs()\neven when __copy_from_user() fails, leading to the same corruption of\nthe signal-returning task's register state on error.\n\nOnly call cregs_to_regs() when the user copy succeeds.",
"id": "CVE-2026-64082",
"raw": {
"affected": [
{
"affectedData": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"arch/riscv/kernel/compat_signal.c",
"arch/riscv/kernel/ptrace.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "f2d88b0d7aebfa4643fc58bbae57210c6daff9c6",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
},
{
"lessThan": "66dedb6028c3df6c6a3372dd935b823917e150d5",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
},
{
"lessThan": "2a7d1daf2674fe7d5b1cc99a4e3b5f0f72d5958f",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
},
{
"lessThan": "0599aa23734c48de9bce36d043a9ec90c23945a1",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
},
{
"lessThan": "9e020156833f1ad0d425a1e3d85b65639f1c1c50",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
},
{
"lessThan": "6ebcbb53fc9bc30843054ed99fd60b8e542628f4",
"status": "affected",
"version": "7383ee05314be58f8f9f018ee0ac53bef3808aea",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"arch/riscv/kernel/compat_signal.c",
"arch/riscv/kernel/ptrace.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "5.19"
},
{
"lessThan": "5.19",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.187",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.156",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.108",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.49",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.0.*",
"status": "unaffected",
"version": "7.0.11",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.1",
"versionType": "original_commit_for_fix"
}
]
}
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"configurations": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"matchCriteriaId": "7B4BD597-B75A-4159-BE4E-AEAC4025DB77",
"versionEndExcluding": "7.0.11",
"versionStartIncluding": "5.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*",
"matchCriteriaId": "B1EF7059-E670-45F4-B422-54C40FA86390",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*",
"matchCriteriaId": "0D38F0BF-A728-4133-A358-D44A2F7EE6D6",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*",
"matchCriteriaId": "EC732D08-5F7B-46D9-B154-E60C7F4F0A97",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nriscv: Fix register corruption from uninitialized cregs on error\n\ncompat_riscv_gpr_set() calls cregs_to_regs() unconditionally, even when\nuser_regset_copyin() fails. Since cregs is an uninitialized stack\nvariable, a copyin failure causes uninitialized stack data to be written\ninto the target task's pt_regs, corrupting its register state and\npotentially leaking kernel stack contents.\n\ncompat_restore_sigcontext() has the same issue: it calls cregs_to_regs()\neven when __copy_from_user() fails, leading to the same corruption of\nthe signal-returning task's register state on error.\n\nOnly call cregs_to_regs() when the user copy succeeds."
}
],
"id": "CVE-2026-64082",
"lastModified": "2026-09-03T20:03:09.430",
"metrics": {
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 7.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.8,
"impactScore": 5.9,
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"type": "Secondary"
}
]
},
"published": "2026-07-19T16:17:48.807",
"references": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/0599aa23734c48de9bce36d043a9ec90c23945a1"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/2a7d1daf2674fe7d5b1cc99a4e3b5f0f72d5958f"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/66dedb6028c3df6c6a3372dd935b823917e150d5"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/6ebcbb53fc9bc30843054ed99fd60b8e542628f4"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/9e020156833f1ad0d425a1e3d85b65639f1c1c50"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"tags": [
"Patch"
],
"url": "https://git.kernel.org/stable/c/f2d88b0d7aebfa4643fc58bbae57210c6daff9c6"
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"vulnStatus": "Analyzed",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-908"
}
],
"source": "nvd@nist.gov",
"type": "Primary"
}
]
},
"severity": "HIGH",
"source": "nvd",
"title": "In the Linux kernel, the following vulnerability has been resolved:\n\nriscv: Fix register corruption from uninitialize..."
}
Enrichment data
Aggregated bundle (all enrichments)