kernel/bpf/verifier.c in the Linux kernel through 5.12.7 enforces incorrect limits for pointer arithmetic operations, aka CID-bb01a1bba579. This can be abused to perform out-of-bounds reads and writes in kernel memory, leading to local privilege escalation to root. In particular, there is a corner case where the off reg causes a masking direction change, which then results in an incorrect final aux->alu_limit.
{
"unresolved_ranges": [
{
"extracted_events": [
{
"last_affected": "33"
}
],
"cpe": "cpe:2.3:o:fedoraproject:fedora:33:*:*:*:*:*:*:*",
"source": "CPE_FIELD"
},
{
"extracted_events": [
{
"last_affected": "34"
}
],
"cpe": "cpe:2.3:o:fedoraproject:fedora:34:*:*:*:*:*:*:*",
"source": "CPE_FIELD"
},
{
"extracted_events": [
{
"introduced": "5.4.116"
},
{
"fixed": "5.4.123"
},
{
"introduced": "5.10.33"
},
{
"fixed": "5.10.41"
},
{
"introduced": "5.11.17"
},
{
"fixed": "5.12.8"
}
],
"cpe": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"source": "CPE_FIELD"
},
{
"extracted_events": [
{
"fixed": "5.12.7"
}
],
"source": "DESCRIPTION"
}
]
}{
"source": "REFERENCES"
}