Commit 79960943 authored by David Gstir's avatar David Gstir Committed by Herbert Xu

crypto: talitos - Fix timing leak in ESP ICV verification

Using non-constant time memcmp() makes the verification of the authentication
tag in the decrypt path vulnerable to timing attacks. Fix this by using
crypto_memneq() instead.

Cc: stable@vger.kernel.org
Signed-off-by: default avatarDavid Gstir <david@sigma-star.at>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent cb8affb5
...@@ -977,7 +977,7 @@ static void ipsec_esp_decrypt_swauth_done(struct device *dev, ...@@ -977,7 +977,7 @@ static void ipsec_esp_decrypt_swauth_done(struct device *dev,
} else } else
oicv = (char *)&edesc->link_tbl[0]; oicv = (char *)&edesc->link_tbl[0];
err = memcmp(oicv, icv, authsize) ? -EBADMSG : 0; err = crypto_memneq(oicv, icv, authsize) ? -EBADMSG : 0;
} }
kfree(edesc); kfree(edesc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment