漏洞标题
drm/xe/ct拒绝使用send_recv()中的UAF
漏洞描述信息
在Linux内核中,已修复了以下漏洞:
drm/xe/ct: 防止send_recv()中的悬挂指针(UAF)
确保我们与完成端进行序列化,以防止因堆栈上的栅栏(fence)超出作用域而导致的悬挂指针(UAF),因为在超时之前我们无法确定其是否会触发,从而导致无法从xa中清除。另外,我们还有一些依赖的加载和存储操作,需要正确的顺序,但我们缺乏必要的屏障。通过在等待之后获取ct->lock来解决此问题,完成端也会持有该锁。
v2 (Badal):
- 在获取锁并查看超时后,也打印完成状态。
(从提交52789ce35c55ccd30c4b67b9cc5b2af55e0122ea中挑选)
CVSS信息
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
漏洞类别
可信数据的反序列化
漏洞标题
drm/xe/ct: prevent UAF in send_recv()
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved:
drm/xe/ct: prevent UAF in send_recv()
Ensure we serialize with completion side to prevent UAF with fence going
out of scope on the stack, since we have no clue if it will fire after
the timeout before we can erase from the xa. Also we have some dependent
loads and stores for which we need the correct ordering, and we lack the
needed barriers. Fix this by grabbing the ct->lock after the wait, which
is also held by the completion side.
v2 (Badal):
- Also print done after acquiring the lock and seeing timeout.
(cherry picked from commit 52789ce35c55ccd30c4b67b9cc5b2af55e0122ea)
CVSS信息
N/A
漏洞类别
N/A
漏洞标题
Linux kernel 安全漏洞
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于drm/xe/ct子系统中的send_recv函数中的释放后重用问题,可能导致内核崩溃。
CVSS信息
N/A
漏洞类别
其他