TLS는 주로 웹 애플리케이션과 서버 간의 통신을 암호화하는 방법으로 인터넷 통신에서 개인정보보호와 데이터 보안을 실현하기 위해 광범위하게 사용되는 프로토콜이다. 최신 버전인 TLS 1.3은 2018년에 출시됐다. TLS는 더 보편적으로 알려진 HTTPS 기술의 기반이며, 초대하지 않은 서드파티로부터 통신을 숨기지만 통신을 하는 사용자의 ID 숨김은 보장하지 않는다.
TLS 1.3에는 암호화된 서버 이름 표시(Encrypted Server Name Indication, ESNI)라는 기능이 도입됐다. ESNI가 적용되면 HTTPS 통신을 국가 주도의 검열을 하기가 어렵다. 8월 초, 아이유포트(iYouPort)와 매릴랜드 대학, 만리방화벽 리포트(Great Firewall Report), 3개 단체는 ESNI 확장을 사용한 TLS 연결을 차단하는 중국의 조치에 대한 공동 보고서를 발행했다.
이 단체들은 간단한 파이썬 프로그램을 사용해 만리방화벽이 클라이언트에서 서버로의 ESNI 연결을 차단하고 관련된 IP 주소를 일시적으로 금지한다는 사실을 발견했다. 3개 단체는 앱이나 소프트웨어 또는 서버에서 사용해 중국의 검열 차단을 무력화할 수 있는 여러 우회 기법을 발견했지만 그 효력은 일시적일 것으로 예상했다.
도메인 숨기기로 중국 검열 우회
사이버보안 솔루션 업체 식스젠(SixGen)의 CTO이자 대항 에뮬레이션 책임자인 에릭 헌스태드는 “도메인 프론팅은 죽었다, 도메인 프론팅 만세(Domain Fronting is Dead, Long Live Domain Fronting)”라는 제목으로 진행한 데프콘의 한 발표에서 중국 검열을 우회하는데 더 효과적일 수 있는 다른 방법을 제안했다. 도메인 프론팅의 경우, 규모가 큰 인증서 및 호스팅 제공업체를 사용해 HTTPS의 서로 다른 통신 계층에 서로 다른 도메인 이름을 배포하는 방법으로 인터넷 검열을 우회할 수 있다.헌스태드는 “도메인 프론팅에서 클라이언트는 실제 목적지 도메인이 아닌 프론트 도메인에 연결된다. 도메인 프론팅은 봉투 안의 엽서와 같다. 클라이언트는 봉투 겉면에 CDN(Content Delivery Network)의 주소를 쓰지만, 실제 목적지 도메인은 그 안의 엽서에 있다”라고 설명했다.
CDN은 봉투를 열고 실제 목적지로 엽서를 보낸다. 도메인 프론팅 사용은 2018년 들어 크게 줄었다. 인기 있는 메시징 앱인 텔레그램(Telegram)이 구글과 아마존 클라우드 서비스를 도메인 프론팅에 사용한다는 이유로 러시아 정부가 클라우드 제공업체에 도메인 프론팅 사용을 중지할 것을 종용했기 때문이다. 현재는 마이크로소프트의 애저, 그 외의 일부 소규모 업체에서만 여전히 도메인 프론팅을 허용하고 있다.
도메인 프론팅이 막히자 헌스태드는 검열을 피하기 위한 “도메인 숨기기(Domain Hiding)”라는 새로운 기법을 개발했다. 헌스태드는 이 방법이 “도메인 프론팅과 같은 목표를 달성하지만 사용하는 방법은 다르다”라고 말했다. 헌스태드가 도메인 숨기기를 구현하는 방법은 CDN 분야의 선두 업체인 클라우드플레어(Cloudflare)를 활용하고, 앱에 도메인 DNS 기록 관리를 클라우드플레어에 맡기도록 하는 것이다.
헌스태드는 “TLS 1.3과 실제 목적지 ESNI 간의 연결은 임의의 클라우드플레어 IP로 실행되며, 기반 HTTPS 요청에도 실제 목적지의 호스트 헤더가 있다. 이를 통해 클라우드플레어가 소유한 모든 IP는 클라우드플레어 DNS에 의해 호스팅되는 도메인의 프론트 역할을 하게 된다”라고 설명했다. 헌스태드는 데프콘에서 이 새로운 방법을 사용해 도메인을 숨기는 과정을 자동화하는 녹틸루선트(Noctilucent)라는 새로운 도구를 공개했다.
헌스태드는 “무엇보다 좋은 점은 클라우드플레어 DNS에 가입하기 위한 요건이 최소한이며 무료라는 것이다. 어떤 도메인을 숨기기에 사용할 수 있는가? 많다. 상위 10만 개 사이트의 21% 이상이 클라우드플레어 도메인 뒤에 위치하고, 따라서 이 방법을 사용할 수 있다. 이 10만 개 사이트 목록에는 보안 관련 사이트, 은행, 스포츠, 고등 교육 스트리밍 서비스, 정부 사이트, 그리고 막대한 수의 포르노 사이트까지 매우 다양한 사이트가 포함된다”라고 덧붙였다.
공격 벡터로서의 TLS
보안업체 라타코르타(Latacorta)의 조슈아 매덕스는 “TLS가 해킹할 때(When TLS Hacks You)”라는 제목의 데프콘 발표에서 TLS를 공격 벡터로 사용하는 경우를 주의해야 한다고 경고했다. 매덕스는 SSRF(Server-Side Request Forgery)라는 기존 취약점을 활용해 웹 기반 시스템을 공격하기 위한 메커니즘으로 TLS를 사용할 수 있음을 시연했다.매덕스는 TLS 세션을 어떻게 캐시해 악용할 수 있는지를 설명하면서 “대상을 속여 이상한 도메인 이름을 수락하고 이를 잘못 파싱하도록 유도하는 방법으로 임의의 바이트 등을 집어넣어 SMTP(Simple Mail Transfer Protocol) 명령 등을 몰래 들여보낼 수 있다. Jmaddox.com과 세션을 설정할 때 이 주소가 인터넷 상에 있는 무언가로 해석되든, 자체 시스템으로 해석되든 HTTPS 클라이언트는 그 차이를 알지 못한다”라고 주장했다.
매덕스는 “공격자인 내가 jmaddox.com을 소유하므로 이런 모든 TLS 요소와 DNS 리바인딩이라는 개념을 결합해 새 행을 포함한 임의의 문자가 전송되도록 할 수 있다. 이렇게 하면 공격자는 로컬 서비스와 상호작용할 수 있게 된다. DNS 리바인딩은 도메인 이름 확인을 조작하기 위한 방법이다”라고 설명했다.
매덕스가 발견한 문제의 해결책 가운데 하나는 서버 간 세션을 제거하는 것으로, 매덕스는 올해 초에 크로미엄(Chromium) 팀에 이 방법을 알렸다. 크로미엄은 이 방법을 받아들이진 않았지만 주소가 로컬 주소인지 여부를 기준으로 서버를 분할하는 해결책을 제안했다. 매덕스는 “성능에 영향을 미치지 않으면서 내가 생각할 수 있는 대부분의 공격 시나리오에 대해 보호 효과가 있을 것”이라고 말했다.
매덕스는 그 외에 “이런 부분에 신경이 쓰이는 사용자라면 파이어폭스를 선택해 세션 식별자를 비활성화할 수 있다”라고 조언했다. 웹 애플리케이션의 경우 프록시를 통해 아웃바운드 요청을 실행하고 인프라에 대해 내린 결정을 재검토하는 것이 좋다.
매덕스는 “대부분의 브라우저에서 TLS를 통해 일반 SSRF를 허용하고 이미지 태그를 통해 CSRF(Cross-Site Request Forgery)를 허용하는 TLS 포이즌(TLS Poison)이라는 도구를 발표했다. TLS 포이즌의 모든 부분을 제대로 설정하면 TLS 세션 중독(session poisoning) 및 DNS 리바인딩 단계가 모두 완전히 기능하게 된다. editor@itworld.co.kr
함께 보면 좋은 콘텐츠
Sponsored
Surfshark
“유료 VPN, 분명한 가치 있다” VPN 선택 가이드
ⓒ Surfshark VPN(가상 사설 네트워크, Virtual Private Network)은 인터넷 사용자에게 개인 정보 보호와 보안을 제공하는 중요한 도구로 널리 인정받고 있다. VPN은 공공 와이파이 환경에서도 데이터를 안전하게 전송할 수 있고, 개인 정보를 보호하는 데 도움을 준다. VPN 서비스의 수요가 증가하는 것도 같은 이유에서다. 동시에 유료와 무료 중 어떤 VPN을 선택해야 할지 많은 관심을 가지고 살펴보는 사용자가 많다. 가장 먼저 사용자의 관심을 끄는 것은 별도의 예산 부담이 없는 무료 VPN이지만, 그만큼의 한계도 있다. 무료 VPN, 정말 괜찮을까? 무료 VPN 서비스는 편리하고 경제적 부담도 없지만 고려할 점이 아예 없는 것은 아니다. 보안 우려 대부분의 무료 VPN 서비스는 유료 서비스에 비해 보안 수준이 낮을 수 있다. 일부 무료 VPN은 사용자 데이터를 수집해 광고주나 서드파티 업체에 판매하는 경우도 있다. 이러한 상황에서 개인 정보가 유출될 우려가 있다. 속도와 대역폭 제한 무료 VPN 서비스는 종종 속도와 대역폭에 제한을 생긴다. 따라서 사용자는 느린 인터넷 속도를 경험할 수 있으며, 높은 대역폭이 필요한 작업을 수행하는 데 제약을 받을 수 있다. 서비스 제한 무료 VPN 서비스는 종종 서버 위치가 적거나 특정 서비스 또는 웹사이트에 액세스하지 못하는 경우가 생긴다. 또한 사용자 수가 늘어나 서버 부하가 증가하면 서비스의 안정성이 저하될 수 있다. 광고 및 추적 위험 일부 무료 VPN은 광고를 삽입하거나 사용자의 온라인 활동을 추적하여 광고주에게 판매할 수 있다. 이 경우 사용자가 광고를 보아야 하거나 개인 정보를 노출해야 할 수도 있다. 제한된 기능 무료 VPN은 유료 버전에 비해 기능이 제한될 수 있다. 예를 들어, 특정 프로토콜이나 고급 보안 기능을 지원하지 않는 경우가 그렇다. 유료 VPN의 필요성 최근 유행하는 로맨스 스캠은 인터넷 사기의 일종으로, 온라인 데이트나 소셜 미디어를 통해 가짜 프로필을 만들어 상대를 속이는 행위다. 이러한 상황에서 VPN은 사용자가 안전한 연결을 유지하고 사기 행위를 방지하는 데 도움이 된다. VPN을 통해 사용자는 상대방의 신원을 확인하고 의심스러운 활동을 감지할 수 있다. 서프샤크 VPN은 구독 요금제 가입 후 7일간의 무료 체험을 제공하고 있다. ⓒ Surfshark 그 외에도 유료 VPN만의 강점을 적극 이용해야 하는 이유는 다음 3가지로 요약할 수 있다. 보안 강화 해외 여행객이 증가함에 따라 공공 와이파이를 사용하는 경우가 늘어나고 있다. 그러나 공공 와이파이는 보안이 취약해 개인 정보를 노출할 위험이 있다. 따라서 VPN을 사용하여 데이터를 암호화하고 개인 정보를 보호하는 것이 중요하다. 서프샤크 VPN은 사용자의 개인 정보를 안전하게 유지하고 해킹을 방지하는 데 유용하다. 개인정보 보호 인터넷 사용자의 검색 기록과 콘텐츠 소비 패턴은 플랫폼에 의해 추적될 수 있다. VPN을 사용하면 사용자의 IP 주소와 로그를 숨길 수 있으며, 개인 정보를 보호할 수 있다. 또한 VPN은 사용자의 위치를 숨기고 인터넷 활동을 익명으로 유지하는 데 도움이 된다. 지역 제한 해제 해외 여행 중에도 한국에서 송금이 필요한 경우가 생길 수 있다. 그러나 IP가 해외 주소이므로 은행 앱에 접근하는 것이 제한될 수 있다. VPN을 사용하면 지역 제한을 해제해 해외에서도 한국 인터넷 서비스를 이용할 수 있다. 따라서 해외에서도 안전하고 편리하게 인터넷을 이용할 수 있다. 빠르고 안전한 유료 VPN, 서프샤크 VPN ⓒ Surfshark 뛰어난 보안 서프샤크 VPN은 강력한 암호화 기술을 사용하여 사용자의 인터넷 연결을 안전하게 보호한다. 이는 사용자의 개인 정보와 데이터를 보호하고 외부 공격으로부터 사용자를 보호하는 데 도움이 된다. 다양한 서버 위치 서프샤크 VPN은 전 세계 곳곳에 여러 서버가 위치하고 있어, 사용자가 지역 제한된 콘텐츠에 액세스할 수 있다. 해외에서도 로컬 콘텐츠에 손쉽게 접근할 수 있음은 물론이다. 속도와 대역폭 서프샤크 VPN은 빠른 속도와 무제한 대역폭을 제공하여 사용자가 원활한 인터넷 경험을 누릴 수 있도록 지원한다. 온라인 게임, 스트리밍, 다운로드 등 대역폭이 필요한 활동에 이상적이다. 다양한 플랫폼 지원 서프샤크 VPN은 다양한 플랫폼 및 디바이스에서 사용할 수 있다. 윈도우, 맥OS, iOS, 안드로이드 등 다양한 운영체제 및 디바이스에서 호환되어 사용자가 어디서나 안전한 인터넷을 즐길 수 있다. 디바이스 무제한 연결 서프샤크 VPN은 무제한 연결을 제공하여 사용자가 필요할 때 언제든지 디바이스의 갯수에 상관없이 VPN을 사용할 수 있다.