파이어폭스 v85.0 이후 ESNI를 대체하는 ECH 설정 방법 정리
파이어 폭스 웹브라우저의 최신 암호화 연결 기술인 ECH를 적용하는 방법입니다.
파이어폭스에서는 사용자의 보안을 위해 계속해서 많은 최신 기술을 적용하고 있습니다.
처음에는 SNI를 지원했지만 문제가 있어서 이를 개선한 우회 접속방법으로 많이 알려진 ESNI를 적용하게 되었는데 ESNI도 부족함이 있어서 최신 기술인 ECH를 도입한다고 합니다.
ECH는 Encrypted Client Hello의 약자로 서버와 통신을 시작하는 단계부터 모두 암호화한다는 의미입니다.
모든 통신이 암호화되면 외부에서 패킷을 훔쳐봐도 내용을 알 수 없기 때문에 목적지 주소 등의 내용이 노출되지 않아서 보안이 강화 되게 됩니다.
이번 파이어폭스 85.0 버전 업데이트로 ESNI의 지원이 종료되고 ECH가 적용됐지만 자동 적용이 아니고 파이어폭스 버전업에 따라 계속 기능이 추가될 예정이기 때문에 현 버전에서 ECH 기능을 활성화 하는 방법을 정리합니다.
이후 파이어 폭스 버전업으로 ECH 설정 방법이 변경되면 내용을 수정하도록 하겠습니다.
ECH도 ESNI와 동일하게 서버에서 해당 기능을 지원해야 동작이 가능한 데 아직 지원하는 서버가 거의 없어서 실제 효과는 거의 없는 상황입니다.
시간이 지나서 ECH를 지원하는 서버가 늘어나야 효과가 있을 것으로 생각됩니다.
※ 파이어 폭스 공지 - ECH
https://blog.mozilla.org/security/2021/01/07/encrypted-client-hello-the-future-of-esni-in-firefox/
△ Encrypted Client Hello: the future of ESNI in Firefox
ESNI의 종료와 ECH의 설명, 활성화 방법이 나와있는 공식 블로그입니다.
위 블로그 내용을 확인하면 ECH에 대한 정보를 확인할 수 있으니 보면 좋을 거 같습니다.
내용을 대충 요약해보면
ESNI로는 부족하기 때문에 파이어폭스 85버전부터 국제인터넷 표준화 기구에서 8번째로 제출된 표준안인 'TLS Encrypted Client Hello draft-ietf-tls-esni-08' ECH 기술을 적용한다고 합니다.
ECH는 서버 연결에서부터 암호화를 하는 방법이고 이전 ESNI와 동일하게 서버에서 ECH를 지원해야 동작이 가능합니다.
ESNI는 ECH로 대체되었기 때문에 사용이 불가능합니다.
ESNI를 조금 더 사용하고 싶다면 파이어폭스 ESR 버전은 한동안 계속 지원할 예정이니 ESR 버전을 설치해서 사용하라고 합니다.
(https://www.mozilla.org/ko/firefox/all/#product-desktop-esr : 파이어폭스 ESR 다운로드 페이지)
파이어 폭스에서 ECH 관련 기능은 85버전부터 계속 업데이트할 예정이고 85버전에서 미리 ECH를 사용해 보고 싶은 경우 network.dns.echconfig.enabled, network.dns.use_https_rr_as_altsvc 두 옵션을 활성화하면 된다고 합니다.
※ 파이어 폭스 85 ECH 설정하기
아래 설정은 파이어폭스 85 버전에서 ECH를 설정하는 방법입니다.
파이어폭스 버전이 올라가면 방법이 변경될 수 있으니 참고 바랍니다.
ECH 설정 전에 85.0 버전에서 기존 ESNI 설정을 확인한 스샷입니다.
85.0 버전에서는 고급 설정에 ESNI 항목이 사라진 것을 확인할 수 있습니다.
ESNI 설정을 활성화한 상태에서 85 버전으로 업데이트한 경우 'network.security.esni.enabled' 항목이 보일 수 있는데 삭제된 옵션이라서 흔적만 있는 것으로 동작을 하지는 않습니다.
ESNI 설정을 좀 더 사용하고 싶으면 파이어 폭스 ESR 버전을 사용하면 됩니다.
파이어폭스 정신 버전과 ESR 버전을 경로를 변경해서 설치하면 둘 다 사용이 가능하니 참고 바랍니다.
ECH 설정은 아직 기본 메뉴에서 설정이 불가능하고 고급 설정에서 설정을 해야 합니다.
주소 줄에 'about:config'를 입력하고 위 화면이 나오면 '위험을 감수하고 계속 진행'을 클릭합니다.
고급 설정 페이지입니다.
echconfig를 검색합니다.
검색 결과 중 'network.dns.echconfig.enabled' 항목을 더블 클릭하거나 설정/해제 버튼을 클릭해서 false를 true로 변경합니다.
network.dns.echconfig.enabled 값이 true로 변경된 스샷입니다.
위와 같은 방법으로 'use_https_rr_as_altsvc'를 검색해서 'network.dns.use_https_rr_as_altsvc' 값을 true로 변경해 줍니다.
network.dns.echconfig.enabled 와 network.dns.use_https_rr_as_altsvc 값을 true로 변경한 후 파이어 폭스를 다시 실행해 주면 설정 완료입니다.
아직은 ECH를 지원하는 사이트가 없어서 큰 효과가 없습니다.
시간이 지나서 ECH를 지원하는 사이트가 늘어나야 효과를 볼 것으로 생각됩니다.
그전까지 파이어폭스 ESR 버전을 설치해서 ESNI를 사용하는 것도 좋을 거 같습니다.
※ 파이어폭스 ESNI 설정 방법
https://rootblog.tistory.com/189
△ 파이어폭스 우회 설정 방법 정리
https://rootblog.tistory.com/132
△ 파이어폭스 웹브라우저에 Encrypted SNI 설정하기