2021년 11월, 사용자 프라이버시를 위협하는 사파리(Safari) 버그가 온라인에서 화제가 되었습니다. 아이폰, 아이패드, 맥 등 여러 기기의 사파리 사용자에게 영향을 미치는 이른바 'Safari 15 IndexedDB 버그'는 웹사이트가 원래 접근해서는 안 되는 데이터베이스 정보에 접근할 수 있게 만드는 문제입니다.
쉽게 말해, 사파리에서 방문 중인 웹사이트가 내가 다른 어떤 사이트들을 방문했는지 엿볼 수 있다는 뜻입니다. 이번 글에서는 이 문제의 실체와 함께 스스로를 보호할 수 있는 방법까지 자세히 알아보겠습니다.
Safari 15 버그는 구체적으로 무엇을 하는 문제일까?
브라우저 핑거프린팅 전문 기업 FingerprintJS의 분석에 따르면, Safari 15의 IndexedDB API는 동일 출처 정책(same-origin policy)을 위반합니다. 이 취약점으로 인해 사파리 사용자가 방문한 웹사이트는 다른 탭이나 창에서 열려 있는 사이트들까지 확인할 수 있게 됩니다.
여기서 끝이 아닙니다. 이 버그는 모든 도메인의 데이터베이스 이름까지 노출시키는데, 해커는 이를 활용해 사용자를 식별할 수 있는 정보를 추출할 수 있습니다. 데이터베이스의 실제 내용까지 열람되지는 않지만, 이런 방식의 데이터 스크래핑은 충분히 우려할 만한 보안 위협입니다.
FingerprintJS는 해커가 구글 사용자 ID를 통해 브라우저 정보를 확보하고 사용자를 표적 삼을 수 있다고 지적했습니다. 유튜브나 구글 캘린더 같은 서비스를 이용하는 것만으로도, 사파리 사용자는 본인의 의도와 무관하게 공개 정보를 다른 웹사이트에 노출할 위험에 처하게 됩니다.
또한 이 취약점은 서로 관련 없어 보이는 여러 계정을 하나의 온라인 프로필로 묶어낼 수도 있습니다. 온라인상에서 자신의 정체성을 분산해 관리하려는 사람들에게는 상당히 곤란한 상황인 셈입니다.
직접 확인해 보고 싶다면, FingerprintJS가 공개한 라이브 데모를 이용해 볼 수 있습니다. 이 데모는 자주 방문하는 30개 웹사이트를 대상으로 취약점이 실제로 어떻게 작동하는지 시뮬레이션해 줍니다.
데모 페이지에서는 방문한 사이트를 기준으로 브라우저에서 몇 개의 데이터베이스가 새어 나가고 있는지 확인할 수 있으며, 조건이 맞는 경우 고유한 구글 사용자 ID와 프로필 사진까지 드러날 수 있습니다.
2022년 1월 기준으로 애플 엔지니어들이 GitHub에서 해당 문제 수정 작업에 착수한 모습이 확인되었습니다. 이상적으로는 사파리가 자신과 동일한 도메인 이름으로 생성된 데이터베이스만 볼 수 있도록 제한해야 합니다. 당시 기준으로 아이폰, 아이패드, 맥의 모든 최신 사파리 버전에서 이 버그가 발생하고 있었습니다.
업데이트: 2022년 1월 27일, 애플은 iOS 15.3을 배포하며 Safari 15의 보안 결함 해결을 약속했습니다. 이 수정 사항의 혜택을 받으려면 애플 기기를 최신 소프트웨어로 업데이트하세요.
Safari 15 버그로부터 나를 지키는 방법
애플이 업데이트로 문제를 완전히 해결하기 전까지, 사파리 사용자들이 활용할 수 있는 임시 대처법들이 있습니다. 지금 당장 실천할 수 있는 방법들을 정리해 보았습니다.
공개된 개인정보 정리하기
Safari 15 버그는 데이터베이스를 적극적으로 악용하기 때문에, 수집될 수 있는 데이터의 양을 줄이는 것이 현명합니다. 구글 ID 자체를 없앨 수는 없지만, 그 ID에 연결되는 정보를 최소화할 수는 있습니다. 예를 들어 구글 프로필 사진을 삭제하거나, 구글 계정 이름을 일시적으로 변경하는 방법이 있습니다.
개인 데이터 분산 관리하기
새로운 버그가 사파리에서 별개의 온라인 계정들을 연결시킬 수 있다 하더라도, 해커가 유의미한 데이터를 뽑아내기 어렵게 만드는 것은 가능합니다. 이를 위해서는 개인 데이터를 적극적으로 분산하는 것이 좋습니다. 여러 개의 이메일 주소를 만들어 사용하거나, 싱글 사인온(SSO) 서비스 이용을 피하는 등의 방법이 대표적입니다.
불필요한 웹서핑 줄이기
애플이 Safari 15 버그를 해결하기 전까지는, 데이터를 맡기기 불안한 낯선 웹사이트 방문을 줄이는 것이 좋습니다. 실제로 평판이 좋아 보이는 사이트라고 해서 이 취약점을 악용하지 않으리라는 보장도 없습니다. 이런 이유로 아이폰의 스크린 타임(Screen Time) 기능을 활용해 오프라인 시간을 늘리는 것도 좋은 방법입니다.
다른 브라우저 사용하기
그래도 걱정된다면 다른 브라우저로 갈아타는 것을 고려해 볼 수 있습니다. 다행히 뛰어난 프라이버시 보호 기능을 제공하는 대체 브라우저는 생각보다 많습니다.
잠시 사파리에 휴식을 주자
이 버그의 가장 큰 문제는 사용자가 아무것도 하지 않아도, 단순히 사파리 탭이나 창을 열어두기만 해도 브라우저 데이터가 악용될 수 있다는 점입니다. 안타깝게도 Safari 15 버그는 사파리의 시크릿 모드(Private Browsing)에도 영향을 미치기 때문에, 시크릿 모드 역시 완벽한 해결책이 되지 못합니다.
그럼에도 안전한 브라우징을 위해 할 수 있는 작은 실천들은 여럿 있습니다. 애플의 공식 소식이나 관련 이슈를 소셜 미디어에서 팔로우하면 개발자들이 문제를 해결했을 때 빠르게 알아챌 수 있습니다.