KNOB Attack
A vulnerability tracked as CVE-2019-9506 and referred as Key Negotiation of Bluetooth (KNOB) attack could allow attackers to spy on encrypted connections.
Researchers at the Center for IT-Security, Privacy and Accountability (CISPA) found a new Bluetooth vulnerability, referred as Key Negotiation of Bluetooth (KNOB) attack, that could allow attackers to spy on encrypted connections.
The vulnerability, tracked as CVE-2019-9506, resides in the way ‘encryption key negotiation protocol’ lets two Bluetooth Basic Rate/Enhanced Data Rate (also known as “Bluetooth Classic“) devices choose an entropy value for encryption keys while establishing a connection.
An attacker in close proximity to the victim’s device could trigger the vulnerability to intercept or manipulate encrypted Bluetooth traffic between two paired devices.
“The encryption key length negotiation process in Bluetooth BR/EDR Core v5.1 and earlier is vulnerable to packet injection by an unauthenticated, adjacent attacker that could result in information disclosure and/or escalation of privileges.” reads the advisory published by the CERT/CC “This can be achieved using an attack referred to as the Key Negotiation of Bluetooth (KNOB) attack, which is when a third party forces two or more victims to agree on an encryption key with as little as one byte of entropy. Once the entropy is reduced, the attacker can brute-force the encryption key and use it to decrypt communications.”
KNOB attack
The Bluetooth Classic supports encryption keys with entropy between 1 and 16 bytes/octets. The experts discovered that the negotiation of the entropy value over Link Manager Protocol (LMP) is not authenticated and lack of encryption allowing attackers to hijack it over-the-air.
When two Bluetooth devices attempt to establish an encrypted connection, they must pair with each other and establish a link key that is used to generate the encryption key. After authenticating the link key, the first device proposes that the use of 16 bytes of entropy. The second device can either accept this value, reject it, or propose a smaller value (for example, because it is not able to manage a large number of bytes proposed by the first device). After proposing a smaller amount, the frist device can accept it and request to activate link-layer encryption.
An attacker could force the two devices to use a smaller number of bytes of entropy. To do it, the attacker could intercept the proposal request sent by the first device to the second one, and change the number with a Number equal to 1 byte, then, the second device would accept this value.
The attacker could then intercept the acceptance message sent by the second device and change the entropy proposal to 1 byte, which the first one would likely accept. Thus, both devices would accept N and inform the Bluetooth hosts that encryption is active, but at this point, it could be easier for the attackers to brute-force the negotiated encryption keys.
“An unauthenticated, adjacent attacker can force two Bluetooth devices to use as low as 1 byte of entropy. This would make it easier for an attacker to brute force as it reduces the total number of possible keys to try, and would give them the ability to decrypt all of the traffic between the devices during that session.” reads the security advisory.
Once the attacker has obtained the key, it can monitor and manipulate the Bluetooth traffic in real-time, even if it is encrypted.
“For an attack to be successful, an attacking device would need to be within wireless range of two vulnerable Bluetooth devices that were establishing a BR/EDR connection. If one of the devices did not have the vulnerability, then the attack would not be successful. The attacking device would need to intercept, manipulate, and retransmit key length negotiation messages between the two devices while also blocking transmissions from both, all within a narrow time window. If the attacking device was successful in shortening the encryption key length used, it would then need to execute a brute force attack to crack the encryption key. In addition, the attacking device would need to repeat the attack each time encryption gets enabled since the encryption key size negotiation takes place each time.” reads the advisory released by Bluetooth.com
“In addition, since not all Bluetooth specifications mandate a minimum encryption key length, it is possible that some vendors may have developed Bluetooth products where the length of the encryption key used on a BR/EDR connection could be set by an attacking device down to a single octet.” added the advisory.
The experts tested the KNOB attack against more than 14 Bluetooth chips from different vendors such as Intel, Broadcom, Apple, and Qualcomm. The result is that all the chips accept 1 byte of entropy except the Apple W1 chip that accepts (at least) 7 bytes of entropy.
Further technical details are reported in the research paper published by the experts.
To mitigate KNOB attack, the maintainers of the Bluetooth specifications recommended device manufacturers and vendors to enforce a minimum encryption key length of 7 octets for BR/EDR connections.
Many vendors have already released security updates to address the flaw, including:
null
Apple for macOS, iOS, and watchOS
BlackBerry
Cisco for IP Phones and Webex
Google for Android
Microsoft for Windows