브로드컴과 Cypress의 Wi-Fi 칩에 존재하는 Kr00K(CVE-2019-15126) 취약점입니다. AP와 디바이스 사이의 통신에 사용하는 all-zero encryption key을 만들어나 무선 통신 네트워크 취약점을 읽어내는 취약점입니다.
WLAN의 세션을 끊으면 디바이스 사이에 암호화된 유니캐스트 데이터 프레임을 보내기 위해 128비트의 템포럴 키가 Wi-Fi 칩에 저장되며 메모리 내용이 0으로 채워집니다. 여기까지는 정상. 그런데 취약점이 있는 칩의 전송 버퍼에 데이터 프레임이 남아 있어, 이걸 암호화해서 전송합니다. 이걸로 몇 KB의 프레임을 유출해 해독해 냅니다.
이 과정 중에는 인증/암호화가 되지 않는 게 가장 큰 문제이며, WLAN 접속 인증을 하지 않아도 WNIC 모니터 모드를 사용해 의도적으로 반복 진행, 더 많은 프레임을 뽑아내며 DNS/ARPICMP/HTTP/TCP/TLS 패킷의 데이터를 유출할 수 있습니다.
아무리 낮게 잡아도 10억 대 이상의 Wi-Fi 디바이스가 이 취약점이 있으며, 아마존 에코 2세대, 킨들 8세대, 아이폰 6/6s/8/XR, 아이패드 2, 맥북 에어 레티나 13인치 2018, 구글 넥서스 5/6/6s, 갤럭시 S4 GT-I9505/S8, 샤오미 홍미 3S, 라즈베리 파이 3, ASUS/화웨이의 AP에서 취약점을 재현할 수 있었다고 합니다.