스스로 루팅하는 악성 앱 등장, 더 이상 순정도 안전하지 않아
검증된 보안 솔루션에 한해 루트 권한 부여하는 방안도 고민해야
[보안뉴스 오병민] 순정 스마트폰과 루팅·탈옥된 스마트폰 중 어떤 것이 더 위험할까? 원칙적으로는 순정 스마트폰이 안전하지만 스스로 루팅하는 루트권한 악성코드가 등장함으로써 순정폰이 꼭 안전하다고 확신하기 힘들어졌다. 아울러 루트권한 악성코드는 백신과 같은 보안 솔루션도 무력화 할 수 있기 때문에 대책 마련이 시급해 보인다.
스마트폰 제조사들은 오류나 성능저하 방지와 앱 판매 생태계 유지를 이유로 사용자 세팅을 원천적으로 제한했다. 따라서 많은 사용자들은 이런 기능적인 제한을 풀기 위한 해킹 작업인 탈옥(Jailbreak)과 루팅(Rooting)을 통해 이런 불만을 충족하곤 했다.
그러나 탈옥은 스마트폰의 관리자 권한을 이용해 기능 제한을 완화하는 것이기 때문에 보안업계에서는 루트 권한(최고 관리자 권한)을 이용한 보안위협이 나타날 수 있다는 경고를 하기도 했다.
사실 탈옥과 루팅을 안 하는 것이 보안 측면으로는 당연히 더 안전하다. 그러나 웹 접속만으로 탈옥이나 루팅이 가능한 기술과 스스로 루팅이 가능한 악성코드가 나타나면서 순정 스마트폰도 안전하다고 보기 힘들어졌다.
루팅과 탈옥이 위험한 이유
루팅과 탈옥은 기본적으로 OS의 중요한 기능으로의 접근 금지를 푼 것이라고 볼 수 있다. 물론 중요한 기능을 제어할 수 있다는 것은 매력적인 일이다. 그러나 그만큼 위험성도 따른다는 것이 보안전문가들의 의견이다. 루팅이나 탈옥 상태에서 사용자가 중요한 기능에 접근할 수 있는 만큼 공격자도 이를 이용한 공격을 감행할 수 있다는 것.
순정이라고 안전할까?
안드로이드 OS는 리눅스 기반으로 돼 있으며 리눅스는 기본적으로 OS에 대한 접근이 제한돼 있다. 문제는 안드로이드 OS가 리눅스의 축소판이라는 점이다.
안드로이드는 리눅스의 대부분의 기능을 가지면서 스마트폰과 같은 소형 디바이스에서 작동할 수 있도록 경량화돼 있다. 경량화 과정에서 OS에 잘못된 접근을 확인하는 일부 과정이 생략됐다. 따라서 리눅스에서도 나타났던 커널 취약점 문제가 안드로이드에서는 더욱 많이 나타날 수 있다.
이런 커널 취약점은 악성 앱이 스스로 루팅이 가능하도록 만들 수 있으며, 일단 루팅을 통해 앱이 샌드박스를 벗어나 스마트폰을 제어할 수 있는 권한을 가지게 된다. 실제로 최근 발견된 스마트폰 IRC봇인 ‘Foncy’는 앱 자체가 커널 취약점을 이용해 스스로 루팅을 진행하고 루트권한을 제어하는 것으로 파악됐다.
안드로이드 뿐만 아니라 애플의 아이폰도 이 같은 문제점이 있을 것으로 파악되고 있다. 일단 인터넷 접속으로 탈옥이 가능하게 하는 ‘제일브레이크미’(www.jailbreakme.com)가 존재한다는 것 자체가 이를 증명하고 있다고 볼 수 있다.
샌드박스의 한계
사실 스마트폰은 공장에서 출시될 때부터 악성 앱은 OS 영역에 대한 접근이 불가능하도록 설계되어 있다. 즉, 어떤 앱을 설치하더라도 OS에는 영향을 주지 않도록 앱이 각자의 방에서만 실행하도록 한 것이다. 이 방은 샌드박스로 불리며, 이 같은 샌드박스는 앱이 스마트폰에 위협을 가하기 위해 OS의 침입을 막는 보안기능도 가지고 있는 셈이다.
사실 원칙적이라면 모든 앱은 샌드박스를 벗어난 접근이 불가능하다. 그러나 앞서 말한 커널 취약점을 이용한다면 악성 앱이 샌드박스를 벗어나 OS의 중요한 기능을 제어하는 것은 어렵지 않다.
스마트폰 백신의 한계
스마트폰 백신은 악성 앱을 걸러내고 실행이 되지 않도록 한 앱이다. 그러나 백신 역시 앱이기 때문에 샌드박스를 벗어나지 못한다는 한계를 가지고 있다. 재미있는 사실은 악성 앱들은 루팅과 커널 취약점을 이용해 샌드박스를 벗어나 스마트폰 OS영역의 주요한 기능을 제어할 수 있지만 스마트폰 백신은 그렇지 못하다는 점이다.
오히려 OS에 접근한 악성 앱이 루트 권한을 이용해 백신을 무력화시켜 버리는 아이러니한 상황이 발생할 수 있다. 실제로 일부 보안전문가들은 이 같은 상황을 가상으로 구현해 증명하기도 했다.
루트 권한 가진 악성 앱 어떻게 막아야 하나?
사실 전문가들은 현재의 상황에서는 루트 권한을 가진 악성 앱를 막을 수 없다고 단언한다. 루트 권한을 가지면 모든 보안 솔루션을 무력화할 수 있기 때문이다.
하지만 정부와 통신사, 스마트폰 제조사, 보안업계가 서로 협력한다면 막을 수 있는 방안이 있다. 그것은 바로 검증된 보안 솔루션에 대해서는 루트 권한을 허용하는 것이다.
예를 들면 스마트폰 OS 위변조 탐지 솔루션이나 스마트폰 백신에 한해 루트 권한을 주는 API를 허용하는 것이다.
보안업계의 한 전문가는 “예전에는 커널 취약점을 이용한 악성코드가 논리적으로만 존재한다고 생각했지만 실제로 그런 기능을 가진 악성코드가 등장한 이상 업계가 서로 공조한 대책 마련이 시급하다”면서 “루트 권한이 있는 악성코드를 샌드박스 안에 갇힌 보안 솔루션이 막아내는 것은 불가능하기 때문에 검증된 보안 솔루션에 한해서는 루트 권한을 주는 방안을 모색해야 한다”고 주장했다.
[오병민 기자(boan4@boannews.com)]
<저작권자: 보안뉴스(http://www.boannews.com/) 무단전재-재배포금지>