[보안뉴스 문정후 기자] 정상적으로 보이지만 사실은 악성인 구글 크롬 브라우저용 확장 프로그램이 공식 크롬 웹스토어에 자주 나타나는 것으로 조사됐다. 공식 스토어라고 해도 공격자들 입장에서 뚫어내는 게 그리 어렵지 않기 때문이라고 한다. 구글이 스토어 보호를 위해 여러 가지 시도를 하고 있지만 아직까지는 제대로 효과를 보지 못하고 있는 것으로 보인다.

[이미지 = gettyimagesbank]
이러한 사실을 처음 발견한 건 위스콘신대학의 연구진들이다. 이들은 연구를 목적으로 개념 증명용 악성 플러그인을 개발한 후 공식 크롬 웹스토어에 올리는 데에까지 성공했다고 한다. 구글이 보안성을 위해 해당 플러그인을 점검했지만 아무런 이상을 발견하지 못한 것이었다. 특히 마니페스트 V3(Manifest V3)라는 안전 장치를 도입한 후에 벌어진 일이라는 게 더 충격적이다.
안전 장치 있어도
보안 업체 멀웨어바이츠(Malwarebytes)의 보안 전도사 마크 스토클리(Mark Stockley)는 마니페스트 V3에 대하여 “정상적인 브라우저 플러그인들에는 필요한 접근 권한을 주고 악성 플러그인에는 주지 않는 안전 장치”라고 설명한다. 즉 정상 플러그인들은 효과적으로 기능을 발휘하도록 하고, 악성 플러그인들은 막아내는 장치라는 것으로, 크롬이 도입한 후에는 마이크로소프트의 에지와 모질라의 파이어폭스에도 도입됐다.
마니페스트 V3는 공식 앱 스토어들을 공략하는 전술인 ‘설치 후 업데이트를 통해 악성 기능 추가하기’를 차단하는 기능도 가지고 있는 것으로 알려져 있었다. “마니페스트 V3는 브라우저 플러그인들이 일단 한 번 설치된 후에는 원격의 웹사이트에서 코드를 따로 불러오거나 다운로드 하지 못하도록 합니다. 그러니 나중에 업데이트 등을 통하여 플러그인의 기능이 완전히 바뀌는 일이 일어나지 않습니다. 구글이 크롬 웹스토어에 플러그인을 업로드 하기 전에 해당 플러그인의 정체를 완전히 파악할 수 있도록 해 주고요.”
즉 이론상 완벽한 스토어 지킴이라는 것인데, 현실은 그렇지 않았다. 위에서 언급했듯 위스콘신대학의 연구원들은 마니페스트 V3가 도입된 후에도 크롬 웹스토어를 속이는 방법이 있을 것이라고 생각하고 연구를 진행했고 성공시켰다. “마니페스트 V3가 도입되었음에도 악성 플러그인이 여전히 작동하는 건, 플러그인과 웹 페이지 간 상호작용의 패턴이 변하지 않았기 때문”이라고 연구원들은 설명한다.
“브라우저 플러그인들은 여전히 웹 페이지에 수록되어 있는 모든 콘텐츠에 접근할 수 있습니다. 사용자들이 비밀번호 등 민감한 정보를 입력할 가능성이 있는 텍스트 입력 필드도 여기에 포함됩니다.” 여기에 착안한 연구진은 “챗GPT와 비슷한 기능을 웹사이트에 추가해 주는 플러그인”을 개발했다. 당연히 악성 기능을 감추기 위한 기획이었다. 사용자들이 챗GPT를 이용하기 위해 텍스트 입력 필드를 이용한다는 점, 그리고 챗GPT가 최근 선풍적인 인기를 끌고 있다는 점 때문이었다.
이 가짜 플러그인에는 다음과 같은 세 가지 공격 기능이 탑재되어 있었다.
1) 소스 추출 공격(source extraction attack)
2) 명성 및 신뢰 손상 공격(value attack)
3) 가짜 요소 삽입 공격(element substitution attack)
참고로 연구진들은 이 가짜 플러그인이 점검 과정을 통과해 등록되자마자 삭제했다.
플러그인, 지나치게 권한이 높다
문제의 근원은 브라우저 플러그인들이 웹 페이지들의 문서 객체 모델(Document Object Model, DOM)에 무한정 접근 권한을 가지고 있다는 것이라고 스토클리는 설명한다. “플러그인을 자기 브라우저에 설치한 사용자가 그 브라우저를 사용해 웹사이트를 방문한다면, 그 플러그인은 해당 사이트의 DOM에 마음껏 접근할 수 있습니다. 그런데 DOM이란 건 컴퓨터 메모리 안에 저장되는 웹 페이지의 요약본 같은 겁니다. DOM에서 뭔가를 바꾸면 웹 페이지에도 그대로 반영이 되기도 하고요. 무엇이든 이 DOM에 무한정으로 접근할 수 있다는 건 위험한 일입니다.”
그래서 브라우저 플러그인들은 보기보다 어마어마한 권한을 갖게 된다. “텍스트 입력 필드에 대한 권한도 가지고 있기 때문에 사용자가 거기다가 뭘 입력하든 다 볼 수 있게 됩니다. 일부 플러그인에는 불필요한 권한이지요. 물론 플러그인 개발자가 이러한 권한을 의도적으로 줄이고 삭제할 수 있습니다. 실제로 정상적인 개발자들은 그렇게 하지요. 그래서 모든 플러그인이 다 DOM을 주무를 수 있게 되는 건 아닙니다. 저희가 조사했을 때 약 12.5%의 플러그인이 DOM에 접근하고 있었습니다. 비밀번호 입력 필드에까지 접근 가능한 플러그인은 190개 정도 되는 것으로 파악됐습니다.”
구글은 크롬 생태계에서 악성 플러그인을 몰아내기 위해 지난 수년 동안 말 그대로 전쟁을 치러왔다. 어떤 전장에서는 이겼고, 어떤 전장에서는 졌다. 그러나 보안은 끝없는 강화 작업이기 때문에(즉 멈추지 않는 전투의 현장이기 때문에) 한 번 패배가 영원한 실패가 되지는 않는다. 보완하고 또 보완하면 해커들이 새로운 방법을 개발할 때까지 안전해질 수 있다.
위스콘신대학 연구원들도 이러한 점을 강조하면서 “구글도 브라우저 플러그인 생태계를 보호하기 위해 여러 가지 조치를 취해야 하겠지만, 사용자들도 검증된 플러그인들만 골라 설치하는 습관을 길러야 한다”고 강조했다. “설치하려는 프로그램이나 플러그인이 정말 안전한 건지, 백방으로 알아보는 게 기본 컴퓨터 사용 태도가 되어야 합니다. 위협이 넘쳐나는 시대이니까요.”
글 : 엘리자베스 몬탈바노(Elizabeth Montalbano), IT 칼럼니스트
[국제부 문정후 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>