작심삼일
문정부의 https의 SNI 차단 원리에 대해 본문
HTTPS란?
Hyper Text Transfer Protocol Secure의 약자로
일반 HTTP와는 달리 SSL(Secure Socker Layer) 서버와의 통신 즉, 패킷을 암호화 하는 규약이다.
문정부의 문제점
문정부가 불법 음란물 사이트, 도박 사이트 등을 규제 한다며
https를 원천적으로 차단하는 정책을 시행하고 있다.
불법 음란물 사이트나 도박 사이트를 규제하는 건 당연히 해야하지만
HTTPS를 차단한다는 건 정부가 인터넷을 검열 한다는 뜻이다.
HTTPS 자체는 보안을 위해 도입이 된건데 정부가 개입을 하여
검열을 한다는 건 노출이 된다는 의미이기 때문에
그렇다면 https 프로토콜을 사용하는 의미가 없어져버린다.
대한민국이 공산당으로 변하고 있어 참 큰일이다
원리
현재 HTTPS를 SNI 필드를 식별해서 연결을 끊어버리는 방식인데
MTU 값만 바꿔주면 쉽게 우회가 가능하다.
MTU는 Max Transmission Unit의 약자로
한번 보낼 데이터의 크기를 뜻하는데 기본값은 1500 byte로 400 미만으로 줄이면
Client Hello 패킷이 2개로 분할되어 전송 되기 때문에 우회가 가능하다.
방법
명령 프롬프트를 관리자 권한으로 실행 후에 아래와 같이 명령어를 입력한다.
netsh interface ipv4 show interface
MTU값을 변경하기 위해서는 색인과 인터페이스 이름을 알아야하는데,
인터페이스 이름 이더넷, 그리고 색인 넘버만 기억 해준다.
그리고 다음과 같이 입력해준다.
netsh interface ipv4 set subinterface "17" mtu="400"
확인됨이라는 메시지가 뜨면 정상적으로 MTU 값이 변경 된 것이다.
이후에 처음 입력했던 show interface 명령어를 입력해서 MTU 값이 제대로 변경 되었는지 확인한다.
이렇게 하면 MTU 값으로 간단하게 HTTPS 우회가 가능하다.
참고로 MTU값을 400으로 설정해두면 사람인이나 잡코리아 등 몇가지 사이트들이 접속 안되기 때문에
우회한 사이트를 다 접속했다면 MTU을 기본값인 1500으로 다시 설정 해주길 바란다.
'Network' 카테고리의 다른 글
NET::ERR_CERT_COMMON_NAME_INVALID 해결 (2) | 2021.01.05 |
---|---|
와이어샤크(wireshark)와 로컬 보안 정책으로 DDoS 공격을 차단해보자 (0) | 2019.03.17 |