CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·주식한당 ·아이포니앙 ·MaClien ·일본산당 ·방탄소년당 ·자전거당 ·개발한당 ·소시당 ·이륜차당 ·나스당 ·AI당 ·패스오브엑자일당 ·안드로메당 ·사과시계당 ·걸그룹당 ·노젓는당 ·클다방 ·노키앙 ·영화본당 ·IoT당 ·축구당 ·윈폰이당 ·창업한당 ·골프당 ·디아블로당 ·젬워한당 ·전기자전거당 ·바다건너당 ·여행을떠난당 ·물고기당 ·가상화폐당 ·육아당 ·라즈베리파이당 ·키보드당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·콘솔한당 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·리눅서당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·MTG한당 ·소리당 ·적는당 ·방송한당 ·PC튜닝한당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·퐁당퐁당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·터치패드당 ·트윗당 ·VR당 ·시계찬당 ·WebOs당 ·소셜게임한당 ·위스키당 ·와인마신당 ·WOW당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

모두의공원

그림으로 간단히 알아보는 한국의 인터넷 검열 방식 3가지 43

136
2018-05-06 02:32:44 211.♡.118.25
RB20

들어가기 전에, 용어 정리

네트워크에는 평문 전송과 암호화 전송이라는 말이 있습니다.

평문 전송은, 암호화 하지 않은 데이터 전송이라는 뜻으로... 네트워크 장비에서 모든 데이터를 다 까볼 수 있다는 뜻입니다.

앞으로의 글에서, 네트워크 데이터 전송은 암호화 전송이라는 말이 없는 이상 모두 평문 전송입니다.

0. Government is watching you


모든 클라이언트와 서버는 이런 식으로 연결되어 있습니다(실제로는 장비를 최소 대여섯개는 더 거치겠지만요). 

자동차가 출발지에서 목적지까지 수많은 교차로를 거쳐가며 이동하듯이, 네트워크 데이터도 수많은 라우터를 거쳐가며 이동하는거죠.

정부는 저 네트워크 장비들마다 자기네들의 감청 시스템을 달아서, 자기들 입맛에 맞지 않는 데이터는 조작해 버립니다.


1. 태초에 HTTP Host가 있었으니...

클리앙 인이라면 HTTP, HTTPS라는 단어 한번쯤은 들어보셨을 겁니다. 

HTTP/HTTPS는 인터넷에서 서버와 클라이언트가 통신하는 하나의 방식입니다. 더 이상 설명하면 너무 길어지니 이정도만 알아 두시고...

예를 들어, 한 클량인이 파이어폭스한테 " 'www.clien.net'으로 접속해줘!" 라고 요청을 했다고 합시다. 이를 그림으로 나타내면...


대략 이런 모양이 됩니다. 

i. 먼저, 브라우저는 유저가 입력한 도메인(www.clien.net)을 IP로 변환해야 합니다. 이를 위해 네임 서버라는 서버에 먼저 접촉을 합니다. 네임 서버는 도메인에 대응하는 IP들이 저장된 공간입니다.

ii. 네임 서버에 접촉해 IP를 얻고 나면, 이 IP에 /(루트) 페이지를 달라고 요청을 합니다. 해당 IP에는 클리앙 서버가 살고 있으므로, 클리앙의 메인 페이지를 리턴해 주겠네요.


ii번 과정을 자세히 보면,

브라우저는 모공을 화면에 띄우기 위해 클리앙 서버에 다음과 같은 글자를 보냅니다.

중간에 "Host: www.clien.net"이 보이시죠? 이 부분은 모든 HTTP 연결을 할 때 등장합니다. 다시 말해, HTTP 연결을 할때는 사이트의 도메인이 꼭 들어간다는 얘기죠.

그림으로 그리면 이렇게 생겼습니다.


정부의 네트워크 장비는 이 점을 노립니다.

ISP(인터넷 제공자, kt, SKB, U+ 등등)의 장비에 기생하면서 ISP의 네트워크 장비에서 오가는 모든 데이터를 감시하다가, HTTP 연결과 비슷한 형태의 데이터가 사행성/음란물 사이트 등의 도메인을 포함하면...

그 순간, 네트워크 장비는 본인이 유저가 접속한 서버인 마냥 위장하고, 가짜 데이터를 유저에게 되돌려 보냅니다.



그림으로 그리면 이렇게 되겠네요.

당연히 유저는 이 데이터가 진짜 서버에서 온건지, 아니면 감시장비에서 위장한건지 알 턱이 없습니다.


2. 구세주 HTTPS의 등장

그리고, HTTPS가 등장합니다.


HTTPS를 통한 연결에서는,

i. 먼저, 브라우저는 유저가 입력한 도메인(www.clien.net)을 IP로 변환해야 합니다. 이를 위해 네임 서버라는 서버에 먼저 접촉을 합니다. 네임 서버는 도메인에 대응하는 IP들이 저장된 공간입니다.

ii. 네임 서버에 접촉해 IP를 얻고 나면, 클리앙 서버에 바로 데이터를 보내는 대신, 데이터 암호화 키를 달라고 합니다.

iii. 브라우저는, 전달받은 암호화 키를 이용해 데이터를 암호화 해서 보냅니다. 마찬가지로 서버도 데이터를 암호화 해서 브라우저에게 전달합니다. 서버와 클라이언트는 서로 무슨 말을 했는지 다 알수 있지만, 네트워크 장비는 얘들이 무슨 말을 하는지 해독할 수 없죠.


이래서 기존 차단 방식이 무용지물이 된 것입니다.


3. DNS의 차단 

HTTPS로 인해 자신들의 노력이 허무하게 날라간 정부는, 부들부들대면서 DNS에 손을 대기로 합니다. 

HTTP나 HTTPS나, 네임 서버에 접촉하는 과정에서는 네트워크 장비에서 유저가 어떤 도메인의 IP를 요청하는지 다 볼 수 있었죠? 

이를 이용해서, 네트워크 장비들은 불건전한 도메인의 IP를 요청하려고 하면 마찬가지로 중간에 가로채서 warning.or.kr 사이트의 IP를 전달해 줍니다.이는 1번에서 말한 HTTP 차단 방식과 비슷합니다.



그림으로 그리면 이렇습니다(NS는 네임 서버의 약자입니다).


4. DNS over HTTPS

최근 모공에서 나름 핫한 기술입니다.

DNS over HTTPS(이하 DoH)는, 엄밀히 말해서 DNS 프로토콜을 이용한 기술이 아닙니다.


(without DoH)




(with DoH)

먼저, 컴퓨터에 네임서버를 설치합니다. 근데 이 네임서버(로컬 네임서버)는 조금 특수한 아이입니다.

보통의 네임서버는 도메인에 대한 정보가 들어있고, 유저의 요청 시 그 정보를 전달해 주지만 이 로컬 네임서버는 정보를 저장하지 않습니다.

그 대신, 유저로부터 도메인에 대한 요청을 받으면, 도메인에 대한 정보가 담긴 서버(이 서버는 네임 서버가 아닙니다)에 HTTPS를 이용해서 IP주소를 달라고 요청합니다.

HTTPS로 데이터를 전달했으니, 네트워크 망에 빈대붙어있는 감시자는 우리가 무슨 도메인에 대한 IP 정보를 요청했는지 모르겠죠? 

이렇게 해서 데이터를 받아온 로컬 네임서버는, 보통의 네임서버가 동작하듯이 IP 정보를 브라우저에게 전달해 줍니다.

이렇게 해서, 우리는 두번째 차단까지도 피해가는데 성공합니다.


3. SNI 차단 

이 방법은 아직 상용화되지 않은 방법입니다만, 높은 확률로 상용화가 될 것입니다.

2번 HTTPS 부분에서, 인증서를 요구하는 부분에서는 실제로는 인증서만 요구하지는 않습니다. 이 부분을 TLS Handshake라고 하는데,  여기서는 

i. 클라이언트가 서버와 TLS/SSL 인증 버전을 서로 맞추고, 

ii. 서로 이런저런 정보 교환을 하며, 

iii. 서버와 클라이언트가 각각의 인증서를 서로 맞교환합니다.


HTTPS가 기본적으로 암호화 전송이지만, 이 구간만은 평문 전송을 통해 데이터를 전송합니다.

암호화와 복호화(암호화된 문장을 평문으로 바꿈)를 하는데는 암/복호화 키가 필요하지만, 이를 받지도 않은 상태에서 문장을 암/복호화 하는 것은 불가능이니까요.

그리고 문제는, 위에서 말한 Handshake 과정중 ii 번에 도메인 정보가 들어있다는 것입니다.
관련 이미지

맨 밑을 보면, 클라이언트가 서버에게 SNI 라는 이름으로 도메인 명을 제공하고 있죠?

정부는 이 부분을 캐치해서 연결을 차단할 것으로 보입니다. 차단 방법은 HTTP/DNS 차단과 비슷할 듯 하네요.

RB20 님의 게시글 댓글
SIGNATURE
Damn it, Cipher!
서명 더 보기 서명 가리기
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [43]
삭제 되었습니다.
N.C.
IP 49.♡.108.184
05-06 2018-05-06 02:39:08
·
맨 마지막은 어렵네요.(일반인 입장)
가브리엘
IP 200.♡.79.36
05-06 2018-05-06 02:39:52 / 수정일: 2018-05-06 02:41:22
·
자세한 설명 감사합니다 덕분에 많이 배웠습니다 그런데 3번의 경우도 vpn 쓰면 다 회피 가능한거 아닌가요
Diki
IP 160.♡.167.1
05-06 2018-05-06 02:48:14
·
vpn 사용하면 다 회피가 가능합니다. 모든 트래픽이 암호화 되어서 vpn 반대편 서버에서 나가니 말이죠.
다만 vpn은 비용이 들고 속도 등의 문제가 있기에 각종 우회 방법을 찾아보는거죠.
saintgun
IP 117.♡.28.94
05-06 2018-05-06 14:05:54
·
정확히 말하면 vpn게이트웨이 사이의 구간만 경로지가 공개됩니다. 우리의 컴퓨터와 vpn게이트웨이 사이 구간은 드러나지 않지요.
자연괴물
IP 222.♡.141.251
05-06 2018-05-06 02:46:57
·
맨 마지막 빼고 이해 쉽네요. 요즘 모공에서 핫하다는 DNS over HTTPS는 일반인이 쉽게 이용 가능한 건가요?
MiYa
IP 211.♡.231.172
05-06 2018-05-06 02:49:34
·
클량 강좌게시판에도 우회법이 3가지 있어요.
자연괴물
IP 222.♡.141.251
05-06 2018-05-06 02:56:32
·
MiYa님 // 감사합니다
여긴누구나는어디
IP 121.♡.240.191
05-06 2018-05-06 02:49:28
·
좋은 설명 감사합니다
강경화
IP 115.♡.141.93
05-06 2018-05-06 02:55:20
·
좋은 설명 감사합니다
메밀소바
IP 222.♡.123.157
05-06 2018-05-06 03:00:27
·
스크랩 하고 아침에 봐야겠네요...
클리앙킷
ddtoem
IP 223.♡.202.171
05-06 2018-05-06 03:05:30
·
ㅎㅎ 좋은 자료 감사합니다!!
완벽하게 이해가 됐어요!!ㅎㅎ...정말이에요!!ㅎㅎ.........
김선규
IP 223.♡.173.76
05-06 2018-05-06 03:08:18 / 수정일: 2018-05-06 03:35:10
·
약간 오해가 있게 써져있는데 4번은 3번에 대한 대안이 아니라 국내 ISP의 DNS서버가 아닌 해외의 DNS를 암호화 없이 쓸 때에 대한 대안이지요. 4번 내용으로 해외의 암호화된 DNS 자체를 차단한다면 뭐 틀린말은 아니지만 그럴리는 없고, 지금의 차단방식은 단순히 네트워크 설정에서 DNS 주소만 바꾸면 우회가 되니 이에 대한 대응으로 4번을 도입할거라는 맥락이기에 이 맥락에서는 3번이랑은 관련이 없다고 봐야할거같습니다. 물론 DNS over HTTPS 자체를 차단할때에는 마찬가지로 쓸 수 있지만 그렇게까진 하지 않을거라 생각됩니다. 흐름상으로는 1 2 3 4 순으로 기술하되 3과 4 사이에 해외 DNS 서버로 변경해서 차단을 회피하는부분을 넣는게 나을 것 같습니다.
RB20
IP 223.♡.203.78
05-06 2018-05-06 18:06:59
·
밤에 팍 떠올라서 두서없이 주절거린거라 내용이 매끄럽지 못합니다. 죄송합니다 ㅎㅎ;
네쥬
IP 183.♡.117.173
05-06 2018-05-06 03:12:21
·
좋은 자료 감사합니다.
사과열애설
IP 88.♡.56.125
05-06 2018-05-06 03:23:38
·
이해하기 쉽네요 감사합니다!
이지금
IP 175.♡.82.74
05-06 2018-05-06 03:24:27
·
좋은 글 감사합니다.
까꿍-
IP 115.♡.33.87
05-06 2018-05-06 03:25:40
·
캬 ! 감사합니다!!
Accelerator
IP 222.♡.234.224
05-06 2018-05-06 03:59:54
·
TLS Without SNI방식으로 통신하면 되는 것 아닌가요??
touko
IP 64.♡.160.167
05-06 2018-05-06 05:59:16 / 수정일: 2018-05-06 05:59:31
·
Accelerator님// 가상 호스트를 쓰는 웹서비스들 (대부분)은 기본적으로 SNI가 없으면 통신이 불가능해요
삭제 되었습니다.
여름아앙앙
IP 175.♡.77.101
05-06 2018-05-06 08:04:56
·
친절한 해설에 감사합니다^^
juno31
IP 110.♡.57.11
05-06 2018-05-06 08:31:58
·
마지막은 잘 이해가 안가지만 그래도 위부분은 확실하게 이해가 가네요
정보 감사합니다!
Dino0
IP 211.♡.9.190
05-06 2018-05-06 08:56:07
·
좋은글 보고갑니다
kungmo
IP 110.♡.191.239
05-06 2018-05-06 09:16:11
·
재밌고 쉽게 설명해주셔서 감사합니다. 관련 청원이 20만이 안 되어서 안타깝네요 ㅠㅠㅠ 심각한 사안인데.
오떼블랑
IP 1.♡.178.68
05-06 2018-05-06 09:35:34
·
궁금하지만 전문지식 제로라 어려웠는데 친절한 설명덕에 잘 알고 갑니다. 감사합니다.
목각인형
IP 210.♡.71.46
05-06 2018-05-06 10:04:50
·
설명을 참 쉽게 잘하시네요. 감사합니다.
잠만보옹
IP 220.♡.96.215
05-06 2018-05-06 10:27:06
·
수능 비문학 지문으로 나왔으면... 하는 글입니다. ^^; 잘 읽었습니다!
CharlieBrown
IP 114.♡.152.208
10-24 2018-10-24 00:05:17
·
_Misha_님// 너무 잔인하시네요..
야채튀김
IP 223.♡.216.176
05-06 2018-05-06 10:40:54 / 수정일: 2018-05-06 11:44:47
·
장문의 글 감사히 잘 읽었습니다
이런 글 너무 감사합니다
Nesquik
IP 118.♡.39.181
05-06 2018-05-06 11:39:27
·
좋은글 감사합니다
현량
IP 59.♡.50.26
05-06 2018-05-06 11:47:40
·
쉽게 설명해주셔서 감사합니다.
하양러브
IP 211.♡.74.146
05-06 2018-05-06 11:59:56
·
팁과 강좌 게시판에도 올려주세요!!
RB20
IP 223.♡.203.78
05-06 2018-05-06 18:07:28
·
이대로 올리긴 좀 그렇고 내용 다듬어서 올려보도록 하겠습니다 ^^;;
커피칼디
IP 124.♡.145.89
05-06 2018-05-06 12:11:33 / 수정일: 2018-05-06 12:17:32
·
마지막 항목은 https 연결을 위해 악수할 때...
1. 이름을 부르면 옆에서 듣고 샤샤샥 달려와서 끼어들고 악수 받는 손을 바꿔치기하는 어깨 형님들이 있다 칩시다.
2. HTTPS는 암호화되어 이름이 옆에서 안 들립니다. 어깨 형님들은 지켜보지만 제가 누구랑 악수하는지 모릅니다.
3. 그러나 상대방 집주소(서버)가 같은 곳은 가상호스트(집으로 치면 같은동에 호수만 다름)가 필요합니다.
4. 가상호스트는 평문으로 크게 소리지릅니다. Xx ip에 있는 여러 사이트 중에 클리앙 나와라!
5. 지금은 HTTPS를 건들지 않지만 그 암호화 직전의 클리앙 나와라 소리를 듣고 달려올 준비가 진행중입니다.
6. 지금의 DNS 차단 기법은 이 단계 전에 "클리앙은 서울시 어디에 있냐?"에 "서울이 아니라 경찰청 뒷마당이야"라고 어깨 형님들이 대답하는 형태로 위와 다릅니다.

지금은 아마존 등 클라우드 서버에 여러 사이트가 입주하는게 대세라 SNI는 피할 수 없는 상황입니다.
뒤늦게 이 이름 부르기도 암호화하는 기술이 개발중이지만 표준화가 안 된 걸로 압니다.
그렇다면 일반 브라우저에 도입은 훨씬 더 먼 일이 되겠죠.
삭제 되었습니다.
inxx
IP 175.♡.20.142
05-06 2018-05-06 13:33:00 / 수정일: 2018-05-06 13:34:44
·
결국은 TLS 패킷을 변조하기 때문에 DNS변경, VPN, TOR, PRB... 무용지물이 됩니다.
하지만 TLS가 SNI 암호화를 넣는다고하니 지금의 정책은 결국엔 다 막힐 정책들이죠.
삭제 되었습니다.
wiseguyli
IP 117.♡.3.111
05-06 2018-05-06 14:00:09 / 수정일: 2018-05-06 14:00:47
·
러시아에서 하듯이 막으려면 어떤 패킷이던 간에 destination IP 블랙리스트 해서 막을 수 있을 것 같아요..

편지 내용이야 열어볼 수 없다지만, 수신자 주소가 적히지 않은 편지는 없으니까요.

해당 IP에서 돌아가는 다른 서비스도 함께 막히겠지만, 정부가 그런거 신경쓰진 않겠죠.
쪽과잇
IP 221.♡.28.3
05-06 2018-05-06 14:16:10
·
검열 좀 안 했으면.
Seez
IP 124.♡.81.180
05-06 2018-05-06 14:19:35
·
우리는 답을 찾을 것이다.... 늘 그랬듯이
버전업
IP 218.♡.72.76
05-06 2018-05-06 16:55:44
·
감사합니다~
RB20
IP 223.♡.203.78
05-06 2018-05-06 18:05:27
·
앗 확인해보니 댓글이... ^^
새벽에 설렁설렁 쓰다 SNI 파트 쓸때쯤엔 너무 졸려서 걍 대충 써버리고 잤습니다. 죄송합니다. 꾸벅...
gunnyeee
IP 218.♡.108.76
05-06 2018-05-06 20:50:39
·
쉽게 설명하셨다지만.. 저에겐 좀... 어렵네요... ㅋ
CharlieBrown
IP 114.♡.152.208
10-24 2018-10-24 00:05:28
·
좋은 글 감사드려요 :)
핫도리한조1
IP 183.♡.99.217
11-25 2018-11-25 09:33:10
·
늘 그랬듯이 우리는 답을 찾을것입니다
아야카
IP 61.♡.145.58
12-14 2018-12-14 20:34:11
·
DNS over HTTPS 보는 순간 빵 터졌네요 ㅋㅋㅋㅋㅋㅋㅋㅋ
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.