Debian Security Advisory

DSA-3565-1 botan1.10 -- security update

Date Reported:
02 May 2016
Affected Packages:
Security database references:
In the Debian bugtracking system: Bug 817932, Bug 822698.
In Mitre's CVE dictionary: CVE-2015-5726, CVE-2015-5727, CVE-2015-7827, CVE-2016-2194, CVE-2016-2195, CVE-2016-2849.
More information:

Several security vulnerabilities were found in botan1.10, a C++ library which provides support for many common cryptographic operations, including encryption, authentication, X.509v3 certificates and CRLs.

  • CVE-2015-5726

    The BER decoder would crash due to reading from offset 0 of an empty vector if it encountered a BIT STRING which did not contain any data at all. This can be used to easily crash applications reading untrusted ASN.1 data, but does not seem exploitable for code execution.

  • CVE-2015-5727

    The BER decoder would allocate a fairly arbitrary amount of memory in a length field, even if there was no chance the read request would succeed. This might cause the process to run out of memory or invoke the OOM killer.

  • CVE-2015-7827

    Use constant time PKCS #1 unpadding to avoid possible side channel attack against RSA decryption

  • CVE-2016-2194

    Infinite loop in modular square root algorithm. The ressol function implementing the Tonelli-Shanks algorithm for finding square roots could be sent into a nearly infinite loop due to a misplaced conditional check. This could occur if a composite modulus is provided, as this algorithm is only defined for primes. This function is exposed to attacker controlled input via the OS2ECP function during ECC point decompression.

  • CVE-2016-2195

    Fix Heap overflow on invalid ECC point.

  • CVE-2016-2849

    Use constant time modular inverse algorithm to avoid possible side channel attack against ECDSA.

For the stable distribution (jessie), these problems have been fixed in version 1.10.8-2+deb8u1.

We recommend that you upgrade your botan1.10 packages.