From Dragondoom to Dragonstar: Side-channel Attacks and Formally Verified Implementation of WPA3 Dragonfly Handshake
Daniel De Almeida Braga, Natalia Kulatova, Mohamed Sabt, Pierre-Alain, Fouque, Karthikeyan Bhargavan

TL;DR
This paper identifies side-channel vulnerabilities in WPA3 Dragonfly handshake implementations and introduces Dragonstar, a formally verified, leakage-free implementation that enhances security without sacrificing performance.
Contribution
It uncovers practical side-channel attacks on WPA3 implementations and presents Dragonstar, a formally verified, secure implementation of the Dragonfly handshake.
Findings
Dragondoom exploits microarchitectural leaks to recover passwords.
Dragonstar achieves leakage-free implementation with minimal performance impact.
Formally verified cryptography guarantees resistance to side-channel attacks.
Abstract
It is universally acknowledged that Wi-Fi communications are important to secure. Thus, the Wi-Fi Alliance published WPA3 in 2018 with a distinctive security feature: it leverages a Password-Authenticated Key Exchange (PAKE) protocol to protect users' passwords from offline dictionary attacks. Unfortunately, soon after its release, several attacks were reported against its implementations, in response to which the protocol was updated in a best-effort manner. In this paper, we show that the proposed mitigations are not enough, especially for a complex protocol to implement even for savvy developers. Indeed, we present **Dragondoom**, a collection of side-channel vulnerabilities of varying strength allowing attackers to recover users' passwords in widely deployed Wi-Fi daemons, such as hostap in its default settings. Our findings target both password conversion methods, namely the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
