
2017년 10월 16일, 2004년 이후 출시된 대부분의 무선 라우터에 탑재된 가장 보편적인 보안 방식인 WPA2에서 'KRACK' 취약점이 발견되었습니다. 이 취약점의 특성상 해커는 피해자가 전혀 눈치채지 못한 사이에 완전히 안전하다고 여겨지던 Wi-Fi 연결에 침투할 수 있으며, 피해자가 문제를 인식했을 때는 이미 손쓸 수 없는 상황이 되곤 합니다. 더욱 심각한 점은 대다수 무선 기기가 네트워크 접속 협상에 WPA2를 사용한다는 사실입니다.
그리고 이 이야기는 아직 끝나지 않았습니다. Apple과 Microsoft 같은 소프트웨어 제조업체들이 패치 배포에 얼마나 많은 노력을 기울이더라도, 피해를 완전히 해소하기까지는 몇 년이 걸릴 수 있습니다.
KRACK 취약점의 작동 원리

KRACK 취약점(언론에서는 '키 재설치 공격(Key Reinstallation Attack)'의 약자로 불립니다)을 이해하려면 먼저 WPA2가 어떻게 작동하는지 알아야 합니다. 기기를 네트워크에 인증하기 위해 라우터와 기기는 '4-way 핸드셰이크(four-way handshake)'라 불리는 4단계 과정을 거칩니다. 많은 매체가 이 과정을 잘못 설명하는 경우가 많으므로 조금 더 자세히 살펴보겠습니다.
- 라우터가 기기로 숫자 문자열을 전송하여, 기기가 라우터와 직접 통신할 때 사용할 고유 개인 키인 PTK(pairwise transient key, 쌍별 임시 키)를 생성할 수 있도록 합니다.
- 기기는 메시지 무결성 코드(MIC)를 포함한 또 다른 숫자 문자열과 함께 인증 정보를 전송합니다. MIC는 라우터가 통신 중인 상대가 실제 해당 기기가 맞는지 검증하며, 그 뒤에 오는 인증 코드는 기기가 네트워크 접속 비밀번호를 올바르게 보유하고 있는지 확인합니다.
- 라우터는 앞선 정보를 수신한 후, 브로드캐스팅에 사용되는 GTK(group temporal key, 그룹 임시 키)로 응답합니다.
- GTK를 받은 기기는 확인 신호(ping)로 응답하며, 이로써 네트워크에 정식으로 접속됩니다.
실제 과정은 위 설명보다 다소 복잡하지만, 이어지는 내용을 이해하기에는 충분합니다.
이 취약점을 악용하려는 해커는 라우터와 기기 간에 협상된 키를 '재설치(reinstall)'할 수 있습니다. 그 순간 모든 보호 장치가 무너집니다. 이런 공격이 가능한 공격자는 마음만 먹으면 언제든 피해자로 가장할 수 있고, PTK를 재설치했다면 피해자만 열람하도록 의도된 패킷까지 가로챌 수 있습니다.
자신을 보호하는 방법

그렇다면 해커가 피해자 몰래 완벽하게 사칭할 수 있는 상황에서, 어떻게 정보를 지켜야 할까요? 이론적으로는 누군가 Wi-Fi에 접속한 뒤 패킷을 조작해 피해자 명의로 자신의 계좌에 송금하는 것도 가능합니다.
첫 번째 단계는 민감한 작업에서는 Wi-Fi 사용 자체를 피하는 것입니다. 온라인 뱅킹 앱 로그인처럼 중요한 작업에는 모바일 데이터(셀룰러 네트워크)를 이용하세요. 데이터 종량제 요금제라면 약간의 비용이 들 수 있지만, 커피숍에 놓인 저렴한 라우터보다 훨씬 강력한 해킹 방어 체계를 갖춘 네트워크를 사용한다는 안도감을 얻을 수 있습니다.
Wi-Fi를 피할 수 없다면, 당장 작업을 수행해야 하는 상황이라면 VPN(가상 사설망)에 연결한 후 진행하는 것을 강력히 권장합니다. VPN이 해커로부터 완전한 면역을 보장하지는 않지만, 최소한 추가 보안 계층을 통해 더 많은 보호를 받을 수 있습니다. 특히 종단 간 암호화(end-to-end encryption)를 지원하는 VPN이라면 더욱 그렇습니다. 해커가 접속 중인 라우터 입장에서 피해자를 사칭할 수 있다 하더라도, VPN은 별도의 인증 방식을 사용해 이러한 시도를 효과적으로 차단하므로 공격 난이도가 크게 올라갑니다.
VPN이 없다면, Wi-Fi를 통해 필요한 작업을 수행하는 것 자체가 위험 감수임을 인지해야 합니다. 은행 및 주로 사용하는 앱에 다중 요소 인증(MFA)을 설정하면 이러한 위험을 상당 부분 줄일 수 있습니다.
세상이 끝나는 것은 아니지만, 그렇다고 방심해서는 안 됩니다. 소중한 데이터를 최대한 보호하려면 항상 경계심을 유지해야 하며, 위의 보안 수칙들은 현재 사용 중인 Wi-Fi 연결에 취약점이 있든 없든 습관적으로 지키는 것이 좋습니다.
또한 대부분의 사용자가 라우터 펌웨어 업데이트를 설치하지 않기 때문에, 이 특정 취약점이 완전히 사라지기까지는 수년이 걸릴 가능성이 높습니다. 자신의 라우터 펌웨어를 즉시 업데이트하고, 자주 찾는 카페나 숙박업소 등에도 펌웨어 업데이트를 권해보는 것도 좋은 방법입니다!
여러분은 데이터를 보호하기 위해 어떤 조치를 취하고 계신가요? 댓글로 여러분의 보안 노하우를 공유해 주세요!