구글, 크롬 확장프로그램 코드 난독화 금지

모든 개발자 계정 2단계 인증 요구도

컴퓨팅입력 :2018/10/02 09:42    수정: 2018/10/02 10:38

구글이 크롬 브라우저의 확장프로그램(extensions) 코드의 난독화를 허용하지 않을 방침이다.

미국 지디넷은 1일(현지시간) 구글 공지를 인용해 '크롬웹스토어(Chrome Web Store)'의 새로운 운영방침 5가지를 소개했다. 확장프로그램의 코드 난독화 금지, 포괄권한요청 제한, 사이트별 실행허용, 개발자 계정 2단계인증 적용, 매니페스트 v3 파일 구성이다. [☞원문보기]

크롬웹스토어는 개발자들이 구글 크롬 브라우저에서 돌아가는 확장프로그램을 등록하고 크롬 이용자들이 그걸 내려받아 쓸 수 있게 해주는 온라인 장터다. 크롬웹스토어를 통해 확장프로그램을 배포하려면 구글의 운영방침에 따라야 한다.

크롬 브라우저 (사진=씨넷)

새 크롬웹스토어 운영방침에 따르면 이제부터 구글은 확장프로그램 등록 개발자들에게 코드의 가독성(readability)을 요구한다. 더이상 난독화한 코드(obfuscated code)로 제작된 확장프로그램을 허용하지 않는다.

구글에 따르면 회사측이 차단하고 있는 악성 크롬 확장프로그램 가운데 70% 가량이 코드 난독화 기법을 사용한다. 구글의 새로운 방침에 따라 개발자들은 내년 1월 1일까지 기존 확장프로그램에서도 난독화한 코드를 제거해야 한다.

난독화(obfuscation)는 프로그래밍 과정에서 작성된 소스코드를 사람이 읽고 이해하기 어렵게 만드는 기법을 가리킨다. 소스코드를 제작한 개발자가 타인에 의한 결과물의 해킹이나 도용을 어렵게 만들려는 수단으로 활용되고 있다.

구글 측은 코드 난독화가 성능 감소 요인으로도 작용하는만큼, 확장프로그램 개발자들이 코드 난독화를 사용하는 실익이 없다고 주장했다.

구글은 또 고수준 브라우저 권한에 접근하는 확장프로그램 등록시 '추가 규정준수 검토(additional compliance review)' 절차를 적용한다. 향후 등장할 확장프로그램이 그 동작에 필요한 '좁은 범위(narrowly-scoped)'의 권한만 요청하도록 유도하려는 조치로 해석된다.

이와 별개로 확장프로그램이 원격 호스트의 코드를 사용할 때 추가 규정준수 검토가 발동될 수도 있다. 구글이 보기에 확장프로그램이 검수 단계 이후 원격 호스트의 코드를 악의적인 코드로 바꿔 배포할 수 있는 기능을 갖추면 '지속적인 모니터링' 대상이 된다.

구글은 이달중 배포되는 크롬70 버전의 신기능에 관련된 운영방침도 제시했다. 확장프로그램의 사이트별 실행 허용 시나리오 지원이다.

이용자는 새 브라우저를 통해 어떤 확장프로그램을 특정 사이트에서만 작동하도록 제한할 수 있다. 이로써 온라인뱅킹포털이나 웹기반 암호화폐지갑이나 이메일 수신함같은 민감한 페이지를 실행할 때 위험한 확장프로그램 실행을 방지한다는 설명이다.

크롬70 버전에 추가되는 신기능. 이용자는 특정 확장프로그램의 동작을 사이트별로 또는 전체적으로 허용할지 선택할 수 있다. [사진=구글]

또 크롬70 버전 브라우저는 허용된 확장프로그램이라 해도 이용자가 클릭 등 추가 입력을 해야 실행되게 바뀐다. 이 동작은 이용자가 어떤 페이지에서 확장프로그램에 해당하는 버튼을 클릭하든지 브라우저 메뉴를 통해 설정을 바꾸기 전까지 유지된다.

구글은 개별 확장프로그램이 아니라 모든 확장프로그램 개발자들에게 적용되는 또다른 규칙도 만들었다.

내년부터 구글은 모든 확장프로그램 개발자가 2단계 인증(two step verification) 방식을 쓰도록 요구한다. 개발자 계정에 문자메시지(SMS), 인증용 앱(authenticator app), 하드웨어 보안 키(security key) 중 하나를 선택해 적용하라는 얘기다.

구글은 확장프로그램 개발자들이 자기 계정을 피싱 공격으로부터 보호하려면 2단계 인증을 적용해야 한다는 입장이다. 개발자 계정이 해커에게 도용되면 정상적이라 알려진 확장프로그램에 악의적인 코드가 숨어들 수 있다는 이유에서다.

이날 별개의 미국 지디넷 보도에 따르면 지난해 웹디벨로퍼, 크롬타나, 인피니티뉴탭, 카피피시, 웹페인트, 소셜픽서, 터치VPN, 베터넷VPN 등이 피싱 피해 사례로 확인됐고, 지난주에도 크롬 확장프로그램 개발자의 계정을 노린 대규모 피싱 공격이 발생했다. [☞원문보기]

마지막 5번째 규칙은 확장프로그램의 매니페스트(manifest.json) 파일을 v3 규격에 맞춰 구성하라는 것이다.

매니페스트 파일은 크롬 브라우저가 그 내용을 확인해 해당 확장프로그램을 처리하고 그와 정보를 주고받는 방식을 좌우하는 설정파일이다. 확장프로그램 개발자들은 내년 배포될 새 가이드라인에 맞춰 매니페스트 v3 형식으로 개정한 파일 배포를 준비해야 한다.

관련기사

매니페스트 v3 파일 형식의 변화는 크롬70 브라우저의 신기능, 이용자가 각 확장프로그램의 권한을 제어할 수 있게 해주는 메커니즘과 관련돼 있다.

구글의 새 크롬웹스토어 운영방침은 브라우저 이용자를 위한 보안 강화 일환으로 풀이된다. 원격사이트 호스트 기반의 확장프로그램을 설치하거나, 확장프로그램 코드 일부를 페이지의 아이프레임(iframe)으로 처리해 별도 프로세스로 만드는 행위를 막는 조치를 포함한다.