웹 환경에서 Google 크롬은 이미 일부 ‘혼합 콘텐츠’ 유형을 제한하고 있었습니다. 하지만 최근 구글은 공식 발표를 통해 더욱 강력한 조치를 취할 것임을 밝혔습니다. 2020년 초부터 크롬은 모든 혼합 콘텐츠를 기본적으로 차단하여 일부 기존 웹 페이지의 작동에 영향을 줄 수 있습니다. 이에 대한 자세한 내용을 살펴보겠습니다.
혼합 콘텐츠란 무엇인가?
혼합 콘텐츠는 두 가지 주요 유형으로 나눌 수 있습니다. 첫째, 암호화된 보안 HTTPS 연결을 통해 전달되는 콘텐츠가 있으며, 둘째, 암호화되지 않은 HTTP 연결을 통해 전송되는 콘텐츠가 있습니다. HTTPS를 사용하는 이유는 전송 과정에서 콘텐츠가 감시되거나 조작될 가능성을 방지하기 위함입니다. 특히 금융 정보나 개인 데이터와 같이 민감한 정보를 다루는 웹사이트에서 암호화가 필수적으로 요구되는 이유입니다.
웹은 점차 보안 HTTPS 웹사이트 중심으로 이동하고 있습니다. 기존 HTTP 웹사이트에 접속하는 경우, 구글 크롬은 해당 사이트를 ‘안전하지 않음’으로 경고합니다. 이러한 이유로 구글은 이제 기본적으로 ‘https://’ 표시를 숨깁니다. 사이트는 기본적으로 안전해야 하며, 새로운 HTTP/3 표준에는 암호화 기능이 내장되어 있습니다.
그러나 일부 웹 페이지는 완전히 HTTPS도, 완전히 HTTP도 아닌 중간 형태를 가지고 있습니다. 이러한 웹 페이지는 보안 HTTPS 연결을 통해 전송되지만, 이미지, 스크립트 또는 기타 리소스들을 암호화되지 않은 HTTP 연결을 통해 가져옵니다. 이러한 페이지를 ‘혼합 콘텐츠’라고 부르며, 완전하게 안전하다고 볼 수 없습니다. 웹 페이지 자체는 변조하기 어렵지만, 스크립트, 이미지 또는 iframe(다른 웹 페이지의 ‘프레임’ 내부 웹 페이지)은 변조될 가능성이 있습니다.
혼합 콘텐츠가 위험한 이유
혼합 콘텐츠는 사용자에게 혼란을 줄 수 있습니다. 안전한 웹 페이지를 보고 있다고 생각했지만, 실제로는 안전하지 않은 요소들이 포함되어 있을 수 있습니다. 예를 들어, 안전한 웹 페이지에서 HTTP를 통해 JavaScript 파일을 가져오는 경우, 공용 Wi-Fi 네트워크와 같이 신뢰할 수 없는 환경에서는 해당 스크립트가 악의적으로 수정될 수 있습니다. 이렇게 되면 키 입력 모니터링, 추적 쿠키 삽입 등 여러 불쾌한 행위가 웹 페이지에서 수행될 수 있습니다.
스크립트와 iframe(‘활성 콘텐츠’)이 가장 위험하지만, 이미지, 비디오 및 오디오 혼합 콘텐츠도 문제가 될 수 있습니다. 예를 들어, 보안이 유지된 주식 거래 웹사이트에서 HTTP를 통해 주식 시세 이미지를 가져오는 경우, 해당 이미지가 중간에서 변조되어 잘못된 정보를 표시할 수 있습니다. 또한, 암호화되지 않은 연결을 통해 전송되기 때문에, 데이터를 스누핑하는 사람은 사용자가 보고 있는 주식을 알 수 있게 됩니다.
혼합 콘텐츠 사용은 웹 환경에서 바람직하지 않습니다. 웹 페이지가 HTTPS를 사용하는 경우, 모든 리소스도 HTTPS를 통해 가져와야 합니다. 웹은 HTTP로 시작되었고, 웹사이트들은 점진적으로 HTTPS로 업그레이드되는 과정을 거쳤습니다. 하지만 모든 웹사이트가 모든 리소스를 HTTPS로 업데이트하지는 않았습니다. 때로는 HTTPS를 지원하지 않는 타사 리소스에 의존하기도 했습니다.
구글 및 기타 브라우저 공급업체들이 혼합 콘텐츠 사용을 어렵게 만들고 있으며, 웹사이트는 이러한 변화에 맞춰 웹 페이지가 정상적으로 작동하도록 수정해야 합니다.
크롬의 구체적인 변경 사항
크롬은 이미 혼합 스크립트와 iframe을 차단하고 있습니다. 2020년 1월에 크롬 80이 초기 릴리스 채널에 도입되면서, 혼합 오디오 및 비디오 리소스도 차단될 예정입니다. 이는 기술적으로 보안 HTTPS 연결을 통해 로드하려 시도하지만, 그렇지 않으면 차단하는 방식입니다. 혼합 이미지는 로드되지만, 크롬은 해당 웹 페이지를 ‘안전하지 않음’으로 표시합니다. 크롬 81부터는 혼합 이미지 로드도 중지됩니다. 사용자는 혼합 콘텐츠 로드를 허용할 수 있지만, 이는 기본 설정이 아닙니다.
이러한 변화는 모두 웹을 더욱 안전하게 만들기 위한 노력의 일환입니다. 구글은 ‘안전하지 않음’ 메시지가 웹사이트가 HTTPS로 이미지를 마이그레이션하도록 유도할 것으로 기대하고 있습니다.
크롬에서 혼합 콘텐츠 차단 해제 방법
크롬은 주소 표시줄의 방패 아이콘과 ‘안전하지 않은 콘텐츠 차단됨’ 메시지를 통해 일부 유형의 혼합 콘텐츠를 이미 차단하고 있습니다. Google에서 제공하는 혼합 콘텐츠 예시 페이지에서 이러한 작동 방식을 확인할 수 있습니다. 예를 들어, 혼합 콘텐츠 스크립트의 차단을 해제하려면 ‘안전하지 않은 스크립트 로드’ 링크를 클릭해야 합니다.
혼합 콘텐츠 실행에 동의하면, 웹 페이지의 보안 상태가 ‘안전함’에서 ‘안전하지 않음’으로 변경됩니다.
2019년 12월에 출시된 크롬 79에서는 이 과정이 더욱 간편해질 예정입니다. 페이지 주소 왼쪽에 있는 자물쇠 아이콘을 클릭하고 ‘사이트 설정’을 선택한 다음, 해당 사이트에 대한 혼합 콘텐츠 차단을 해제할 수 있습니다.
이러한 옵션이 다소 복잡해졌지만, 대부분의 사용자는 사이트에서 혼합 콘텐츠를 활성화할 필요가 없을 것입니다. 웹사이트 개발자는 리소스를 안전하게 제공하도록 웹사이트를 수정해야 합니다. 혼합 콘텐츠 사용이 필요한 경우에도, 이전 비즈니스 사이트를 사용하는 사용자들이 계속 액세스할 수 있도록 이러한 옵션이 제공됩니다.
만약 혼합 콘텐츠를 계속 사용해야 하는 사이트가 있다면 걱정하지 않아도 됩니다. Google은 크롬에서 혼합 콘텐츠 로드 옵션을 제거하는 시점을 아직 발표하지 않았습니다. Google 웹 브라우저는 기본적으로 모든 혼합 콘텐츠를 차단하지만, 가까운 시일 내에 혼합 콘텐츠 활성화 옵션을 계속 제공할 것입니다.
다른 브라우저는 어떻게 대응하고 있는가?
크롬만이 이러한 변화를 추진하고 있는 것은 아닙니다. Firefox 또한 스크립트 및 iframe과 같은 혼합 콘텐츠를 차단하며, “보호 기능 비활성화” 설정을 통해 다시 활성화할 수 있습니다. Mozilla 역시 Google의 움직임을 따를 것으로 예상됩니다. Apple의 Safari도 혼합 콘텐츠를 적극적으로 차단하고 있습니다.
물론 Microsoft의 새로운 Edge 브라우저는 크롬과 동일한 Chromium 코드를 기반으로 하므로, 크롬과 유사하게 작동합니다.