'넥서스 원'에 해당되는 글 1건

  1. 2010.11.24 안드로이드, 로컬 파일을 빼낼 수 있는 취약점 공개돼
보안 전문가인 토마스 캐넌(Thomas Cannon)은 스마트폰 사용자가 교묘하게 조작된 웹사이트를 방문할 때에 공격자가 SD 메모리카드에 저장된 로컬 파일을 읽을 수 있게 하는 안드로이드 브라우저의 보안 취약점을 발견했습니다. 이 취약점은 최신 버전인 프로요(Froyo, 2.2)까지 포함하는 거의 모든 버전의 안드로이드 운영체제에서 발생합니다.

이 취약점은 구글의 넥서스 원과 삼성의 갤럭시 탭에서 취약점이 있는 것을 재현했으며, 이들 모두 운영체제는 프로요(2.2)입니다. 또한, HTC 디자이어(2.2)뿐만 아니라 SDK에 포함된 안드로이드 에뮬레이터(1.5, 1.6, 2.2)에서도 확인되었다고 전했습니다.



취약점은 여러가지 요소를 이용하여 재현한 것으로 다음과 같은 과정으로 정리할 수 있습니다.

  1. 안드로이드 브라우저는 사용자가 파일(ex. payload.html)을 다운로드할 때에 확인 창을 보여 주지 않고 자동으로 다운로드하게 됩니다. 경로: /sdcard/download/payload.html
  2. 브라우저에서 자바스크립트를 사용하여 로컬 파일을 자동으로 불러옵니다.
  3. 로컬 저장소에 있는 HTML 파일을 열 때 안드로이드 브라우저는 사용자에게 확인창으로 알려주지 않고 자바스크립트를 실행합니다.
  4. 자바스크립트를 통해 파일의 내용을 읽어 보여줍니다.
마지막 자바스크립트에는 파일의 내용을 공격자가 원하는 서버에 업로드하는 등의 공격이 진행됩니다. 

다만, 이 취약점을 이용하기 위해서는 공격자는 접근하기 위한 경로를 미리 알고 있어야 합니다. 경로를 미리 알기 어려울 것으로 예상할 수도 있지만, 스마트폰을 이용하여 찍은 사진 같은 경우에는 미리 파일의 이름과 경로를 추정할 수 있습니다. 또한, 인터넷 뱅킹과 같이 특정한 앱이 사용하는 경로에서 중요한 데이터가 저장되는 위치를 알게 된다면 이 또한 공격자가 빼낼 수 있는 기회를 제공할 수도 있습니다.


캐넌은 메모리카드에 있는 ct.txt 파일의 내용을 복사하여 서버에 업로드하는 방식으로 취약점을 재현하였습니다. 안드로이드 브라우저에서 링크를 클릭했을 때 공격자의 서버에서는 자바스크립트를 이용하여 HTML 파일을 전송하고 이런 방식으로 파일을 다운로드하게 됩니다.

한편, 캐넌은 구글에게 이 취약점에 대해 알렸으며, 20분 이내에 구글로 부터 문제점을 조사할 것이라는 응답을 받았다고 합니다. 그리고, 구글의 요청에 따라 취약점에 대한 상세한 정보를 웹사이트에서 일시적으로 삭제하였습니다. 구글은 문제점의 원인을 추적하여 패치를 제작 중에 있습니다. 

참고로 현재 구글의 차세대 스마트폰 OS 인 진저브레드(안드로이드 2.3)의 출시가 다가오고 있습니다. 아마도 진저브레드에서 해결되지 않거나 그 이후에 패치 형태로 제공될 가능성이 점쳐지고 있습니다.


감사합니다.

reTweet
Posted by 문스랩닷컴
blog comments powered by Disqus


    Web Analytics Blogs Directory