An AVX-512-optimized implementation of the mempcpy function in the GNU C Library (aka glibc or libc6) 2.27 and earlier may write data beyond the target buffer, leading to a buffer overflow in __mempcpy_avx512_no_vzeroupper. Upstream issue: https://sourceware.org/bugzilla/show_bug.cgi?id=23196 Product bug: https://bugzilla.redhat.com/show_bug.cgi?id=1579809
Created glibc tracking bugs for this issue: Affects: fedora-all [bug 1581275]
Patch: https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9aaaab7c6e4176e61c59b0a63c6ba906d875dc0e
The vulnerable code can be reached only in particular configurations and in particular cases. First, mempcpy has to be resolved to __mempcpy_avx512_no_vzeroupper, thus the CPU needs to support AVX512 instructions. Moreover, the size to be copied has to be greater than a dynamic value internal to glibc and other conditions need to apply. For these reasons, I'm setting Attack Complexity to High (AC:H).
This issue has been addressed in the following products: Red Hat Enterprise Linux 7 Via RHSA-2018:3092 https://access.redhat.com/errata/RHSA-2018:3092