공용 와이파이 쓰면 다 털린다는 말, 한 번쯤 들어 보셨을 겁니다. 카페에서 인터넷뱅킹 하지 말라는 이야기도요.
그 말이 맞던 시절이 있었습니다. 지금은 사정이 꽤 달라졌는데, 위험이 사라진 게 아니라 자리를 옮겼습니다.
누구나 붙을 수 있는 열린 접속점을 표현한 3D 에디터리얼 콘셉트 씬 — 출처: 개념 컷 · agy 자가 생성
예전 위험은 대부분 사라졌습니다
웹 트래픽 중 HTTPS가 차지하는 비중 — 출처: 브라우저 텔레메트리 기반 업계 집계 자가 렌더
과거의 공용 와이파이 위험은 단순했습니다. 같은 네트워크에 붙은 사람이 오가는 내용을 그대로 들여다볼 수 있었어요. 2010년에 나온 Firesheep이라는 확장 프로그램은 옆자리 사람의 로그인 세션을 클릭 한 번으로 가져가 보여 줬습니다.
그게 가능했던 이유는 웹이 평문으로 오갔기 때문입니다. HTTP로 주고받으면 중간에서 보는 쪽이 내용을 그대로 읽습니다.
지금은 웹 트래픽의 95% 이상이 HTTPS입니다. 브라우저가 주소창에 자물쇠를 띄우는 그 연결이에요. 끝에서 끝까지 암호화되니 중간에 앉은 사람은 내용을 못 봅니다. 어느 사이트에 접속했는지 같은 겉면 정보는 남지만, 아이디와 비밀번호가 그대로 흘러가지는 않습니다.
그래서 같은 와이파이에 붙었다는 이유만으로 내 계정이 넘어가는 상황은 이제 흔하지 않습니다. 이 부분은 실제로 좋아졌어요.
위험은 입력창 쪽으로 옮겨갔습니다
진짜 접속점과 같은 이름을 내건 가짜 접속점을 표현한 3D 에디터리얼 콘셉트 씬 — 출처: 개념 컷 · agy 자가 생성
암호를 못 깨면 다음 수는 정해져 있습니다. 직접 입력하게 만드는 것이죠.
이블 트윈(evil twin)은 진짜와 같은 이름(SSID)을 내건 가짜 접속점입니다. 카페 이름과 똑같은 와이파이를 하나 더 띄워 두면, 목록에서는 구분이 안 됩니다. 신호가 더 센 쪽에 기기가 자동으로 붙기도 하고요.
여기 붙었다고 곧바로 뭔가 털리지는 않습니다. HTTPS가 여전히 막아 주니까요. 문제는 그다음입니다.
공용 와이파이에 처음 붙으면 로그인 화면이 뜨죠. 캡티브 포털(captive portal)이라고 합니다. 이 화면은 접속점을 띄운 쪽이 마음대로 만들 수 있어요.
정상 캡티브 포털과 가짜 캡티브 포털 화면 예시 — 출처: 자가 제작 도식
가짜 접속점이 가짜 포털을 띄우고 이렇게 묻습니다.
자주 쓰는 서비스 로그인 화면을 그대로 흉내 내 아이디·비밀번호를 받습니다
객실 번호와 성함을 입력해 주세요
고속 와이파이를 쓰시려면 카드 정보를 넣어 주세요
세 줄 다 실제로 쓰이는 수법입니다. 암호화를 깨는 게 아니라 사용자가 직접 넘겨주게 만드는 것이라 HTTPS로 막히지 않아요.
여기서 자물쇠 아이콘을 믿으면 안 됩니다. 주소창 자물쇠는 “암호화됐다”는 뜻이지 “믿을 상대”라는 뜻이 아닙니다. 공격자가 이름이 비슷한 도메인을 사서 정식 인증서를 붙이면, 가짜 페이지에도 자물쇠와 HTTPS가 똑같이 뜹니다. 인증서는 몇 분이면 무료로 나오거든요. 그래서 자물쇠가 있고 없고로는 진짜와 가짜를 가를 수 없어요. 진짜 신호는 딱 하나입니다 — 그 화면이 로그인이나 카드번호를 요구하느냐. 인터넷 쓰려고 붙었을 뿐인데 계정 로그인을 물으면, 자물쇠가 떠 있어도 가짜로 봐야 합니다.
게다가 이 화면은 처음 붙을 때만 뜨는 게 아닙니다. 접속점을 쥔 쪽은 쓰는 도중 아무 때나 끼어들 수 있어요. 잘 보던 페이지가 갑자기 “세션이 만료됐습니다, 다시 로그인하세요”로 바뀌는 식입니다. HTTPS로 잘 가는 사이트를 통째로 바꿔치기하기는 어렵지만, 아직 암호화가 안 걸린 요청이나 접속 확인 과정에 가짜 화면을 끼워 넣는 건 회선을 쥔 쪽에게 어렵지 않습니다. 그래서 “처음 화면만 조심하면 된다”가 아니라, 공용 와이파이에서 갑자기 뜨는 로그인 요구 자체를 의심하는 게 맞아요.
그 끼어듦의 대표 수법이 DNS 바꿔치기입니다. 주소창에 친 이름(naver.com 같은)을 실제 주소로 옮겨 주는 게 DNS인데, 공용 와이파이는 이 번역을 접속점이 정해 준 서버에 맡깁니다. 그 서버를 공격자가 쥐고 있으면, 멀쩡한 주소를 쳐도 엉뚱한 곳으로 보낼 수 있어요. 진짜 HTTPS 사이트로 가는 길목을 통째로 바꾸면 인증서가 안 맞아 브라우저가 경고를 띄우긴 합니다. 그래서 이 수법은 주로 아직 암호화가 안 걸린 요청이나 이름만 비슷한 가짜 주소로 흘려보내는 데 쓰여요. 결론은 여기서도 같습니다 — 인증서 경고가 뜨면 무시하고 넘기지 말 것.
지금 공용 와이파이에서 위험한 건 오가는 내용이 아니라 내가 무엇을 입력하느냐입니다
호텔과 공항이 특히 노려지는 이유도 같습니다. 그쪽은 포털에서 객실 번호나 이름을 묻는 게 원래 정상인 환경이라, 같은 걸 묻는 가짜 화면이 전혀 어색하지 않아요. 카페처럼 비밀번호만 받는 곳보다 물어볼 수 있는 게 많습니다.
기기는 저장해 둔 와이파이 이름을 먼저 소리 내어 찾습니다. “스타벅스 있어?”, “공항 와이파이 있어?” 하고 주변에 묻고 다니는 셈이에요. 가짜 접속점은 그 물음을 엿듣고 부르는 이름이 뭐든 “그게 나야”라고 답하면 됩니다. 그러면 기기는 한 번 붙어 본 곳이라고 믿고 조용히 다시 붙어요. 특히 비밀번호 없는 공용 와이파이가 약한데, 이런 망은 이름만 맞으면 붙기 때문에 흉내 내기가 쉽습니다. 한 번 붙었던 카페 이름을 지하철에서 다시 만나는 일이 그래서 생겨요.
막는 법은 간단합니다. 쓰고 난 공용 와이파이는 목록에서 지우고(자동 연결 해제), 돌아다닐 땐 와이파이를 꺼 두면 기기가 이름을 소리 내어 찾지 않습니다.
무엇이 막히고 무엇이 남나
정리하면 선이 이렇게 갈립니다.
암호화 안쪽은 안전합니다. 로그인 정보, 사이트에 입력한 카드번호, 메시지 본문이 여기 들어가요. 은행이나 증권 앱은 한 겹 더 있습니다. 앱은 접속한 서버의 인증서가 자기가 아는 것과 같은지까지 검사해서, 중간에 누가 끼어들면 아예 연결을 끊습니다.
바깥에 남는 건 셋입니다. 어느 사이트에 접속했는지(내용은 못 봐도 주소는 보입니다), 언제 얼마나 머물렀는지, 그리고 기기 식별값이에요. 마지막 것 때문에 같은 사람이 다시 왔는지 추적할 수 있습니다.
여기에 하나가 더 붙는데, 그게 앞 절의 포털입니다. 내가 직접 친 값은 암호화가 지켜 주는 대상이 아니에요.
넷 중 습관으로 막을 수 있는 건 마지막 하나뿐입니다. 나머지 셋은 어느 접속점에 붙느냐를 고르는 단계에서 이미 정해집니다.
국내에는 5만 7천 곳이 깔려 있습니다
과기정통부 공공와이파이 구축 현황 — 출처: 과기정통부·NIA 집계 기반 자가 렌더
과기정통부가 구축한 공공와이파이는 공공장소 28,132곳과 시내버스 29,100대를 합쳐 전국 57,232곳입니다.
품질도 계속 올라가고 있어요. 한국지능정보사회진흥원(NIA)과 과기정통부는 전국 시내버스 공공와이파이를 5G 백홀 기반 Wi-Fi 7 장비로 교체하는 사업을 추진 중입니다. 버스당 월 데이터는 200GB에서 300GB로 늘리고, 약정을 넘겨도 최소 100Mbps는 유지하도록 품질 기준을 걸었습니다.
대부분 모르고 지나치지만, 공공와이파이에는 암호화된 접속 이름이 따로 있습니다.
| SSID | 암호화 | 접속 |
|---|---|---|
| Public WiFi Free | 없음 | 그냥 연결 |
| Public WiFi Secure | 있음 | ID·비밀번호 입력 |
Public WiFi Secure 쪽은 EAP 방식(PEAP)으로 인증하고 구간을 암호화합니다. 안드로이드 기준으로 와이파이 목록에서 이 이름을 고르고, 인증 방식을 PEAP로 둔 뒤 아이디와 비밀번호를 넣으면 됩니다. 둘 다 같은 사업의 망인데 대부분 앞쪽만 쓰고 있어요.
Free 쪽은 누구나 붙을 수 있으니 같은 이름을 내건 가짜를 세우는 것도 쉽습니다. Secure 쪽은 접속 단계에서 서로를 확인하기 때문에 이름만 흉내 낸 가짜에는 기기가 붙지 않아요. 앞 절에서 본 이블 트윈이 걸리는 자리가 여기입니다.
오늘 할 것
한국인터넷진흥원 로고 — 출처: KISA
| 상황 | 할 것 |
|---|---|
| 공공와이파이 | Secure 쪽으로 붙기 |
| 카페·호텔 | 이름을 직원에게 확인 |
| 캡티브 포털 | 카드·비밀번호는 안 넣기 |
| 다 쓴 뒤 | 목록에서 지우고 와이파이 끄기 |
KISA가 내놓은 수칙의 핵심도 같습니다. 제공자가 확인된 무선랜만 쓰라는 것, 그리고 공용 와이파이에서 민감한 금융 거래는 자제하라는 것이에요. 이름이 비슷한 접속점이 여럿 보이면 그 자리에서 직원에게 물어보는 게 가장 빠릅니다.
기기 설정에서 두 가지를 꺼 두면 이블 트윈에 자동으로 붙는 일이 줄어듭니다.
저장된 네트워크 자동 연결 — 한 번 붙었던 이름에 다시 자동으로 붙습니다
와이파이 자동 켜기 — 이동 중에도 계속 주변을 찾습니다
VPN은 접속점 운영자에게 보이던 목적지 정보를 가려 줍니다. 그 부분은 실제 이득이에요. 다만 그 정보를 볼 수 있는 대상이 카페 주인에서 VPN 사업자로 바뀔 뿐이라, 어디를 믿을지의 문제로 옮겨갑니다. HTTPS가 이미 내용을 가리고 있으니 VPN이 없다고 위험한 상태가 되지는 않습니다.
확인할 방법이 없는 것도 있습니다. 지금 붙은 접속점이 진짜인지 기기가 알려 주지 않아요. 이름과 신호만으로는 구분이 안 되고, 그래서 위 수칙이 확인이 아니라 습관으로 남아야 합니다.
암호화가 내용을 지켜 주는 만큼, 남은 빈틈은 내가 직접 입력하는 자리에 생깁니다.
참고 출처
- [KISA] 알기쉬운 무선랜 보안 안내서 (공중 무선랜 이용 수칙·제공자 확인)
- [머니투데이] NIA, 전국 버스에 와이파이7 도입 추진 (구축 현황·데이터 한도·품질 기준)
- [AhnLab] 공공 와이파이 이용 시 주의해야 할 보안 수칙 (Public WiFi Secure·PEAP 설정)
- [SK쉴더스] 공공장소 무선랜 보안 위협 (가짜 접속점·캡티브 포털)
- HTTPS 비중 95%는 브라우저 텔레메트리를 인용한 업계 집계이며, 측정 주체·플랫폼에 따라 수치가 갈립니다
- 공공와이파이 구축 수는 공공장소는 장소 기준, 시내버스는 차량 대수 기준이라 단위가 다릅니다