[SSSD] [PATCH] CRYPTO: Fix access to uninitialized data

Jakub Hrozek jhrozek at redhat.com
Mon Apr 28 19:51:12 UTC 2014


On Thu, Apr 17, 2014 at 08:57:54AM +0200, Lukas Slebodnik wrote:
> ehlo,
> 
> The size of output buffer(obufsize) was longer than initialised data.
> In calculation, uint32_t was used for length of the cryptotext,
> but uint16_t was written into buffer. The end of buffer was not initialised
> and it caused valgrind warning.
> 
>  Use of uninitialised value of size 8
>     at 0x37AE40F363: pl_base64_encode_buffer (nssb64e.c:180)
>     by 0x37AE40F6ED: NSSBase64_EncodeItem_Util (nssb64e.c:482)
>     by 0x37AE40F87A: BTOA_DataToAscii_Util (nssb64e.c:721)
>     by 0x40208A: sss_base64_encode (nss_base64.c:47)
>     by 0x403305: sss_password_encrypt (nss_obfuscate.c:358)
> 
> The easiest reproducer is the crypto-test.
> CK_FORK=no libtool --mode=execute valgrind ./crypto-tests
> 
> LS

Very nice catch.

Both online and offline authentication still work and the warning is
gone.

ACK



More information about the sssd-devel mailing list