linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] crypto: ccp/gcm - use const time tag comparison.
@ 2019-07-02 17:32 Cfir Cohen
  2019-07-02 17:46 ` Gary R Hook
  2019-07-18  5:41 ` Herbert Xu
  0 siblings, 2 replies; 3+ messages in thread
From: Cfir Cohen @ 2019-07-02 17:32 UTC (permalink / raw)
  To: Tom Lendacky, Gary Hook, Herbert Xu, David Rientjes
  Cc: linux-kernel, linux-crypto, Cfir Cohen, stable

Avoid leaking GCM tag through timing side channel.

Fixes: 36cf515b9bbe ("crypto: ccp - Enable support for AES GCM on v5 CCPs")
Cc: <stable@vger.kernel.org> # v4.12+
Signed-off-by: Cfir Cohen <cfir@google.com>
---
 drivers/crypto/ccp/ccp-ops.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/crypto/ccp/ccp-ops.c b/drivers/crypto/ccp/ccp-ops.c
index db8de89d990f..633670220f6c 100644
--- a/drivers/crypto/ccp/ccp-ops.c
+++ b/drivers/crypto/ccp/ccp-ops.c
@@ -840,7 +840,8 @@ static int ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q,
 		if (ret)
 			goto e_tag;
 
-		ret = memcmp(tag.address, final_wa.address, AES_BLOCK_SIZE);
+		ret = crypto_memneq(tag.address, final_wa.address,
+				    AES_BLOCK_SIZE) ? -EBADMSG : 0;
 		ccp_dm_free(&tag);
 	}
 
-- 
2.22.0.410.gd8fdbe21b5-goog


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] crypto: ccp/gcm - use const time tag comparison.
  2019-07-02 17:32 [PATCH v2] crypto: ccp/gcm - use const time tag comparison Cfir Cohen
@ 2019-07-02 17:46 ` Gary R Hook
  2019-07-18  5:41 ` Herbert Xu
  1 sibling, 0 replies; 3+ messages in thread
From: Gary R Hook @ 2019-07-02 17:46 UTC (permalink / raw)
  To: Cfir Cohen, Lendacky, Thomas, Hook, Gary, Herbert Xu, David Rientjes
  Cc: linux-kernel, linux-crypto, stable

On 7/2/19 12:32 PM, Cfir Cohen wrote:
> Avoid leaking GCM tag through timing side channel.
> 
> Fixes: 36cf515b9bbe ("crypto: ccp - Enable support for AES GCM on v5 CCPs")
> Cc: <stable@vger.kernel.org> # v4.12+
> Signed-off-by: Cfir Cohen <cfir@google.com>

Acked-by: Gary R Hook <ghook@amd.com>

> ---
>   drivers/crypto/ccp/ccp-ops.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/crypto/ccp/ccp-ops.c b/drivers/crypto/ccp/ccp-ops.c
> index db8de89d990f..633670220f6c 100644
> --- a/drivers/crypto/ccp/ccp-ops.c
> +++ b/drivers/crypto/ccp/ccp-ops.c
> @@ -840,7 +840,8 @@ static int ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q,
>   		if (ret)
>   			goto e_tag;
>   
> -		ret = memcmp(tag.address, final_wa.address, AES_BLOCK_SIZE);
> +		ret = crypto_memneq(tag.address, final_wa.address,
> +				    AES_BLOCK_SIZE) ? -EBADMSG : 0;
>   		ccp_dm_free(&tag);
>   	}
>   
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] crypto: ccp/gcm - use const time tag comparison.
  2019-07-02 17:32 [PATCH v2] crypto: ccp/gcm - use const time tag comparison Cfir Cohen
  2019-07-02 17:46 ` Gary R Hook
@ 2019-07-18  5:41 ` Herbert Xu
  1 sibling, 0 replies; 3+ messages in thread
From: Herbert Xu @ 2019-07-18  5:41 UTC (permalink / raw)
  To: Cfir Cohen
  Cc: Tom Lendacky, Gary Hook, David Rientjes, linux-kernel,
	linux-crypto, stable

On Tue, Jul 02, 2019 at 10:32:56AM -0700, Cfir Cohen wrote:
> Avoid leaking GCM tag through timing side channel.
> 
> Fixes: 36cf515b9bbe ("crypto: ccp - Enable support for AES GCM on v5 CCPs")
> Cc: <stable@vger.kernel.org> # v4.12+
> Signed-off-by: Cfir Cohen <cfir@google.com>
> ---
>  drivers/crypto/ccp/ccp-ops.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Patch applied.  Thanks.
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-07-18  5:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-02 17:32 [PATCH v2] crypto: ccp/gcm - use const time tag comparison Cfir Cohen
2019-07-02 17:46 ` Gary R Hook
2019-07-18  5:41 ` Herbert Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).