The __driver_rfc4106_decrypt function in arch/x86/crypto/aesni-intel_glue.c in the Linux kernel before 3.19.3 does not properly determine the memory locations used for encrypted data, which allows context-dependent attackers to cause a denial of service (buffer overflow and system crash) or possibly execute arbitrary code by triggering a crypto API call, as demonstrated by use of a libkcapi test program with an AF_ALG(aead) socket.
| Software | From | Fixed in |
|---|---|---|
| linux / linux_kernel | 3.15 | 3.16.35 |
| linux / linux_kernel | - | 3.2.69 |
| linux / linux_kernel | 3.3 | 3.4.108 |
| linux / linux_kernel | 3.5 | 3.10.73 |
| linux / linux_kernel | 3.12 | 3.12.40 |
| linux / linux_kernel | 3.13 | 3.14.37 |
| linux / linux_kernel | 3.17 | 3.18.11 |
| linux / linux_kernel | 3.19 | 3.19.3 |
| debian / debian_linux | 8.0 | 8.0.x |
| debian / debian_linux | 7.0 | 7.0.x |
| canonical / ubuntu_linux | 12.04 | 12.04.x |