0w0

[HTTP] HTTP와 HTTPS 본문

Header

[HTTP] HTTP와 HTTPS

0w0 2019. 2. 13. 21:53
728x90
반응형


1. HTTP

- HyperText Tranfer Protocol

- World Wide Web(WWW, W3)라는 웹 상에서 정보를 주고 받기 위한 프로토콜

- Client 와 Server 사이에 요청과 응답을 가지기 위한 프로토콜

- Client의 웹페이지 요청 -> Server의 웹페이지 응답

- TCP, UDP 사용이 가능하며, 알려진 포트로 80번 포트를 사용

- "http:"를 URL로 가지며 HTTP를 사용한 정보 요청/응답을 수행



2. HTTPS

- HyperText Tranfer Protocol Secure

- HTTP(HyperText Tranfer Protocol) + SSL(Secure Socket Layer)

- 기존 HTTP 기능을 모두 가지며 통신상의 인증과 암호화 기능을 추가한 보안이 강화된 것

- 통신 중 SSL, TLS 프로토콜을 통해 세션 암호화를 가짐

- 통신 중 세션 암호화는 공개키 암호화 방식을 사용

- TCP/IP 프로토콜이며, 알려진 포트로 443번 포트를 사용

- "https:"를 URL로 가지며 HTTPS를 사용한 정보 요청/응답을 수행

- Netscape Communications 라는 인터넷 및 통신 S/W 회사에서 개발되어 상용됨

- HTTPS의 우회 용도 사용

○ 1. 접속 차단 웹 사이트에 기존 HTTP에서 S라는 문자를 붙여서 url 요청을 전송

○ 2. 암호화가 되었든 안되었든 HTTPS는 암호화 취급되어 전송되는 것

○ 3. 암호화되어 있지 않은 HTTP만을 주로 차단하는 보안 장비(WAP, IPS, IDS 등)를 우회



3. 최근 한국 정부에서 진행하는 HTTPS 차단은 HTTPS를 통한 우회 접속 및 통신을 차단한다는 말!


하지만 HTTPS 차단을 위한 보안 장비 운영은 곧 HTTPS의 본연의 기능인 암호화 통신을 저해하는 것을 의미하기도 함.


또한 다른 말로 HTTPS 의 요청 URL을 정부에서 확인해서 차단한다는 건 이미 모든 URL을 감청할 수 있고 이미 몇가지는 하고 있다고 봐도 무방함


그런데 암호화 되었는데 어떻게 URL를 감청하는 것인가? 그것은 URL 정보가 암호화되어 실질적으로 웹 서버에 접근하기 전에 확인하고 차단을 걸기 때문임


감청 방식은 간단함. HTTPS 통신 요청 생성 중 SNI 필드에 요청하는 서버의 이름이 노출되어 있는데 해당 ServerName을 가지고 암호화되기전 ISP(KT, SKT, U+, 인터넷통신 제공 업체) 단에서 SNI필의 ServerName을 확인해서 차단하는 원리이다.


정부가 HTTPS를 차단한다라는 말을 정확히 말하자면 HTTPS의 SNI 필드에 나타난 SeverName을 웹 페이지 요청 중 차단하는 것이고, 이러한 방식은 Client가 누구인지 출발지가 어딘지 언제인지 등 특정할 수 있어 감청이라고 하는 것


728x90
반응형
Comments