미국의 다국적 IT 회사 구글이 야심 차게 내놓은 웹 브라우저 크롬(Chrome)은 다른 웹 브라우저보다 늦게 시작했다. MS에서 공식적으로 사용하는 IE, 리눅스에서 사용하는 파이어폭스, 애플에서 사용하는 사파리 등 여러 웹 브라우저가 크롬보다 먼저 나왔지만, 형뻘인 다른 웹 브라우저를 누르고 크롬은 전 세계 점유율 1위를 차지했다.[1][2] 조금 더 정확히 말하면 1위라는 건 조사한 단체마다 조금씩 다르지만, 구글의 크롬이 상당수 상위권을 차지하며 많은 사용자를 보유하고 있다는 것은 공통된 사실이다.[3] 이런 인기에 사용자가 크롬을 사용하는 이유도 가지각색이다. 특히, 유연하게 사용할 수 있는 구글의 확장 프로그램은 단연코 크롬의 장점 중 하나다. 하지만 며칠 전 크롬의 확장 프로그램을 도용한 사건이 있었으니, 오늘은 이 사건에 대해 이야기해 볼까 한다.[4]
크롬의 확장 프로그램은 프로세스 하나당 확장기능 하나가 할당되어 크롬을 실행하는 와중에도 자유롭게 다른 확장 프로그램을 설치하거나 제거하는 등 자유롭게 제어할 수 있다.[5] 더불어, 구글 확장 프로그램은 여러 확장 프로그램을 관리하기도 쉽고, 확장 프로그램을 관리하는 것도 구글 크롬 스토어에서 자체적으로 관리하고 있기 때문에 보안적으로나 사용 면에서도 좋다. 특히, 구글의 크롬 확장 프로그램으로 개발자 도구를 제공하거나 웹사이트에 콘텐츠를 게시하는 것도 쉽게 할 수 있어, 특정 직업에서 전문적으로 사용하거나 사용자의 편의를 위한 다양한 기능을 제공한다. 넓은 사용자 범위를 대상으로 여러 확장 프로그램이 나온다는 것은 크롬 확장 프로그램의 강력한 장점 중 하나다.[6] 하지만 현재 제공되고 있는 크롬 확장 프로그램의 문제가 생겼다. 바로 올해 7월 말, 크롬 확장 프로그램 개발자의 구글 계정이 피싱(Phishing)을 통해 도난당하면서 크롬의 여러 확장 프로그램이 손상되었다. 이 때문에 사용자의 트래픽이 도용되고 잠재적으로 악의적인 광고가 노출되거나 개발자 계정이 외부로 노출되었다.[7]
지난 1개월 동안, 누군지 모를 공격자로부터 개발자의 구글 웹 스토어 계정이 해킹당했다. 이 때문에 개발자의 구글 웹 스토어 계정이 유출되고, 이 때문에 실제로 사용되고 있는 구글의 확장 프로그램 몇 개가 문제가 되었다. 이를 처음 발견한 연구원, 크리스 페더릭(Chris Pederick)은 사용자에게 다양한 웹 개발 도구를 제공하는 ‘Web developer 크롬 확장 프로그램’에 문제가 있다는 트위터 글과 글이 올라왔고[8][9], 이에 관하여 Proofpoint에도 분석글을 올라왔다.[10] 글에서는 Web developer 크롬 확장 프로그램의 손상이 단순히 프로그램의 손상이 아니라 이를 제공한 개발자에게서 온 손상이며, Proofpoint는 이 문제를 분석하고 추가적인 내용을 공개하였다.[11] 그렇게 손상된 크롬 확장 프로그램은 개발자의 계정을 통해 합법적으로 다른 사용자에게 제공되었고, 이는 사용자의 브라우저에 광고가 나오도록 하였다. 현재 공개된 손상된 크롬 확장 프로그램은 Chrometana 1.1.3 버전, Infinity New Tab 3.13.3 버전, CopyFish 2.8.5 버전, Web Paint 1.2.1 버전, Social Fixer 20.1.1 버전이다.[12] 이외에도 크롬 확장 프로그램 TouchVPN과 Betternet VPN 역시 같은 방식으로 6월쯤에 손상되었을 것으로 추정했다.[13] 구글은 어떤 식으로 개발자의 스토어 계정이 탈취되었고, 어떻게 확장 프로그램을 가로챘는지 조사하고 이에 대한 대응 방안을 사용자들에게 배포하였다.[14]
개발자 계정의 유출은 흔하디흔한 수법, 피싱 전자 메일을 통해 발생하였다.[15] Copyfish라고 불리는 크롬 확장 프로그램은 이미지, PDF 문서 및 비디오에서 텍스트를 추출할 수 있는 프로그램으로 많은 사용자를 보유하고 있다.[16] 그리고 안타깝게도 Copyfish는 이번 사건에서 손상된 확장 프로그램 중 하나로 사건이 일어난 후 Copyfish의 통제권을 잃어 곧바로 비활성화도 어려웠고 공격자가 새로운 기능을 업데이트했었을 수도 있다며 이번 사건에 대해 말했다.[17] 그들은 7월 28일에 피싱 메일 공격을 받았다. 메일의 내용은 Copyfish 크롬 확장 프로그램을 업데이트하겠다는 말과 함께 업데이트하지 않으면 구글 웹 스토어에서 해당 프로그램을 삭제하겠다는 내용이었다. 더불어, 자세한 내용을 원한다면 클릭하라는 링크와 함께 피싱 사이트로 사용자를 유도했다.[18] 당시, 피싱 메일을 받은 Copyfish의 a9t9 소프트웨어 개발자 팀원 중 한 명은 메일에 제공된 링크가 ‘bit.ly’ 였지만 html 형식으로 보고 있었기 때문에 의심 없이 개발자의 계정을 로그인하였다고 말했다. 더욱이, 로그인 화면 역시 구글의 로그인 화면과 매우 똑같았기 때문에 피싱 공격이라고 인식하지 못했다고 덧붙였다.[19] 피싱 공격이 있고 바로 다음 날 7월 29일, 광고를 담은 Copyfish 확장 버전 2.8.5버전이 크롬 웹 스토어에 올라왔다. Copyfish 개발자들은 이 문제를 매우 빨리 알아차렸지만, 공격자가 확장 프로그램을 개발자 계정으로 이동시켰기 때문에 크롬 스토어에서도 제거가 어려웠고 아무것도 할 수 없었다고 하였다.[20]
공격자에 의해 손상된 구글 크롬 확장 프로그램은 사용자의 트래픽을 유도하여 악의적인 광고를 효과적으로 사용자에게 보여주었다. 즉, 손상된 크롬 확장 프로그램을 사용하여 트래픽을 도용하여 제휴 된 광고 사이트의 가입을 유도하였고 사용자의 브라우저에 광고를 보여줬다. 또한, 피싱 메일을 통해 개발자의 계정을 탈취하고 이를 이용하여 합법적인 크롬 악성 확장 프로그램을 만든 것이다.[21]
이러한 구글 크롬의 확장 프로그램 공격은 무려 2달 전부터 시작되었고, 아무도 눈치채지를 못하였다. 또한, Copyfish 외에도 다른 Web Developer, OinkAndStuff 두 곳 역시 피싱 메일이 왔으며, Freshdesk 도메인을 통해 메일이 왔다. 이는 공통된 공격자가 개발자들을 공격하였다는 것을 보여준다. 구글도 이와 같은 일이 반복되니, 이 같은 문제를 파악하고 Safe Browsing API를 통해 피싱 사이트를 차단하였다.[23] 문제는 현재 어느 정도의 확장 프로그램이 손상되었는지 알 수 없고, 더 큰 피해가 발생하기 전에 피싱 메일을 조심하라는 당부를 하였다.[24]
이 같은 공격은 우리가 주목해야 할 점이 있다. 애드웨어는 보통 무료 프로그램에 많이 설치되어 수익을 낸다. 예를 들어, 모바일 게임만 보아도 광고를 통해 얻는 보석, 광고를 봐야 나오는 하트 그리고 앱 상단에 둥둥 떠있는 광고 배너를 생각하면 될 것 같다. 모바일뿐만 아니라 심지어 백신 프로그램에도 애드웨어는 존재한다. 이는 프로그램에 애드웨어가 설치되어 있어도 큰 문제가 되지 않으므로 이와 같은 방법이 가장 많이 사용된다. 그럼에도 크롬 확장 프로그램을 통해 이처럼 트래픽을 이용하여 광고와 제휴 된 가입페이지로 유도하고 효과적으로 사용자에게 광고를 드러냈다. 이때 사용된 구글의 크롬 확장 프로그램은 트래픽을 도용하고 사용자 브라우저를 광고로 더럽혔다. 더군다나, 피싱 메일을 통해 개발자 권한을 얻어 합법적인 확장 프로그램을 악의적으로 조작하여 합법적으로 크롬 마켓에 업로드 되었다. 트래픽을 하이재킹하고, 사용자를 제휴 사이트에 유도하는 것뿐만 아니라 개발자의 계정을 탈취하여 잠재적으로 공격할 수 있는 새로운 공격 방법을 제시했다는 점이 주목할 점이다. 더 나아가 만약, 확장 프로그램에 애드웨어가 아니었다면 어땠을까.