WebRTC 유출: 숨겨진 개인정보 위협
귀하의 개인정보를 보호하기 위해 프리미엄 VPN에 투자했는데 내장된 브라우저 기능이 귀하가 방문하는 모든 웹사이트에 귀하의 실제 IP 주소를 조용히 노출시키고 있다는 사실을 발견했다고 상상해 보십시오. 이것이 WebRTC 유출의 현실입니다. 이는 대부분의 최신 브라우저에 영향을 미치고 최고의 VPN 서비스도 완전히 우회할 수 있는 심각한 취약점입니다. 이 포괄적인 가이드에서는 WebRTC 누출이 무엇인지, 누출로 인해 귀하의 신원이 어떻게 노출되는지, 이를 방지할 수 있는 입증된 방법을 정확하게 설명합니다.
전체 기사 본문은 아래에 영어로 제공됩니다.
WebRTC
이해WebRTC란 무엇입니까?
WebRTC(Web Real-Time Communication)는 플러그인 없이 웹 브라우저에서 직접 실시간 통신을 가능하게 하는 오픈 소스 프로젝트입니다. 2011년에 도입되어 현재 모든 주요 브라우저에서 지원되는 WebRTC 기능:
- 브라우저 기반 영상 및 음성 통화(Google Meet, Zoom 웹)
- 화면 공유 및 공동 작업 도구
- 파일 공유(피어 투 피어)
- 실시간 게임
- L라이브 스트리밍
WebRTC의 강력한 기능은 브라우저 간에 직접 P2P 연결을 설정하고, 기존 서버 중개자를 우회하여 지연 시간을 줄이고 성능을 향상시키는 것에서 비롯됩니다.
WebRTC가 IP
를 검색하는 방법 P2P 연결을 설정하려면 WebRTC가 장치의 IP 주소를 검색해야 합니다. 이 프로세스는 STUN(Session Traversal Utilities for NAT) 서버를 사용합니다:
- Discovery Request: 브라우저는 STUN 서버로 요청을 보냅니다
- IP Revelation: STUN 서버는 공용 IP 주소
- Local로 응답합니다. 네트워크 스캔: WebRTC는 로컬 네트워크 인터페이스 및 개인 IP도 열거합니다.
- 후보 컬렉션: 검색된 모든 IP는 "ICE 후보"가 됩니다.
- Exchange: 이러한 후보는 연결을 위해 피어 간에 교환됩니다.
문제: 이 IP 검색은 자동으로 발생하며 VPN 터널을 완전히 우회할 수 있습니다.
WebRTC 누출 분석
WebRTC가 노출할 수 있는 것
A WebRTC 누출로 밝혀질 수 있는 것:
- 공용 IP 주소: 실제 인터넷 연결 IP(VPN 뒤에도)
- 개인 IP 주소: 내부 네트워크 IP(192.168.x.x, 10.x.x.x)
- IPv6 주소: 사용 가능한 경우 IPv6 주소
- 네트워크 토폴로지: 로컬 네트워크에 대한 정보 구조
- ISP 정보: 실제 공개에서 파생 가능 IP
- 지리적 위치: IP 지리적 위치를 기반으로 한 도시 수준
누출이 발생하는 방법
활성 VPN을 사용하는 경우에도 연결:
- WebRTC가 활성화된 웹사이트를 방문합니다.
- 웹사이트의 JavaScript가 WebRTC 연결 시도를 트리거합니다.
- Browser는 WebRTC API를 사용하여 로컬 IP 주소를 검색합니다.
- Browser는 VPN 터널 외부로 STUN 요청을 보냅니다.
- STUN 서버는 실제 메시지로 응답합니다. 공개 IP
- 웹사이트의 JavaScript는 검색된 모든 IP를 수집합니다.
- VPN 연결에도 불구하고 이제 실제 IP가 알려졌습니다.
Result: 웹사이트는 VPN IP와 실제 IP를 동시에 모두 확인합니다.
Real-World WebRTC 유출 시나리오
시나리오 1: 언론인
제한 국가의 언론인은 VPN을 사용하여 차단된 뉴스 사이트에 액세스하고 신원을 보호합니다. 그들은 조사 저널리즘 플랫폼으로 이동하지만 그것이 WebRTC 지문 인식을 구현한다는 사실을 인식하지 못합니다. 웹사이트의 분석 스크립트는 WebRTC를 통해 기자의 실제 IP 주소를 캡처하여 잠재적으로 정부 감시에 그들의 신원을 노출시킵니다.
Impact: 개인 안전 위험, 소스 손상
시나리오 2: 저작권 Enforcer
사용자는 자신의 IP가 숨겨져 있다고 믿고 VPN에 연결되어 있는 동안 콘텐츠를 토렌트합니다. 저작권 모니터링 회사는 추적 소프트웨어에 WebRTC를 사용합니다. 사용자가 토렌트 추적기와 연결된 사이트를 방문하면 WebRTC는 실제 IP를 공개하여 VPN 사용에도 불구하고 저작권 소유자가 이를 식별할 수 있도록 합니다.
Impact: DMCA 통지, 실제 IP/ISP
시나리오 3: 타겟 광고 네트워크
광고주는 수천 개의 웹사이트에 걸쳐 광고 픽셀에 WebRTC 핑거프린팅을 삽입합니다. VPN을 통해 익명이라고 생각하는 사용자는 WebRTC를 통해 노출된 실제 IP를 사용하여 여러 사이트에서 추적됩니다. 이를 통해 실제 신원과 관련된 상세한 행동 프로필이 생성됩니다.
Impact: 개인정보 침해, 사이트 간 추적, 타겟 광고
WebRTC 누출 감지
온라인 테스트 도구
여러 웹사이트에서 WebRTC 누출을 즉시 감지할 수 있습니다:
- BrowserLeaks.com/webrtc: 포괄적인 WebRTC 정보
- IPLeak.net: WebRTC
- 를 포함하여 감지된 모든 IP를 표시합니다. VPN 누출 테스트: Check for WebRTC 누출
찾을 사항
VPN이 활성화된 상태로 테스트할 때 다음이 표시되어야 합니다.
일반(보안):
- VPN 공급자의 IP 주소만 나타납니다
- 외부에 노출된 로컬 네트워크 IP 없음
- WebRTC 비활성화 또는 올바르게 구성
누출 감지:
- 실제 공용 IP가 VPN IP
- WebRTC에 표시된 다른 ISP와 함께 표시됩니다. section
- 다른 지리적 위치 공개
- 로컬 네트워크 IP 노출(덜 중요하지만 유익함)
수동 브라우저 콘솔 테스트
브라우저 개발자 콘솔에서 직접 WebRTC 누출을 테스트할 수 있습니다:
{`// 브라우저 콘솔 열기 (F12), 다음 코드를 붙여넣습니다: var pc = new RTCPeerConnection({iceServers: [{urls: "stun:stun.services.mozilla.com"}]}); pc.createDataChannel(""); pc.createOffer().then(offer => pc.setLocalDescription(offer)); pc.onicecandidate = ice => { if (!ice || !ice.candidate || !ice.candidate.candidate) return; var ip = /([0-9]{1,3}(\\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec(ice.candidate.candidate)[1]; console.log('발견된 IP:', ip); }`} 기록된 VPN과 일치하지 않는 모든 IP 주소는 누출을 나타냅니다.
WebRTC 누출 방지
Google Chrome 및 Chromium 브라우저
방법 1: 브라우저 확장
WebRTC 제어 확장 설치:
- WebRTC 누출 방지: 가장 인기 있고 가벼운
- uBlock 원본: 설정에 WebRTC 보호 포함
- Privacy Badger: WebRTC 제어가 포함된 일반 개인 정보 보호 도구
구성(WebRTC 누출 방지):
- Chrome 웹 스토어에서 확장 프로그램 설치
- 확장 아이콘 클릭
- "프록시되지 않은 UDP 비활성화(강제 프록시)" 선택 option
- 이것은 WebRTC가 프록시/VPN을 우회하는 것을 방지합니다
방법 2: Chrome 플래그(고급)
{`chrome://flags/#enable-webrtc-hide-local-ips-with-mdns Set to "Enabled"`} 이 WebRTC에 의해 노출된 로컬 IP 주소를 익명화합니다.
Mozilla Firefox
방법 1: 기본 Firefox 설정(권장)
- 주소의
유형about:configbar - 경고를 수락하고 진행
- 다음 검색:
media.peerconnection.enabled false로 전환(WebRTC를 완전히 비활성화)
부분 보호(WebRTC는 작동하지만 누출 방지됨):
{`media.peerconnection.ice.default_address_only = true media.peerconnection.ice.no_host = true media.peerconnection.ice.proxy_only_if_behind_proxy = true`} 방법 2: Firefox 확장
- WebRTC 비활성화: 단순 토글 확장
- uBlock 원본: 설정에서 "WebRTC의 로컬 IP 주소 유출 방지" 활성화
Microsoft Edge
Edge(Chromium 기반):
Chrome과 동일—WebRTC Leak Prevent와 같은 확장 프로그램 사용 또는:
{`edge://flags/#enable-webrtc-hide-local-ips-with-mdns Set to "Enabled"`} Safari (macOS/iOS)
macOS Safari:
- Safari 환경 설정 열기
- 고급 탭으로 이동
- "메뉴 막대에 개발 메뉴 표시" 확인
- 개발 메뉴에서 "실험적 기능"을 선택하세요.
- "WebRTC mDNS ICE 후보"를 찾아 비활성화하세요.
iOS Safari:
L제한된 옵션. 최선의 접근 방식:
- WebRTC 누출 방지 기능이 있는 VPN 사용
- 더 나은 개인정보 보호 기능을 갖춘 대체 브라우저 사용(Firefox Focus)
Opera & Brave
Opera:
- 설정 → 개인 정보 보호 및 보안
- WebRTC 섹션으로 스크롤
- "프록시되지 않은 UDP 비활성화" 선택
Brave:
- 설정 → 개인 정보 보호 및 보안
- "WebRTC IP 처리 정책" 찾기
- "프록시되지 않은 UDP 비활성화" 또는 "WebRTC 비활성화" 선택
VPN 수준 WebRTC 보호
일부 VPN은 내장된 WebRTC 누출 방지 기능을 제공합니다:
VPN 브라우저 확장
- 전용 확장 WebRTC 보호: 많은 VPN 공급자가 WebRTC 차단을 포함하는 브라우저 확장 기능을 제공합니다
- 자동 구성: 확장 기능은 브라우저 설정을 자동으로 구성합니다
- 통합 테스트: 내장 누출 감지 tools
시스템 수준 방화벽 규칙
고급 사용자는 방화벽 규칙을 구성하여 STUN/TURN 트래픽을 차단할 수 있습니다:
Linux(iptables):
{`# Block outbound STUN traffic (UDP 3478) sudo iptables -A OUTPUT -p udp --dport 3478 -j DROP # Block alternative STUN ports sudo iptables -A OUTPUT -p udp --dport 19302 -j DROP`} Windows 방화벽:
- Windows Defender 방화벽 → 고급 설정
- 아웃바운드 규칙 → 새 규칙
- Port → UDP → 특정 포트: 3478, 19302
- 연결 차단
구성 후 테스트
보호를 구현한 후 작동하는지 확인하세요:
- VPN에 연결하고 VPN IP
- WebRTC 테스트 사이트 방문: VPN 누출 test
- 결과 확인: 실제가 아닌 VPN IP만 표시해야 함 IP
- WebRTC 기능 테스트: 필요한 경우 영상 통화가 계속 작동하는지 확인
- 브라우저 업데이트 후 테스트 반복: 업데이트는 재설정 가능 settings
WebRTC 대 개인 정보 보호: 균형 찾기
WebRTC
일부 서비스에는 WebRTC 기능이 필요합니다:
- 브라우저 기반 화상 회의
- 실시간 공동 작업 도구
- Peer-to-Peer 파일 공유
- WebRTC 기반 게임
솔루션: 다른 브라우저 프로필 사용:
- 개인 정보 프로필: WebRTC 비활성화, 일반용으로 사용 탐색
- 작업 프로필: WebRTC 활성화, 필요한 서비스에만 사용
대체 접근 방식
- 웹 대신 데스크톱 앱: 웹 대신 Zoom/Teams 데스크톱 앱 사용 버전
- 선택적 활성화: 필요한 경우에만 WebRTC를 활성화하고 즉시 비활성화
- Tor 브라우저: 강력한 누출 방지 기능으로 기본적으로 WebRTC가 비활성화되어 있습니다.
WebRTC의 미래 개인 정보 보호
브라우저 개선
- mDNS 후보: Chrome/Edge는 이제 .local 주소로 로컬 IP를 난독화합니다.
- 권한 프롬프트: WebRTC 권한을 실험하는 일부 브라우저 요청
- 개인 정보 보호 모드: WebRTC 기능을 제한하는 향상된 개인 정보 보호 모드
지속적인 과제
- WebRTC 최신 웹 애플리케이션에 필수
- 기능과 개인 정보 보호 어려움
- 브라우저 간 표준화 불완전
- 새로운 지문 벡터가 계속해서 등장
자주 묻는 질문
{faq.question}
{faq.answer}
Conclusion
WebRTC 누출은 VPN 보호를 완전히 약화시킬 수 있는 심각한 취약점을 나타냅니다. WebRTC는 귀중한 실시간 통신 기능을 지원하지만 WebRTC의 IP 검색 메커니즘은 귀하가 보호받고 있다고 믿는 경우에도 귀하의 신원을 노출할 수 있습니다.
주요 내용:
- 정기적으로 테스트: 확인하면 WebRTC 누출을 쉽게 감지할 수 있습니다
- 필요하지 않을 때 비활성화: 대부분의 사용자는 매일 WebRTC가 필요하지 않습니다. 탐색
- 브라우저 확장 사용: WebRTC
- VPN 보호 확인: 모든 VPN이 WebRTC 누출로부터 보호하는 것은 아닙니다
- 업데이트 유지: 브라우저 업데이트는 WebRTC 설정을 재설정할 수 있습니다.
개인 정보 보호에는 여러 벡터에 대한 경계가 필요합니다. VPN 연결을 보호하는 것만으로는 충분하지 않습니다. WebRTC와 같은 브라우저 수준 유출로부터도 보호해야 합니다. WebRTC의 작동 방식을 이해하고 이 가이드에 설명된 보호 기능을 구현하면 이 중요한 개인 정보 보호 격차를 줄일 수 있습니다.
WebRTC용Test가 이제 누출됩니다
보호받고 있다고 가정하지 마십시오. 지금 바로 브라우저를 테스트하여 WebRTC가 실제 IP 주소를 노출하고 있는지 확인하세요.