In the Linux kernel, the following vulnerability has been resolved:
sysctl: Fix data-races in procdou8vecminmax().
A sysctl variable is accessed concurrently, and there is always a chance of data-race. So, all readers and writers need some basic protection to avoid load/store-tearing.
This patch changes procdou8vecminmax() to use READONCE() and WRITEONCE() internally to fix data-races on the sysctl side. For now, procdou8vecminmax() itself is tolerant to a data-race, but we still need to add annotations on the other subsystem's side.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/49xxx/CVE-2022-49634.json",
"cna_assigner": "Linux"
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-49634.json"
[
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "127204616488291683625841009683409259508",
"length": 769.0
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e58b02e445463065b4078bf621561da75197853f",
"signature_type": "Function",
"id": "CVE-2022-49634-00202c6e",
"target": {
"file": "kernel/sysctl.c",
"function": "proc_dou8vec_minmax"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"108947755076585320714658435443899241191",
"217704660596998289201253101289138867036",
"88165358904965317444269836242219780949",
"109783644305934629174003863790098686543",
"97074214741673526960996597887474191812",
"216097141065919479872262736876713183236",
"338639363933068445304851622568901733987",
"81024614530849330944597213610265254645",
"162116473133578750733234582686217534245",
"81229212431798553516381074528416473561"
]
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f177b382c33900d0e5a9766493c11a1074076f78",
"signature_type": "Line",
"id": "CVE-2022-49634-4287e656",
"target": {
"file": "kernel/sysctl.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"108947755076585320714658435443899241191",
"217704660596998289201253101289138867036",
"88165358904965317444269836242219780949",
"109783644305934629174003863790098686543",
"97074214741673526960996597887474191812",
"216097141065919479872262736876713183236",
"338639363933068445304851622568901733987",
"81024614530849330944597213610265254645",
"162116473133578750733234582686217534245",
"81229212431798553516381074528416473561"
]
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f776daef0b5354615ec4b4234cd9539ca05f273",
"signature_type": "Line",
"id": "CVE-2022-49634-4cde4025",
"target": {
"file": "kernel/sysctl.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"108947755076585320714658435443899241191",
"217704660596998289201253101289138867036",
"88165358904965317444269836242219780949",
"109783644305934629174003863790098686543",
"97074214741673526960996597887474191812",
"216097141065919479872262736876713183236",
"338639363933068445304851622568901733987",
"81024614530849330944597213610265254645",
"162116473133578750733234582686217534245",
"81229212431798553516381074528416473561"
]
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e58b02e445463065b4078bf621561da75197853f",
"signature_type": "Line",
"id": "CVE-2022-49634-62a47c4f",
"target": {
"file": "kernel/sysctl.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "127204616488291683625841009683409259508",
"length": 769.0
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f776daef0b5354615ec4b4234cd9539ca05f273",
"signature_type": "Function",
"id": "CVE-2022-49634-738313f0",
"target": {
"file": "kernel/sysctl.c",
"function": "proc_dou8vec_minmax"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"108947755076585320714658435443899241191",
"217704660596998289201253101289138867036",
"88165358904965317444269836242219780949",
"109783644305934629174003863790098686543",
"97074214741673526960996597887474191812",
"216097141065919479872262736876713183236",
"338639363933068445304851622568901733987",
"81024614530849330944597213610265254645",
"162116473133578750733234582686217534245",
"81229212431798553516381074528416473561"
]
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7dee5d7747a69aa2be41f04c6a7ecfe3ac8cdf18",
"signature_type": "Line",
"id": "CVE-2022-49634-9af8e0cf",
"target": {
"file": "kernel/sysctl.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "127204616488291683625841009683409259508",
"length": 769.0
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7dee5d7747a69aa2be41f04c6a7ecfe3ac8cdf18",
"signature_type": "Function",
"id": "CVE-2022-49634-d3072e0c",
"target": {
"file": "kernel/sysctl.c",
"function": "proc_dou8vec_minmax"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "127204616488291683625841009683409259508",
"length": 769.0
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f177b382c33900d0e5a9766493c11a1074076f78",
"signature_type": "Function",
"id": "CVE-2022-49634-e48439da",
"target": {
"file": "kernel/sysctl.c",
"function": "proc_dou8vec_minmax"
}
}
]