0w0
[HTTP] HTTP와 HTTPS 본문
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가 누구인지 출발지가 어딘지 언제인지 등 특정할 수 있어 감청이라고 하는 것
'Header' 카테고리의 다른 글
[HTTP] HTTP 응답 코드 (0) | 2020.11.24 |
---|---|
[HTTP] HTTP/1.0과 HTTP/1.1 차이로 HTTP/1.1이 갖는 특징 (0.1 눈높이) (0) | 2019.02.10 |
[HTTP 헤더] X-Forwarded-For (XFF) (0) | 2019.02.08 |