Web Real-Time Communication
์น/์ฑ์์ ๋ณ๋ค๋ฅธ ์ํํธ์จ์ด ์์ด ์นด๋ฉ๋ผ, ๋ง์ดํฌ ๋ฑ์ ์ฌ์ฉํ์ฌ ์ค์๊ฐ ์ปค๋ฎค๋์ผ์ด์ ์ ์ ๊ณตํด ์ฃผ๋ ๊ธฐ์
- ํ์ํตํ, ํ์ ๊ณต์ ๋ฑ์ ๊ตฌํํ ์ ์๋ ์คํ์์ค
- P2P๋ฐฉ์์ผ๋ก Peer๊ฐ์ ์ ์ก๋๋๋ก ์ง์
- JavaScript API๋ก ์ ๊ณต
- Peer to Peer ํต์ ์ ํ๊ธฐ ์ํด์๋ ์ฌ์ฉ์ IP ์ฃผ์๋ฅผ ์์์ผ ํ๋๋ฐ ์ด๋ ๋ฐฉํ๋ฒฝ ๋ฑ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด STUN/TURN ์๋ฒ๋ก ์ด๋ฅผ ํด๊ฒฐ
WebRTC IP Leak Test
P2P ๋ฐฉ์์ด๋ค ๋ณด๋ WebRTC API๋ฅผ ์ด์ฉํด ์์ดํผ๊ฐ ๋ ธ์ถ๋๋ ๊ฒฝ์ฐ๋ ์๊ธด๋ค.
๋ด ์์ดํผ๊ฐ ๋ ธ์ถ๋๋์ง ํ์ธํ๋ ์ฌ์ดํธ๊ฐ ์กด์ฌํ๋ค.
https://browserleaks.com/webrtc
IP๊ฐ ๋ ธ์ถ๋์ง ์์
IP๊ฐ ๋ ธ์ถ๋จ
NAT(Network Address Translation)
NAT๋ ๋คํธ์ํฌ ์ฃผ์ ๋ณํ์ด๋ผ๋ ๋ป์ผ๋ก, IP ํจํท์ ์์ค ๋ฐ ๋ชฉ์ ์ง IP ์ฃผ์์ TCP/UDP ํฌํธ ๋ฒํธ๋ฅผ ๋ณํํ์ฌ ๋คํธ์ํฌ ํธ๋ํฝ์ ์ฃผ๊ณ ๋ฐ๋ ๊ธฐ์ ์ ๋๋ค. ์ฝ๊ฒ ๋งํด, ์ฌ์ค IP ์ฃผ์๋ฅผ ๊ณต์ฉ IP ์ฃผ์๋ก ๋ณํํ๋ ์ญํ ์ ํฉ๋๋ค.
ICE, Interactive Connectivity Establishment
์ํธ ์ฐ๊ฒฐ ํ๋ฆฝ๋ P2P ๋คํธ์ํน์์ ๋ ์ปดํจํฐ๊ฐ ๊ฐ๋ฅํ ํ ์ง์ ์ ์ผ๋ก ์๋ก ํต์ ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฐพ๊ธฐ ์ํด ์ปดํจํฐ ๋คํธ์ํน์ ์ฌ์ฉ๋๋ ํ๋ ์์ํฌ์ด๋ค. ์ด๋ VoIP, P2P ํต์ , ๋น๋์ค ๋ฐ ์ธ์คํดํธ ๋ฉ์์ง๊ณผ ๊ฐ์ ๋ํํ ๋ฏธ๋์ด์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ค. ํผ์ด A์์ ํผ์ด B๋ก์ ์ง์ ์ฐ๊ฒฐ์ด ์๋ํ์ง ์๋ ๋ฐ๋ ์ฌ๋ฌ ๊ฐ์ง ์ด์ ๊ฐ ์์ต๋๋ค. ์ฐ๊ฒฐ์ ์ฐจ๋จํ๋ ๋ฐฉํ๋ฒฝ์ ์ฐํํด์ผ ํ๊ณ , ๋๋ถ๋ถ์ ๊ฒฝ์ฐ์ฒ๋ผ ๊ธฐ๊ธฐ์ ๊ณต์ฉ IP ์ฃผ์๊ฐ ์๋ ๊ฒฝ์ฐ ๊ณ ์ ์ฃผ์๋ฅผ ์ ๊ณตํด์ผ ํ๋ฉฐ, ๋ผ์ฐํฐ๊ฐ ํผ์ด์ ์ง์ ์ฐ๊ฒฐ์ ํ์ฉํ์ง ์๋ ๊ฒฝ์ฐ ์๋ฒ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํด์ผ ํฉ๋๋ค. ICE๋ STUN ๋๋ TURN ์๋ฒ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฅผ ์ํํฉ๋๋ค.
STUN, Session Traversal Utilities for NAT
STUN์ ๋คํธ์ํฌ ์ฃผ์ ๋ณํ (NAT) ํ๊ฒฝ์์ ๋คํธ์ํฌ ์ปดํจํฐ์ ๊ณต์ฉ IP ์ฃผ์์ ํฌํธ ์ ๋ณด๋ฅผ ๊ฒ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํ์คํ๋ ํ๋กํ ์ฝ ์ธํธ์ ๋๋ค. ์ฝ๊ฒ ๋งํด, NAT ๋ค์ ์จ์ด์๋ ์ฅ์น์ ์์น๋ฅผ ์ฐพ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
STUN ์๋ ์๋ฆฌ
1. STUN ํด๋ผ์ด์ธํธ๋ STUN ์๋ฒ์ ์์ฒญ์ ๋ณด๋
๋๋ค.
2. STUN ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ๊ณต์ฉ IP ์ฃผ์์ ํฌํธ ์ ๋ณด๋ฅผ ํฌํจํ๋ ์๋ต์ ๋ณด๋
๋๋ค.
3. ํด๋ผ์ด์ธํธ๋ ์ด ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ NAT ๋ค์ ์จ์ด์๋ ๋ค๋ฅธ ์ฅ์น์์ ์ฐ๊ฒฐ์ ์ค์ ํฉ๋๋ค.
TURN, Traversal Using Relays around NAT
TURN์ ๋คํธ์ํฌ ์ฃผ์ ๋ณํ (NAT) ๋๋ ๋ฐฉํ๋ฒฝ์ผ๋ก ์ธํด ์ง์ ์ฐ๊ฒฐ์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ, ์ค๊ณ ์๋ฒ๋ฅผ ํตํด ๋ ์ปดํจํฐ ๊ฐ์ ์ฐ๊ฒฐ์ ์ค์ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํ๋กํ ์ฝ์
๋๋ค. ์ฝ๊ฒ ๋งํด, NAT ๋ค์ ์จ์ด์๋ ๋ ์ฅ์น๊ฐ ์๋ก ํต์ ํ ์ ์๋๋ก ๋์์ฃผ๋ ๋ค๋ฆฌ ์ญํ ์ ํฉ๋๋ค.
TURN ์๋ ์๋ฆฌ
1. ํด๋ผ์ด์ธํธ๋ TURN ์๋ฒ์ ์ฐ๊ฒฐ ์์ฒญ์ ๋ณด๋
๋๋ค.
2. TURN ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์ค๊ณ ์ฑ๋์ ํ ๋นํฉ๋๋ค.
3. ๋ ํด๋ผ์ด์ธํธ๋ TURN ์๋ฒ๋ฅผ ํตํด ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํฉ๋๋ค.
์ถ์ฒ
https://ko.wikipedia.org/wiki/%EC%83%81%ED%98%B8_%EC%97%B0%EA%B2%B0_%ED%99%95%EB%A6%BD
https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/Protocols
'๐์ ๋ณด๋ณด์ > ๋คํธ์ํฌ ๋ณด์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋คํธ์ํฌ ๋ณด์ - HTTP ํธ๋ํฝ ๋ถ์ ํ๋ก์(mitmproxy) (0) | 2024.05.04 |
---|---|
๋คํธ์ํฌ ๋ณด์ - NAC ์ฐํ ๊ด๋ จ Cheat Sheet (0) | 2024.03.28 |
๋คํธ์ํฌ ๋ณด์ - Snort ๋ช ๋ น์ด ๋ชจ์ (0) | 2024.03.17 |
๋คํธ์ํฌ ๋ณด์ - Snort ์นผ๋ฆฌ๋ฆฌ๋ ์ค 1.0 ์ค์น (0) | 2023.11.17 |
๋คํธ์ํฌ ๋ณด์ - Snort ์๋์ฐ ์ค์น (0) | 2023.11.17 |