]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
crypto: ccm - preserve the IV buffer
authorRomain Izard <romain.izard.pro@gmail.com>
Tue, 31 Oct 2017 14:42:35 +0000 (15:42 +0100)
committerThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Thu, 16 Nov 2017 21:05:36 +0000 (19:05 -0200)
commit18d8a55f0d5b2ce758126efc8a42c05efcb5f326
tree43aa7b6389f3b0850e6e238f676eb2c2bf4f61d4
parentd33dd0b3063dcb8e20977ea2210998c22dda2deb
crypto: ccm - preserve the IV buffer

BugLink: http://bugs.launchpad.net/bugs/1732726
commit 441f99c90497e15aa3ad1dbabd56187e29614348 upstream.

The IV buffer used during CCM operations is used twice, during both the
hashing step and the ciphering step.

When using a hardware accelerator that updates the contents of the IV
buffer at the end of ciphering operations, the value will be modified.
In the decryption case, the subsequent setup of the hashing algorithm
will interpret the updated IV instead of the original value, which can
lead to out-of-bounds writes.

Reuse the idata buffer, only used in the hashing step, to preserve the
IV's value during the ciphering step in the decryption case.

Signed-off-by: Romain Izard <romain.izard.pro@gmail.com>
Reviewed-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
crypto/ccm.c