브라우저 확장 프로그램은 페이지 내용, 쿠키, 프록시 설정, 심지어 로그인 정보까지 접근할 수 있습니다. 이 글에서는 네 가지 권한 유형, 위험한 조합, 팀에서 확장 프로그램을 검토하고 관리하는 실용적인 방법을 정리합니다.
업무 계정에 이미 로그인된 브라우저에 서드파티 확장 프로그램을 설치하는 일은 대개 큰 결정처럼 느껴지지 않습니다. 하지만 확장 프로그램이 받는 권한은 설치한 사람이 생각하는 것보다 더 넓은 경우가 많습니다.

확장 프로그램은 실제로 무엇에 접근할 수 있나
확장 프로그램의 권한 모델은 보통 한 번 승인하면 계속 유효한 방식입니다. 설치할 때 ‘허용’을 누른 뒤에는 무엇을 읽거나 바꿨는지에 대해 다시 알림이 뜨지 않는 경우가 일반적입니다. 영향 범위로 보면 크게 네 가지 유형으로 나눌 수 있습니다.
먼저 페이지 내용입니다. 해당 권한이 있는 확장 프로그램은 사용자가 연 모든 페이지의 텍스트, 양식, 버튼을 읽고 수정할 수 있습니다. 광고 관리 화면이라면 캠페인 데이터, 계정 잔액, 받은편지함을 볼 수 있고, 사용자를 대신해 ‘제출’ 버튼을 누를 수도 있다는 뜻입니다.
쿠키와 로컬 스토리지는 특히 과소평가되기 쉬운 영역입니다. 쿠키에는 로그인 상태가 저장되므로 쿠키를 확보하는 것은 사실상 세션을 확보하는 것과 비슷합니다. LocalStorage에는 토큰, 초안, 인터페이스 설정이 남아 있을 수 있습니다. 확장 프로그램이 사이트 데이터를 읽을 수 있다면 이미 단순히 페이지를 보는 수준을 넘어선 것입니다.
프록시 설정도 중요한 유형입니다. 프록시를 변경할 수 있는 확장 프로그램은 사용자의 모든 트래픽을 자신이 지정한 서버로 보낼 수 있습니다. 이 권한이 악용되어도 경고창이 뜨지 않을 수 있으며, 사용자가 방문한 페이지가 조용히 바뀌는 형태로 나타날 수 있습니다.
로그인 정보와 입력 데이터 역시 민감합니다. 자동 완성이나 비밀번호 관리 확장 프로그램은 사용자가 어떤 사이트에서든 입력한 아이디와 비밀번호를 읽을 수 있습니다. 또 일부 확장 프로그램은 방문 기록과 탭 접근 권한을 요청해, 현재 보고 있는 페이지뿐 아니라 동시에 어떤 페이지를 열어 두었는지까지 알 수 있습니다.
진짜 위험은 권한 조합에 있다
현재 페이지를 읽기만 하고 자체 사이트에서만 작동하는 확장 프로그램이라면 위험은 제한적입니다. 문제는 여러 권한이 함께 있을 때입니다. 페이지 내용을 읽고, 쿠키를 읽고, 자체적으로 네트워크 요청을 보낼 수 있는 조합입니다. 이 세 가지가 모두 있으면 페이지의 데이터를 그대로 묶어 외부로 보낼 수 있어도 화면에는 아무 변화가 보이지 않을 수 있습니다.
여기에 프록시 설정 변경까지 더해지면 트래픽이 어디로 가는지도 사용자가 결정하지 못할 수 있습니다. 확장 프로그램이 원격 업데이트까지 지원한다면 — 사용자가 업데이트를 직접 시작하지 않고 내용도 확인하기 어려울 수 있다면 — 오늘 검토해 승인한 버전과 3개월 뒤 브라우저에서 실행되는 버전이 같지 않을 수 있습니다.
설치 전에 확인할 항목
문제가 생긴 뒤 삭제하는 것보다 설치 전에 몇 분 확인하는 편이 낫습니다.
출처가 명확한가요? 공식 스토어에서 제공되고 관리 주체가 분명한 확장 프로그램이라면 문제가 생겼을 때 최소한 연락할 대상을 찾을 수 있습니다. 출처가 불명확한 ZIP 파일이나 서드파티 모음 사이트에서 받은 버전은 스토어의 검토 단계를 우회합니다.
권한 범위가 기능과 맞나요? 단순히 스프레드시트를 내보내는 확장 프로그램이라면 모든 사이트의 쿠키를 읽거나 프록시를 바꿀 필요가 없습니다. 권한이 기능보다 명백히 넓다면 일단 설치를 보류하는 편이 좋습니다.
개발자와 업데이트 기록도 확인하세요. 변경 로그에 구체적인 수정 내용이 적혀 있는지, 아니면 모호한 표현만 있는지, 마지막 업데이트가 얼마나 오래되었는지, 제기된 문제에 답변이 있는지 살펴봅니다. 오랫동안 유지보수되지 않은 확장 프로그램은 브라우저 엔진 업데이트 후 고장 나도 수정할 사람이 없는 경우가 많습니다.
원격 코드나 원격 설정을 요청하나요? 이는 사용자가 모르는 사이 확장 프로그램의 동작이 바뀔 수 있는지를 결정합니다.
팀에서는 범위를 더 좁혀야 한다
개인은 스스로 조심할 수 있지만 팀에서는 그것만으로 충분하지 않습니다. 사람이 많아질수록 확장 프로그램의 출처가 흩어지고, 문제가 생겼을 때 누가 무엇을 설치했는지 확인하기 어려워집니다.
실용적인 방법은 환경을 분리하는 것입니다. 확장 프로그램이 필요한 환경과 핵심 업무 계정을 사용하는 환경을 나누고, 결제나 주요 관리자 계정은 가능하면 확장 프로그램이 없는 깨끗한 브라우저에서 사용합니다. 그다음 정기적으로 목록을 점검해 사용하지 않거나 출처가 불분명한 확장 프로그램을 제거합니다. 새 확장 프로그램을 설치할 때 용도를 설명하도록 하는 규칙 하나만 추가해도 많은 불필요한 사고를 막을 수 있습니다.
여러 계정과 여러 팀원이 기기를 함께 사용할 때는 PurpleMark로 목적별 독립 브라우저 환경을 만들고, 실험적인 확장 프로그램 환경과 핵심 계정 환경을 분리하는 방식이 관리 가능성을 높이는 일반적인 방법입니다.
확장 프로그램을 무조건 피할 필요는 없습니다. 어떤 권한을 요구하는지 알고 적절한 환경에서 사용한다면 실제로 시간을 절약할 수 있습니다.


