방통위 유해사이트 차단, 인터넷 검열인가 아닌가

  • 기자명 지윤성 기자
  • 기사승인 2019.02.20 06:31
이 기사를 공유합니다

정부는 2월 11일부터 유해사이트(불법사이트) 접근을 차단한다고 밝혔다. 그러자 이번 조치로 인터넷 검열과 민간인 통신 도·감청이라는 여론이 확산됐다. 19일 현재 청와대 국민청원 게시판의 <https 차단 정책에 대한 반대 의견> 청원에는 24만명이 넘는 국민이 참여한 상태다. 시민사회단체 역시 반발하고 있다. 오픈넷은 정부의 SNI 필드 차단 기술 도입을 우려한다는 논평에서 이번 조치가 인터넷 이용자의 보안과 자유를 위축시킨다고 주장했다. 진보넷은 '디지털 성범죄 대책을 넘어선 방통위의 SNI 차단 정책'이라는 논평에서 정부가 검열을 확대하는 것을 반대했다. 브로큰웹스라는 사이트 역시 정부의 인터넷 검열이라는 주장을 펴고 있다. 이에 뉴스톱은 방송통신위원회 조치의 기술적 배경을 살펴보고 인터넷 검열이라는 주장이 타당한지 살펴보고자 한다. 

1. 불법사이트 차단의 기술적 원리

정부의 이번 조치를 이해하려면 인터넷 기술에 대한 설명이 필요하다. 기본적으로 사용자는 서버로부터 콘텐츠를 받기 위해서 서버의 IP주소(예: 1.1.1.1)를 알아야 한다. 그러나 사용자가 일일이 모든 인터넷 콘텐츠서비스회사의 서버 IP주소를 외울 수는 없다. 그래서 외우기 쉬운 도메인 이름(예: www.newstof.com)을 주소창에 입력하면 이를 자동으로 IP주소로 변경해주는 DNS(Domain Name Server, Doname Name Service)를 이용한다.

이것은 상대방에게 전화를 걸기 위해서 전화번호를 일일이 외울 수 없어 전화번호와 매칭되는 이름을 저장해놓고 이름만 불러서 사용하는 경우랑 비슷하다. 매칭정보가 저장되어 있는 서버가 DNS서버이다. DNS 역시 별도의 IP주소를 가지고 있는 서버다. KT같은 ISP(Internet Service Provider) 인터넷망을 사용하게 되면 아래 그림처럼 자동으로 DNS서버가 할당된다.

사실 인터넷 사업자(ISP)가 더 많은 인터넷 사용자의 정보를 들여다보고 있다.
DNS서버는 계층을 이루고 있다. 출처: 정보문화사 블로그

결국 이용자가 불법사이트에 접속했을 때 DNS서버 내부에 저장된 불법사이트 정보를 조회해 불법사이트 IP주소가 아닌 다른 주소(http://warning.or.kr/, 121.189.57.82)를 넘겨주는 방식으로 차단한다. 가장 손쉬운 방법으로 이를 DNS차단 방식이라고 한다. 

과거에는 도메인 이름과 연결된 IP 주소를 인터넷사업자가 원천차단할 수 있었다. IP주소를 알고 입력하더라도 접근을 막을 수 있었단 의미다. 하지만 IP주소가 자주 바뀌기도 하고 하나의 IP주소로 여러 도메인명을 매핑하여 서비스하는 웹호스팅 업체들 때문에 지금은 IP 차단 방식을 사용하는 경우는 거의 없다.

IP주소/DNS차단 방식의 경우 프록시서버(중계서버) 혹은 VPN(가상사설망)을 사용하거나, 네트워크 설정에서 DNS서버를 공개된 다른 DNS서버로 변경하면 쉽게 회피할 수 있어 실효성이 없다. 

2013년부터 방통위가 30억원을 들여 개발했던 모바일 앱. 지금은 서비스가 중지됐다

아예 사용자의 PC나 스마트폰에 애플리케이션을 설치하여 클라이언트단에서 차단하는 방식도 있으나 이러한 앱들은 고질적인 프라이버시 침해 논란과 보안취약성 노출에 시달릴 수밖에 없다. 청소년의 전화번호만 알면 부모가 아닌 제 3자가 중간에서 개입하여 통제할 수 있기 때문이다. 그래서 지금은 잘 사용되지 않는다.

 

2. SNI 필터링이 도·감청인가?

현재 논란은 HTTP통신과 HTTPS 통신의 차이를 알아야 이해 가능하다. 두 통신의 암호화 차이가 현재의 접속 규제방식의 차이를 만들어냈기 때문이다. IP주소/DNS 차단방식으로 유해사이트를 막기 시작한 것은 김대중 정부 시절이다. 정보통신윤리위원회가 발족되면서 시작되었지만, 이후 해당방식이 실효성이 없음이 알려지면서 노무현 정부때인 2007년 IP주소/DNS 차단보다 강력한 URL차단 기법을 도입하게 된다.

IP주소/DNS차단은 ISP의 라우터 또는 DNS 서버상에 기록된 불법/유해 사이트 목록과 대조하여 사용자의 주소 입력에 따른 IP요청을 거부하거나 우회시키는 방법이지만 URL차단은 사용자의 통신 패킷을 모두 들여다 보는 것에 해당한다. HTTP통신의 경우 사용자의 요청 패킷중 HTTP 패킷 헤더에 접근하고자 하는 도메인명(호스트명)이 평문(암호화가 안되어 있는 문장)으로 되어 있다. 이를 확인하여 차단하는 방식은 이미 노무현정부 때부터 현재까지 사용되고 있는 방식이다.

데이터 패킷의 헤더 정보에는 “사용자가 어떤 OS와 브라우저로 접근하고 있고, 언어는 무엇이니 그러한 환경에 맞는 해당 주소의 컨텐츠를 이제 보내주세요” 라는 요청 정보가 들어가 있다. 그런데 URL차단 방식 역시 서버와 클라이언트간에 정보전송을 암호화 하는 HTTPS 방식이 확산되면서 무용지물이 된다. 

이 사진은 HTTP로 유해 성인사이트에 접근할 때 분석한 데이터 패킷으로 필자가 직접 시연한 것이다. 각종 개인정보가 노출된다.
데이터 패킷에는 접근하고자 하는 주소명 뿐만이 아니고 내가 사용하는 브라우저, OS등의 정보가 평문으로 전달된다.

일반적으로 클라이언트(사용자)와 서버(콘텐츠 서비스 사업자)사이의 통신은 최초 접속 단계(핸드 셰이크)이후 본격적으로 정보를 주고 받는 통신 과정으로 진행된다. HTTP 방식은 최초의 접속단계부터 이후 데이터 교환까지 클라이언트와 서버 사이의 통신 정보들(여러 개로 나누어진 데이터 패킷들)이 암호화되지 않은 상태로 교환된다. 그래서 과거 모든 패킷을 들여다 볼 수 있는 URL 차단을 활용하면 기존 도메인명(예 : www.정상사이트.com) 접근을 차단할 수 있을 뿐 아니라 서브 페이지 요청(예 : www.정상사이트.com/유해디렉토리/유해사이트.html)까지 필터링 할 수 있었다. 

그러나 HTTPS는 최초 통신 접속 단계를 거친 후 서버와 암호화키를 교환한 후부터는 모든 통신 정보 패킷들이 암호화된다. 정보를 중간에 가로채더라도 그 내용을 해독할 수 없다. 결국 지금까지 사용하던 URL차단 방식을 적용할 수 없는 것이다. 그러나 HTTPS 통신에서도 유일하게 암호화 되어 있지 않은 부분이 최초 연결시(Hand Shake, 도표상에서는 1번 패킷) 접속하려는 주소명(호스트이름) 부분이다(아래 그림 참조). 이 부분을 SNI(Server Name Identification)라고 한다.

간단히 도식화한 HTTPS 통신과정. SNI부분만 암호화 되어 있지 않다.

 

SNI 필터링 방식은 이러한 배경에서 시작되었다. HTTPS통신이라도 최초 연결시(Hand Shake) 사용자가 접속하려는 서버 주소(호스트이름) 부분만 암호화 되어 있지 않아서 이를 인식하여 필터링 하는 것이다. 사실 SNI가 도입된 배경은 HTTPS통신에서 같은 IP로 여러 서비스 도메인을 사용하는 경우 사용자를 목적지인 특정 도메인으로 정확하게 보내주기 위해서다. 

HTTPS에서도 최초 연결시에는 암호화 되지 않은 호스트 정보가 전달된다. 출처: http://hare.kr/221467023336
필자가 패킷 분석기로 확인한 결과,  접근하고자 하는 주소가 SNI필드에 노출되어져 있다.

어차피 최초 접속시 접근하고자 하는 주소 정보는 노출되어 있다. 방통위 조치는 접속할 때 필요한 패킷의 SNI(이미 노출된 정보를 포함한다)를 인식하는 것인데, 이를 가지고 패킷 도·감청이라고 하는 것은 좀 과장된 면이 있다. 

최초 접속을 위한 패킷안의 정보. 출처: brunch.co.kr/@sokoban/22

비유를 하면 다음과 같다. 상대방에게 전화를 걸면 상대방의 스마트폰에 내 번호가 뜬다. 내 번호를 보고 상대방이 귀찮아서 전화를 받지 않거나 끊을 수 있다. 그렇다고 상대방이 내 통신을 도·감청한 것은 아니다. 비슷한 사례가 통신사 서비스에 수신거부 전화번호를 등록하는 일이다. 원치 않는 송신자가 수신자에게 전화를 걸면 통신사는 중간에서 전화를 차단하는데 이 경우에도 통신사가 송신자의 통신을 도·감청했다고 하지는 않는다. 

이런 SNI필터링 기술은 회사 내에서 업무 이외의 사이트에 접근하는 것을 차단하는데 사용되기도 한다. 트래픽 모니터링과 피싱사이트(가짜사이트)를 차단하는 기술에도 역이용되기도 한다. 추가적으로 HTTPS를 사용하더라도 이는 DNS Query(질의)랑은 관계가 없다. DNS 질의 역시 평문으로 전달되는 것이며 암호화를 위해선 별도 프로그램을 깔아주어야 한다.

여기까지가 딱 기술적인 배경이다. 문제는 현행 법률상에 헛점이 많다. 늘 그렇듯 이러한 차단기술은 악용되면 누가 어떤 사이트에 접근하고 있는지 쉽게 알 수 있다. 누가 어디에 접근했다라는 내역 자체가 개인 프라이버시 일 수 있다. 또 정부가 유해 불법 사이트로 규정했지만 실제는 정상적인 사이트 접속을 차단하는 등의 정보통제에 이용될 수 있다. 이 기술이 중국이나 러시아 등 인터넷 규제가 심한 나라에서 사용되는 이유다.   

이런 부작용과 기술의 남용을 막기 위해 예방 정책이 잘 구비되어야 한다. 그런데 정부 발표내용에는 오직 이용자 차단만 들어가 있다. 이는 제약없는 정보의 접근과 공유라는 인터넷 기본 원칙에 위배될 수 있다. 차단의 법률적인 배경은 정보통신망법 제44조의7(불법정보의 유통금지)이다. 법을 보면 차단 대상과 및 규제 대상은 일일이 열거하고 있는 반면, 악용될 소지를 막기위한 예방책이나 개인정보보호를 위한 기술적인 방지책, 위반시 책임에 대한 내용은 포함되어 있지 않다. 개인 차단 내역을 저장하지 않는다는 방침과 이를 제도적으로 어떻게 보장할지가 함께 발표되었어야 했다. 정부가 진정성을 믿으라며 시민들을 설득하기에는 조치가 너무 미흡하다.

최근에는 SNI까지 암호화 화는 ESNI(Encrypted SNI)가 도입된 HTTPS통신 규약이 나왔지만 아직 표준화 합의를 이루지 못했고 이를 통신상에 적용하기 위해서는 사용자 브라우저에서부터 서버단까지 많은 패치들이 이루어져야 하기 때문에 확산되지는 못하고 있다.

SNI 도식화
ESNI: Encrypted SNI

 

3. 막을 수 없는 유해사이트...정부의 어설픈 대응

정부가 SNI 필터링을 도입했지만 이러한 방식 역시 곧 ESNI가 표준으로 도입되고 확산되면 무용지물이 된다. 또한 SNI 필터링을 하더라도 VPN을 사용할 수 있는 브라우저만 있으면 지금도 언제든 우회할 수 있다.

VPN을 지원하는 브라우저로 차단된 사이트를 들어갈 수 있다.

모든 유해 사이트를 완전히 차단할 수 없다. 그럼에도 정부가 계속 새로운 방법을 고민하는 것은 이들 사이트를 통한 불법콘텐츠가 그만큼 넘쳐나고 해를 끼치기 때문이다. 특히 우리 정부가 직접 콘텐츠 삭제를 요청하기 어려운 외국 서비스 사업자들과의 소통 한계 역시 이해한다. 이용자불편을 좀 감수하더라도 몰래카메라와 리벤지 포르노물을 규제해 피해자 발생을 예방하고 청소년이 과도하게 음란물에 노출되는 것을 막아야 한다는 정부의 '선의'도 이해한다.

그러나, 미국 클린턴 행정부 때 FCC 의장이었던 톰 휠러는 이렇게 말했다. “이미 대중에게 엄청난 영향력을 발휘하고 있는 미디어들이 정보를 통제하고 있는 현대사회에서 오직 인터넷만큼은 정치적, 경제적으로 통제되지 않은 정보를 공급하고 수집하며 기관이나 거대 사업자의 도움 없이 소비자 스스로 정보를 교류할 수 있는 유일한 채널로 남아 있다." 자유로운 인터넷이라는 가치가 얼마나 중요한지는 더이상 강조할 필요가 없다. 이 사안 역시 망중립성 논의와 함께 충분한 공론화를 거쳐 결정되었어야 했다. 그런데 정부는 먼저 차단이라는, 가장 '공무원스러운', 일차원적인 대응방법을 내놓은 것이다.  

게다가 이런 논란이 가중되는 상황에서 청와대 국민청원에는 'https'란 단어로 검색이 되지 않아 국민들이 오해를 하고 있다. 언론보도와 청와대에 따르면 이번 방통위 조치 훨씬 이전에 보안상의 이유로 https가 검색이 되지 않게 했다고 한다. 하지만 이런 사실을 모르고 있는 사람도 많다. 정부의 안일한 대응이 더욱 정보통제에 대한 의심을 키우고 있다. 

이 기사를 공유합니다
오늘의 이슈
모바일버전