An issue was discovered in the Linux kernel through 5.10.1, as used with Xen through 4.14.x. The Linux kernel PV block backend expects the kernel thread handler to reset ring->xenblkd to NULL when stopped. However, the handler may not have time to run if the frontend quickly toggles between the states connect and disconnect. As a consequence, the block backend may re-use a pointer after it was freed. A misbehaving guest can trigger a dom0 crash by continuously connecting / disconnecting a block frontend. Privilege escalation and information leaks cannot be ruled out. This only affects systems with a Linux blkback.
The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.
Link | Tags |
---|---|
https://xenbits.xenproject.org/xsa/advisory-350.html | patch vendor advisory |
https://www.debian.org/security/2021/dsa-4843 | third party advisory vendor advisory |
https://security.netapp.com/advisory/ntap-20210205-0001/ | third party advisory |
https://lists.debian.org/debian-lts-announce/2021/02/msg00018.html | third party advisory mailing list |
https://lists.debian.org/debian-lts-announce/2021/03/msg00010.html | third party advisory mailing list |
https://security.gentoo.org/glsa/202107-30 | third party advisory vendor advisory |