Vulnerabilities > CVE-2016-2849 - Information Exposure vulnerability in multiple products
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
HIGH Integrity impact
NONE Availability impact
NONE Summary
Botan before 1.10.13 and 1.11.x before 1.11.29 do not use a constant-time algorithm to perform a modular inverse on the signature nonce k, which might allow remote attackers to obtain ECDSA secret keys via a timing side-channel attack.
Vulnerable Configurations
Common Weakness Enumeration (CWE)
Common Attack Pattern Enumeration and Classification (CAPEC)
- Subverting Environment Variable Values The attacker directly or indirectly modifies environment variables used by or controlling the target software. The attacker's goal is to cause the target software to deviate from its expected operation in a manner that benefits the attacker.
- Footprinting An attacker engages in probing and exploration activity to identify constituents and properties of the target. Footprinting is a general term to describe a variety of information gathering techniques, often used by attackers in preparation for some attack. It consists of using tools to learn as much as possible about the composition, configuration, and security mechanisms of the targeted application, system or network. Information that might be collected during a footprinting effort could include open ports, applications and their versions, network topology, and similar information. While footprinting is not intended to be damaging (although certain activities, such as network scans, can sometimes cause disruptions to vulnerable applications inadvertently) it may often pave the way for more damaging attacks.
- Exploiting Trust in Client (aka Make the Client Invisible) An attack of this type exploits a programs' vulnerabilities in client/server communication channel authentication and data integrity. It leverages the implicit trust a server places in the client, or more importantly, that which the server believes is the client. An attacker executes this type of attack by placing themselves in the communication channel between client and server such that communication directly to the server is possible where the server believes it is communicating only with a valid client. There are numerous variations of this type of attack.
- Browser Fingerprinting An attacker carefully crafts small snippets of Java Script to efficiently detect the type of browser the potential victim is using. Many web-based attacks need prior knowledge of the web browser including the version of browser to ensure successful exploitation of a vulnerability. Having this knowledge allows an attacker to target the victim with attacks that specifically exploit known or zero day weaknesses in the type and version of the browser used by the victim. Automating this process via Java Script as a part of the same delivery system used to exploit the browser is considered more efficient as the attacker can supply a browser fingerprinting method and integrate it with exploit code, all contained in Java Script and in response to the same web page request by the browser.
- Session Credential Falsification through Prediction This attack targets predictable session ID in order to gain privileges. The attacker can predict the session ID used during a transaction to perform spoofing and session hijacking.
Nessus
NASL family Debian Local Security Checks NASL id DEBIAN_DSA-3565.NASL description 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. last seen 2020-06-01 modified 2020-06-02 plugin id 90841 published 2016-05-03 reporter This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/90841 title Debian DSA-3565-1 : botan1.10 - security update NASL family FreeBSD Local Security Checks NASL id FREEBSD_PKG_AC0900DF31D011E68E82002590263BF5.NASL description Jack Lloyd reports : Botan 1.10.13 has been released backporting some side channel protections for ECDSA signatures (CVE-2016-2849) and PKCS #1 RSA decryption (CVE-2015-7827). last seen 2020-06-01 modified 2020-06-02 plugin id 91582 published 2016-06-14 reporter This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/91582 title FreeBSD : botan -- multiple vulnerabilities (ac0900df-31d0-11e6-8e82-002590263bf5) NASL family Fedora Local Security Checks NASL id FEDORA_2016-A545F81683.NASL description ><i>From the upstream release notes: Botan 1.10.13 has been released backporting </I>some side channel protections for ECDSA signatures (CVE-2016-2849) and PKCS #1 RSA decryption (CVE-2015-7827). Note that Tenable Network Security has extracted the preceding description block directly from the Fedora security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-06-05 modified 2016-05-09 plugin id 90969 published 2016-05-09 reporter This script is Copyright (C) 2016-2020 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/90969 title Fedora 24 : botan-1.10.13-1.fc24 (2016-a545f81683) NASL family Fedora Local Security Checks NASL id FEDORA_2016-F2AAE0DBC5.NASL description From the upstream release notes : Botan 1.10.13 has been released backporting some side channel protections for ECDSA signatures (CVE-2016-2849) and PKCS #1 RSA decryption (CVE-2015-7827). Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-06-05 modified 2016-07-14 plugin id 92200 published 2016-07-14 reporter This script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/92200 title Fedora 23 : botan (2016-f2aae0dbc5) NASL family Gentoo Local Security Checks NASL id GENTOO_GLSA-201701-23.NASL description The remote host is affected by the vulnerability described in GLSA-201701-23 (Botan: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in Botan. Please review the CVE identifiers referenced below for details. Impact : A remote attacker might obtain ECDSA secret keys via a timing side-channel attack or could possibly bypass TLS policy. Workaround : There is no known workaround at this time. last seen 2020-06-01 modified 2020-06-02 plugin id 96417 published 2017-01-12 reporter This script is Copyright (C) 2017 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/96417 title GLSA-201701-23 : Botan: Multiple vulnerabilities NASL family Fedora Local Security Checks NASL id FEDORA_2016-FE0D8F126A.NASL description From the upstream release notes : Botan 1.10.13 has been released backporting some side channel protections for ECDSA signatures (CVE-2016-2849) and PKCS #1 RSA decryption (CVE-2015-7827). Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-06-05 modified 2016-07-14 plugin id 92216 published 2016-07-14 reporter This script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/92216 title Fedora 22 : botan (2016-fe0d8f126a)
References
- http://botan.randombit.net/security.html
- http://botan.randombit.net/security.html
- http://lists.fedoraproject.org/pipermail/package-announce/2016-May/183669.html
- http://lists.fedoraproject.org/pipermail/package-announce/2016-May/183669.html
- http://marc.info/?l=botan-devel&m=146185420505943&w=2
- http://marc.info/?l=botan-devel&m=146185420505943&w=2
- http://www.debian.org/security/2016/dsa-3565
- http://www.debian.org/security/2016/dsa-3565
- https://security.gentoo.org/glsa/201701-23
- https://security.gentoo.org/glsa/201701-23