XSECCryptoX509CRL::loadX509CRLPEM() can read past unterminated buffer
Basics
Technical
Logistics
Basics
Technical
Logistics
Description
If XSECCryptoX509CRL::loadX509CRLPEM(buf, len) is called with a nonzero len argument, it makes a zero-terminated copy (b) of the passed buffer, but still calls strstr() on the buf pointer passed to the function, not on b. This lets strstr() read past the memory region designated by the caller.
If
XSECCryptoX509CRL::loadX509CRLPEM(buf, len)
is called with a nonzerolen
argument, it makes a zero-terminated copy (b
) of the passed buffer, but still callsstrstr()
on thebuf
pointer passed to the function, not onb
. This letsstrstr()
read past the memory region designated by the caller.