There exists a use-after-free in iouring in the Linux kernel. Signalfdpoll() and binderpoll() use a waitqueue whose lifetime is the current task. It will send a POLLFREE notification to all waiters before the queue is freed. Unfortunately, the iouring poll doesn't handle POLLFREE. This allows a use-after-free to occur if a signalfd or binder fd is polled with io_uring poll, and the waitqueue gets freed. We recommend upgrading past commit fc78b2fc21f10c4c9c4d5d659a685710ffa63659
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-3176.json"
[
{
"events": [
{
"introduced": "5.1"
},
{
"fixed": "5.4.212"
}
]
},
{
"events": [
{
"introduced": "5.5"
},
{
"fixed": "5.10.141"
}
]
},
{
"events": [
{
"introduced": "5.11"
},
{
"fixed": "5.15.65"
}
]
},
{
"events": [
{
"introduced": "5.16"
},
{
"fixed": "5.17"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "10.0"
}
]
},
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "11.0"
}
]
}
]