Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1540643 > unrolled thread

[PATCH] wusbcore: Fix one more crypto-on-the-stack bug

Started byAndy Lutomirski <luto@kernel.org>
First post2016-12-12 22:00 +0100
Last post2016-12-13 01:00 +0100
Articles 2 on this page of 22 — 10 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] wusbcore: Fix one more crypto-on-the-stack bug Andy Lutomirski <luto@kernel.org> - 2016-12-12 22:00 +0100
    [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs Andy Lutomirski <luto@kernel.org> - 2016-12-12 22:00 +0100
      Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs David Howells <dhowells@redhat.com> - 2016-12-12 23:30 +0100
        Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs Andy Lutomirski <luto@kernel.org> - 2016-12-13 01:40 +0100
      RE: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs David Laight <David.Laight@ACULAB.COM> - 2016-12-13 13:50 +0100
        Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs David Howells <dhowells@redhat.com> - 2016-12-13 17:50 +0100
          Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs Andy Lutomirski <luto@amacapital.net> - 2016-12-13 18:10 +0100
            Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs David Howells <dhowells@redhat.com> - 2016-12-13 21:20 +0100
        Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs Andy Lutomirski <luto@amacapital.net> - 2016-12-13 17:50 +0100
          Re: [PATCH] keys/encrypted: Fix two crypto-on-the-stack bugs Joerg Roedel <joro@8bytes.org> - 2016-12-14 18:00 +0100
    [PATCH] crypto: Make a few drivers depend on !VMAP_STACK Andy Lutomirski <luto@kernel.org> - 2016-12-12 22:00 +0100
      Re: [PATCH] crypto: Make a few drivers depend on !VMAP_STACK Herbert Xu <herbert@gondor.apana.org.au> - 2016-12-13 04:50 +0100
    [PATCH] orinoco: Use shash instead of ahash for MIC calculations Andy Lutomirski <luto@kernel.org> - 2016-12-12 22:00 +0100
      Re: [PATCH] orinoco: Use shash instead of ahash for MIC calculations Eric Biggers <ebiggers3@gmail.com> - 2016-12-13 09:00 +0100
      Re: [PATCH] orinoco: Use shash instead of ahash for MIC calculations Kalle Valo <kvalo@codeaurora.org> - 2016-12-13 12:40 +0100
        Re: [PATCH] orinoco: Use shash instead of ahash for MIC calculations Andy Lutomirski <luto@amacapital.net> - 2016-12-13 17:50 +0100
          Re: [PATCH] orinoco: Use shash instead of ahash for MIC calculations Kalle Valo <kvalo@codeaurora.org> - 2016-12-13 18:10 +0100
      Re: orinoco: Use shash instead of ahash for MIC calculations Kalle Valo <kvalo@codeaurora.org> - 2016-12-30 12:40 +0100
        Re: orinoco: Use shash instead of ahash for MIC calculations Kalle Valo <kvalo@codeaurora.org> - 2016-12-30 13:10 +0100
          Re: orinoco: Use shash instead of ahash for MIC calculations Kalle Valo <kvalo@adurom.com> - 2016-12-30 13:50 +0100
    Re: [PATCH] wusbcore: Fix one more crypto-on-the-stack bug Greg KH <gregkh@linuxfoundation.org> - 2016-12-12 22:50 +0100
      Re: [PATCH] wusbcore: Fix one more crypto-on-the-stack bug Andy Lutomirski <luto@amacapital.net> - 2016-12-13 01:00 +0100

Page 2 of 2 — ← Prev page 1 [2]


#1540687

FromGreg KH <gregkh@linuxfoundation.org>
Date2016-12-12 22:50 +0100
Message-ID<sNGDT-149-7@gated-at.bofh.it>
In reply to#1540643
On Mon, Dec 12, 2016 at 12:52:45PM -0800, Andy Lutomirski wrote:
> The driver put a constant buffer of all zeros on the stack and
> pointed a scatterlist entry at it.  This doesn't work with virtual
> stacks.  Make the buffer static to fix it.
> 
> Cc: stable@vger.kernel.org # 4.9 only
> Reported-by: Eric Biggers <ebiggers3@gmail.com>
> Signed-off-by: Andy Lutomirski <luto@kernel.org>
> ---
>  drivers/usb/wusbcore/crypto.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/wusbcore/crypto.c b/drivers/usb/wusbcore/crypto.c
> index 79451f7ef1b7..a7e007a0cd49 100644
> --- a/drivers/usb/wusbcore/crypto.c
> +++ b/drivers/usb/wusbcore/crypto.c
> @@ -216,7 +216,7 @@ static int wusb_ccm_mac(struct crypto_skcipher *tfm_cbc,
>  	struct scatterlist sg[4], sg_dst;
>  	void *dst_buf;
>  	size_t dst_size;
> -	const u8 bzero[16] = { 0 };
> +	static const u8 bzero[16] = { 0 };

Hm, can static memory handle DMA?  That's a requirement of the USB
stack, does this data later end up being sent down to a USB host
controller?

thanks,

greg k-h

[toc] | [prev] | [next] | [standalone]


#1540745

FromAndy Lutomirski <luto@amacapital.net>
Date2016-12-13 01:00 +0100
Message-ID<sNIFN-2fm-17@gated-at.bofh.it>
In reply to#1540687
On Mon, Dec 12, 2016 at 1:44 PM, Greg KH <gregkh@linuxfoundation.org> wrote:
> On Mon, Dec 12, 2016 at 12:52:45PM -0800, Andy Lutomirski wrote:
>> The driver put a constant buffer of all zeros on the stack and
>> pointed a scatterlist entry at it.  This doesn't work with virtual
>> stacks.  Make the buffer static to fix it.
>>
>> Cc: stable@vger.kernel.org # 4.9 only
>> Reported-by: Eric Biggers <ebiggers3@gmail.com>
>> Signed-off-by: Andy Lutomirski <luto@kernel.org>
>> ---
>>  drivers/usb/wusbcore/crypto.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/usb/wusbcore/crypto.c b/drivers/usb/wusbcore/crypto.c
>> index 79451f7ef1b7..a7e007a0cd49 100644
>> --- a/drivers/usb/wusbcore/crypto.c
>> +++ b/drivers/usb/wusbcore/crypto.c
>> @@ -216,7 +216,7 @@ static int wusb_ccm_mac(struct crypto_skcipher *tfm_cbc,
>>       struct scatterlist sg[4], sg_dst;
>>       void *dst_buf;
>>       size_t dst_size;
>> -     const u8 bzero[16] = { 0 };
>> +     static const u8 bzero[16] = { 0 };
>
> Hm, can static memory handle DMA?  That's a requirement of the USB
> stack, does this data later end up being sent down to a USB host
> controller?

I think it doesn't, but I'll switch it to use empty_zero_page instead.

--Andy

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | linux.kernel


csiph-web