KRACK (Key Reinstallation Attack) for WPA and WPA2 Vulnerabilities Update
[Editor’s note: Article updated on 10/20/2017 with additional information about KRACK mitigation options from WatchGuard.]
On October 16, 2017, a statement from the International Consortium for Advancement of Cybersecurity on the Internet (ICASI) alerted the industry to a series of vulnerabilities for WPA and WPA2, named KRACK (Key Reinstallation Attack). These vulnerabilities affect a large number of wireless infrastructure devices and wireless clients, across many vendors. This security flaw means that, for vulnerable clients and access points, WPA and WPA2-encrypted Wi-Fi traffic is no longer secure until certain steps are taken to remediate the issue. The Wi-Fi data stream, including passwords and personal data, can be intercepted, decrypted, and modified without a user’s knowledge. WatchGuard’s Wi-Fi access points (APs) and Wi-Fi enabled appliances are affected by these vulnerabilities. Following is detailed information about the vulnerabilities, which WatchGuard products are affected, and timing for patches. WatchGuard understands that in many cases, it’s difficult, if not impossible to patch all client devices. For example, IoT devices where vendors may be slow, out of business, or unwilling to patch older product versions, leaving many clients vulnerable indefinitely. See below for details on how WatchGuard Wi-Fi technology can mitigate KRACK for vulnerable clients and details are addressed below.
Who is affected by these vulnerabilities?
The vulnerability is widespread. Review the ICASI statement additional information and CVEs. Organizations that use wireless access points (APs) relying on WPA or WPA2 encryption, and mobile users who connect to Wi-Fi networks with smartphones, tablets, laptops, and other devices, should implement the necessary patches applicable to these vulnerabilities.
How many/what type of vulnerabilities are there?
Refer to the ICASI list of vulnerabilities and Common Vulnerability and Exposure (CVE) identifiers here.
How do the KRACK (Key Reinstallation Attack) for WPA and WPA2 vulnerabilities work?
A malicious user could inject specially-crafted packets into the middle of the WPA/WPA2 authentication handshake, forcing installation of a key known to—or controlled by—the attacker. This results in the possibility of decrypting and/or modifying client traffic. Traffic already protected by a higher-level encryption protocol, such as HTTPS, VPNs, or application encryption would not be impacted.
Depending on the specific device configuration, successful exploitation of these vulnerabilities could allow unauthenticated attackers to perform packet replay, decrypt wireless packets, and to potentially forge or inject packets into a wireless network. This is accomplished by manipulating retransmissions of handshake messages.
When an adversary manipulates certain handshake messages over the air, the exploit results in reuse of some packet numbers when handshakes are performed. The reuse of packet numbers violates the fundamental principle on which the strength of WPA2 encryption and replay security is based. The principle is that for a given key hierarchy, PTK, GTK and IGTK, packet numbers in two original (non-retransmits) packet transmissions protected by them cannot be repeated. For packet pairs where this assumption is violated, it is possible to determine the content of one packet if the plaintext of the other packet is known or can be guessed. Packet number can also permit adversary to replay old packets to the receiver.
Which WatchGuard products were affected?
- Access Points: AP100, AP102, AP120, AP200, AP300, AP320, AP322, AP420
- Appliances: XTM 25-W, 26-W, 33-W; Firebox T10-W, T30-W, T50-W
How can WatchGuard partners and customers access patches / updates that address these vulnerabilities?
Patches will be available for Fireware, WatchGuard legacy and current APs, and for WatchGuard Wi-Fi Cloud via the following releases and estimated timing (subject to changes, monitor this blog for patch updates):
Sunday, October 15, 2017:
- AP120, 320, 322, 420: Release 8.3.0-657, Cloud mode only
Monday, October 30, 2017:
- Fireware: Release 12.0.1
- Legacy AP:
- AP300: Release 22.214.171.124
- AP100, 102, 200: Release 126.96.36.199
- AP120, 320, 322, 420: Release 8.3.0-657, Non-Cloud (GWC mode)
Q: Is there a method to protect unpatched client devices?
A: WatchGuard is providing patches for all of our affected products and also recommends patching all non-WatchGuard Wi-Fi enabled devices whenever possible. To protect unpatched client devices, WatchGuard provides two methods of protection:
- An option to "Mitigate WPA/WPA2 key reinstallation vulnerability in clients” is available now in the Wi-Fi Cloud, and available October 30, 2017 in Fireware version 12.0.1 in the Gateway Wireless Controller (GWC) settings [available for AP120, AP320, AP322, and AP420 version 8.3.0-657].
- AP MAC spoofing prevention is available now in the Wi-Fi Cloud when dedicated WIPS sensors are deployed (not background scanning)
Read more about protecting Wi-Fi devices from KRACK this blog post, and in the WatchGuard Knowledge Base.
Have any of WatchGuard’s customers or partners been negatively impacted by these vulnerabilities?
No, we are not aware of any WatchGuard customers or partners who have been negatively impacted by these vulnerabilities.
What is WPA2?
WPA2 (802.11i) is currently the standard for link layer security in Wi-Fi networks. It uses either 802.1x (EAP) or shared key (PSK) based authentication. In 802.1x, the client is authenticated from a backend RADIUS server when setting up a wireless connection. During the authentication process, the client and the RADIUS server generate a common key called Pairwise Master Key (PMK). The PMK is sent from the RADIUS server to the AP over a secure wired network. In PSK, the PMK is statically installed in the client and the AP by entering the same passphrase (password) on both sides. The PMK is then used to generate a hierarchy of keys to be used for encryption and integrity protection for data sent over wireless link between the AP and the client.
The protocol to generate the key hierarchy from PMK is called an EAPOL 4-Way Handshake. It is used to derive the following keys:
- Pairwise Transient Key (PTK), used to encrypt unicast communication between AP and client. PTK is derived and installed by the AP and the client at the time of setting up a wireless connection. It is refreshed during the connection after pre-configured time has passed. It is also refreshed when client roams between APs using fast transition (FT) protocol.
- Group Transient Key (GTK), used for encrypting broadcast and multicast messages from APs to clients. A GTK is generated and maintained by the AP. It is securely delivered by the AP to the client at the time of setting up a wireless connection.
- Integrity Group Transient Key (IGTK), used for providing integrity for broadcast and multicast management messages (called management frame protection or MFP) transmitted from the AP to the client. IGTK is generated and maintained by the AP. It is securely delivered by the AP to the client at the time of setting up a wireless connection.
The keys (GTK and IGTK) are refreshed when a client leaves the AP and the new keys are distributed to all remaining clients using a protocol called Group Key Handshake.
What is WPA?
Wi-Fi Protected Access (WPA) is a security protocol and security certification system developed by the Wi-Fi Alliance in response to weaknesses found in the previous system, Wired Equivalent Privacy (WEP). This was an intermediate measure taken in anticipation of the availability of the more complex and secure WPA2. WPA is obsolete and insecure, and WatchGuard recommends that all customers use WPA2, and not WPA.