
지난 2일 (현지 시간) 미국 IT 전문매체 안드로이드폴리스(Android Police) 보도에 따르면, 삼성과 LG 같은 안드로이드 주문자 상표 부착 생산(OEM) 공급업체의 플랫폼 인증서가 유출된 사실이 알려졌다. 현재는 해결된 상태다.
안드로이드 운영체제(OS)에서는 모든 애플리케이션이 모두 같은 수준의 권한을 가질 수 없다. 일반적으로 OS는 고유 사용자 ID(UID)를 사용해 다양한 수준의 권한을 할당한다. 전체 시스템은 앱 개발자와 기기 공급업체가 제공하는 인증서를 기반으로 구축된다. 따라서 전체 시스템을 구성한 소프트웨어(SW)와 안드로이드 버전이 모두 합법적이라는 것을 증명하는 데 사용된다.
문제는 해당 인증서가 유출될 때 발생한다. 공격자가 자신이 배포하고자 하는 악성코드에 유출된 인증서로 서명해 악성코드 앱이 합법적으로 보이도록 위장할 수 있다. 이번에 발생한 문제 역시 이것과 관련됐다. 여러 공급업체의 플랫폼 인증서에서 유출 문제가 발생했고, 실제로 유통 중인 인증서들이다.

구글 악성코드 리버스 엔지니어링(Reverse Engeneering) 전문가 우카스 시에에스키(Łukasz Siewierski)는 플랫폼 인증서가 모든 안드로이드 스마트폰에 포함됐고, 안드로이드 앱 정품 여부를 확인하는 데 사용된다고 말했다. 플랫폼 인증서는 공급업체의 개별 앱에 서명하는 데도 사용된다. 또한 코어 안드로이드 앱에 디지털 설명을 하기 위해 사용된다.
코어 안드로이드 앱은 사용자 데이터에 아무런 제한 없이 접근할 수 있을 정도로 안드로이드 시스템에서 가장 높은 권한을 가졌다. 악성코드가 안드로이드 앱에서 사용되는 플랫폼 인증서를 수집했을 때 문제되는 이유다. 인증서를 취득한 공격자는 코어 앱과 동일하게 안드로이드 스마트폰을 광범위하게 접근할 수 있다. 악성코드가 광범위하게 권한을 갖게 되면 통화는 물론, 무단으로 앱 패키지를 설치하거나 삭제할 수 있다. 게다가 안드로이드 기기의 정보를 무단으로 수집 가능하고 단순하게 앱 권한으로는 불가능했던 작업 역시 사용 가능해진다.
일반적으로 안드로이드 악성코드 앱은 사용자에게 접근성 서비스처럼 추가적으로 권한을 요청하고, 부여된 권한을 사용해 다른 앱이나 시스템의 정보를 추가하고 추출한다. 그러나 해당 인증서가 사용된 악성코드는 사용자에게 허락을 구하거나 사용자의 직접적인 개입 없이도 시스템 권한을 이용 가능하다. 악성코드가 루트(root) 안드로이드 응용프로그램과 동일한 인증서를 사용한다면 우회 없이도 루트 시스템으로 접근할 수 있다. 루트는 시스템 관리자 급의 최상위 권한을 가져야 접근 가능한 수준을 말한다.
또한 악성코드는 사전에 설치돼 신뢰할 수 있는 앱인 것처럼 위장한다. 그리고 사용자에게 업데이트로 표시되는 바람에 사용자가 해당 앱이 악성코드라는 사실을 알아차리기 어렵게 만든다.
구글의 안드로이드 파트너 취약점 이니셔티브(Vulnerability Initiative)는 삼성, LG, 샤오미(Xiaomi), 미디어텍(Mediatek) 그리고 더 작은 벤더도 포함해 해당 기업들의 플랫폼 인증서가 완전히 유출됐다고 밝혔다. 다행스럽게도 대부분의 인증서는 공격에 사용되지 않았다.
안드로이드폴리스의 설립자 아르템 루사코프스키(Artem Russakovskii)는 앱 서명을 위해 최근에 사용된 인증서가 삼성과 LG 두 곳뿐이라고 말했다. 만약 세계에서 가장 큰 안드로이드 제조사인 삼성의 인증서가 공격에 사용된다면 많은 피해를 입혔을 것으로 보인다. 삼성은 플랫폼 인증서로 수백 개의 자사 앱에 서명하기 때문이다. 수백 개의 자사 앱 중 하나로 악성코드가 인증서를 통해 위장한다면 악성코드가 널리 확산될 수 있다. 구글 역시 제조사에게 플랫폼 인증서 사용을 가능한 적은 앱에 사용하도록 권고하는 이유도 여기서 비롯된다.
한편 구글의 안드로이드 보안 팀은 해당 문제를 고쳤다고 말했다. 또한 악성프로그램 탐지 기능을 구글 플레이 보안 기능에 새로 추가했다.
최근에 발생한 문제이기 때문에 이번 문제와 관련해 아직 알려지지 않은 정보가 많다. 구체적으로 악성코드가 어디서 배포되는 건지처럼 배포 경로, 악성코드 행위자가 누구인지 등 모두 알려지지 않았다. 그러나 사용자 개인 차원에서는 늘 조심하는 것이 좋다. 사용자는 삼성과 LG의 플랫폼 인증서가 유출된 만큼 안드로이드 기기의 보안을 위해 한동안 플레이 스토어처럼 공식적인 구글 스토어를 제외하고, 비공식적인 소스나 외부 스토어에서 제조업체의 앱을 다운로드하지 않는 것이 좋다. 구글 측은 언제나 그랬듯이 안드로이드 업데이트 알림이 뜨면 즉각 업데이트해 안드로이드를 언제나 최신 버전으로 두길 바란다고 말했다. 삼성 역시 동일한 입장이다. 삼성은 언제나 소프트웨어를 업데이트해 최신 상태로 유지해야 한다고 말했다.
테크플러스 에디터 박효정
tech-plus@naver.com