분석 정보/악성코드 분석 정보

[정보]SMS Zombie로 일컬어지는 중국발 안드로이드 악성 애플리케이션

TACHYON & ISARC 2012. 8. 21. 15:53

1. 개 요


최근 해외에서 SMS Zombie로 일컬어지는 악성 애플리케이션이 발견되어 화제가 되고 있다. 악성 애플리케이션에 대한 스마트폰 보안 위협의 민감성이 약화되고 있는 시점에 중국에서는 약 50만대 가량의 단말기가 해당 악성 애플리케이션에 감염된것으로 추산되고 있으며, 이에 따른 막대한 금전적 손실이 있을것으로 예상되고 있다. 물론 해당 악성 애플리케이션은 중국의 안드로이드 OS기반 스마트폰 사용자만을 대상으로 동작하고 있는 만큼 국내에서 별다른 피해는 발생하지 않을 것으로 예상된다. 다만, 해외에서는 이미 금전적 이득을 목적으로 이러한 악성 애플리케이션의 실제 유포 및 감염 동작이 이루어지고 있다는 점에서 상당히 주목할만 하다고 할 수 있다.

  
2. 유포 및 감염 동작



해당 악성 애플리케이션은 아래의 그림과 같이 현재도 중국의 비공식 마켓 등을 통해서 유포가 이루어지고 있다.

위와 같은 비공식 마켓을 통해 다운로드 및 설치가 가능한 악성 애플리케이션은 실제로 SMS 무단 발송, 각종 정보 수집 등의 악성 동작을 하는 추가적인 악성 애플리케이션에 대한 설치를 유도하는 동작을 수행한다.

아래의 그림은 해당 악성 애플리케이션에 대한 설치 화면이다.

위 화면을 보면 설치 시 필요 권한이 나타나 있지 않고 설치 완료 후 "열기" 버튼도 비활성화 되어 있다. 이는 해당 악성 애플리케이션이 월페이퍼 형태로 제작되어 있고 기능 동작에 필요한 추가적인 권한은 메니페스트 정의가 아닌 코드상의 동적 등록 절차에 따른 것이다. 또한, 서비스로만 동작되기 때문에 별도의 런처가 등록되지 않아 "열기" 버튼도 활성화 되지 못한 것이다.

아래의 그림은 해당 악성 애플리케이션에 대한 AndroidManifest.xml 코드중 권한과 관련된 일부이다.

▶ Dropper 형태의 숙주 악성 애플리케이션 분석

해당 코드를 살펴보면 월페이퍼의 서비스 동작에 필요한 권한 이외에는 따로 등록된것이 없다. 결국 해당 악성 애플리케이션은 설치만으로는 스스로 동작하지 못하며, 아래의 그림과 같이 "배경화면" -> "라이브 배경화면"의 붉은색 월페이퍼를 선택해야 동작하게 된다.

위의 절차와 같이 해당 월페이퍼를 실행하면 아래의 그림과 같이 추가적인 애플리케이션 설치를 유도하는 AlertDialog가 화면에 출력된다.

위 그림의 오른쪽 버튼은 "취소", 왼쪽 버튼은 "확인" 버튼이다. 확인 버튼을 클릭하게 되면 아래의 그림과 같이 해당 악성파일 내부에 포함되어 있는 추가적인 파일의 설치를 시도하게 된다.

위 그림과 같이 해당 파일은 그림파일로 위장하고 있지만 실제로는 APK 파일이다. 결국 "확인" 버튼 클릭을 통해 그림파일로 위장된 추가적인 악성 애플리케이션의 설치가 진행될 수 있으며, Dropper 형태의 숙주 악성 애플리케이션의 악성 동작은 여기까지가 전부이다.

▶ 실제적인 악성 동작을 수행하는 추가적인 악성 애플리케이션 분석

아래의 그림은 내부에 포함되어 있던 추가적인 악성파일의 설치 화면이다.

해당 악성 애플리케이션 또한 서비스로만 동작되므로 위 그림과 같이 "열기" 버튼은 비활성화 되어 있다. 아래의 그림은 해당 악성 애플리케이션의 권한을 확인할 수 있는 AndroidManifest.xml 파일의 일부 코드이다.

설치가 완료되면 해당 악성 애플리케이션은 아래의 그림과 같이 서비스로 로드되어 있는 것을 확인할 수 있다.

또한, 기기관리자 권한을 얻기 위해 아래의 그림과 같이 기기 관리자 활성화 창을 출력하게 된다.

위 그림과 같이 "활성화", "취소" 버튼이 모두 존재하고 있으나 실제로는 "활성화" 버튼만이 정상적으로 동작한다. "취소" 버튼을 클릭하게 될 경우 아래의 일부 코드에 의해 지속적으로 위 그림과 같은 기기 관리자 활성화 창만을 출력하게 된다.

결국 해당 악성 애플리케이션은 "활성화" 버튼 클릭 유도를 통해 기기 관리자 권한을 얻게되며, 이를 통해 애플리케이션 삭제 등과 같은 권한을 획득하게 된다.

※ 기기 관리자 권한 획득

보통 악성 애플리케이션이 기기 관리자 권한을 획득하는 경우는 자신의 생명력 유지를 위함이 대부분이다. 기기 관리자 권한을 획득할 경우 일반적인 언인스톨 과정을 통해서는 아래의 그림과 같이 삭제가 불가능하다.


※ 삭제 방법

이러한 종류의 애플리케이션은 악성과 정상 모두 존재할 수 있으며, 삭제를 위해서는 아래의 그림과 같은 방법이 필요하다.

☞ "환경 설정" -> "장소 및 보안" -> "기기 관리자 선택"


위 그림과 같이 해당 메뉴로 이동한 후 클릭 -> "비활성화"를 진행한다. 물론 "비활성화"를 클릭하여도 해당 악성 애플리케이션의 경우는 비활성화 체크 화면에서 다음 단계로 넘어가지 않는다. 이는 악성 애플리케이션의 내부 코드에 의해 비활성화에 대한 클릭리스너로 인한 증상이므로 신경쓰지 말고 홈버튼을 길게 누른 후 "작업 관리자" -> "실행중인 프로그램 모두 종료" -> 프로그램 탭에서 "해당 악성 애플리케이션 삭제"를 진행한다.

위와 같이 기기 관리자 권한 획득, 프로세스 로딩과 함께 해당 악성 애플리케이션은 설치 후 아래의 그림과 같은 특정 경로에 "phone.xml" 파일을 생성하게 된다.

해당 파일("phone.xml")은 아래의 일부 코드에 의해 내부에 특정 키워드를 포함해 생성되며, 중국어 간자체로 인코딩되어 있다.

아래의 그림은 phone.xml의 내부에 실제로 포함된 내용을 보여주고 있으며, 해당 파일의 파싱 작업 등을 통해 은행계좌 정보와 같은 금융권 정보 및 모바일 거래 정보에 대한 탈취를 시도할 수 있다.(SMS 감시에 의해 수행된다.)

위와 같은 절차가 마무리된 후 해당 악성 애플리케이션은 아래의 그림과 같이 감염된 스마트폰의 내부 정보를 수집하여 특정 번호(13093632006)로 SMS를 사용자 몰래 무단으로 발송하게 된다.

※ SMS 발신 상세 내용

- 1.5V:Model(모델정보:sdk);os(os버전정보);Language(사용언어);NET(네트워크사용정보:3G/wifi)

또한, 네트워크가 사용불가능 하거나 wifi가 아닌 3G를 사용하고 있을 경우는 아래의 일부 코드에 의해 특정 문구가 포함된 SMS를 동일한 번호로 사용자 몰래 무단 발송하게 된다.

이외에도 해당 악성 애플리케이션은 감염된 스마트폰의 루팅 여부를 확인한 후 아래의 일부 코드를 통해 동일한 번호로 SMS를 무단으로 발송하게 된다.

해당 악성 애플리케이션은 본격적인 정보 탈취 기능 수행을 위해 SMS 감시 기능도 수행하게 된다. AndroidManifest.xml상에는 이를 위한 권한이 선언되어 있지 않다. 그럼에도 불구하고 이와 같은 기능이 수행 가능한 이유는 AndroidManifest.xml이 아닌 아래와 같이 내부 코드상에 SMS 감시 관련 리시버를 동적으로 등록해 놓았기 때문이다.

해당 악성 애플리케이션은 SMS 감시를 위한 리시버가 AndroidManifest.xml에 포함될 경우 여러가지 보안 솔루션에 의해 Filter될 가능성이 존재하기 때문에 이와 같은 동적 등록 절차를 따랐을 가능성이 높다.

이렇게 등록된 SMS 관련 리시버는 수신되는 모든 SMS에 대한 감시를 수행하며, 미리 생성된 "phone.xml" 내부에 포함된 키워드와 파싱 비교 작업 후 조건이 충족될 경우 아래의 일부 코드를 통해 특정 번호로 해당 SMS를 사용자 몰래 무단 발송하게 된다.

위와 같이 악성 애플리케이션 입장에서 특정 조건이 충족되는 SMS는 특정 번호로 무단 발송된 후 사용자가 알 수 없도록 아래의 일부 코드를 통해 몰래 삭제 조치 된다.

3. 예방 조치 방법

위와 같이 실제적으로 악성 동작을 수행하는 악성 애플리케이션을 1차적인 Dropper가 내부에 포함하고 있는 경우 해당 Dropper가 수정될 경우 지속적인 보안 위협을 가지고 있을 수 있다. 더불어 감염될 경우 기기 관리자 권한 획득을 요구하는 위와 같은 악성 애플리케이션의 경우는 Zombie란 진단명에 어울리게 일반 사용자의 경우 삭제하기 조차 어렵다.

때문에 이러한 수많은 보안 위협으로 부터 안전한 스마트폰 사용을 위해서는 아래와 같은 "스마트폰 보안 관리 수칙"을 준수하는 등 사용자 스스로의 관심과 주의가 무엇보다 중요하다고 할 수 있다.

※ 스마트폰 보안 관리 수칙

1. 신뢰할 수 있는 보안 업체에서 제공하는 모바일 백신을 최신 엔진 및 패턴 버전으로 업데이트하여 실시간 보안 감시 기능을 항상 "ON" 상태로 유지해 사용할 수 있도록 한다.

2. 애플리케이션 다운로드 시 항상 여러 사용자를 통해 검증된 애플리케이션을 선별적으로 다운로드 하는 습관을 가질 수 있도록 한다.

3. 다운로드한 애플리케이션은 항상 모바일 백신으로 검사한 후 사용 및 설치 하도록 한다.

4. 스마트폰을 통해 의심스럽거나 알려지지 않은 사이트 방문 또는 QR 코드 이용시 각별히 주의한다.

5. 발신처가 불분명한 MMS 등의 메시지, 이메일 등의 열람을 자제한다.

6. 스마트폰에는 항상 비밀번호 설정을 해두고 사용하도록 한다.

7. 블루투스와 같은 무선 인터페이스는 사용시에만 켜두도록 한다.

8. 중요한 정보 등의 경우 휴대폰에 저장해 두지 않는다.

9. 루팅과 탈옥 등 스마트폰 플랫폼의 임의적 구조 변경을 자제한다.

※ 잉카인터넷(시큐리티대응센터/대응팀)에서는 해당 악성 애플리케이션에 대해 아래와 같이 진단/치료 기능을 제공하고 있으며, 24시간 지속적인 대응체계 가동 및 "nProtect Mobile for Android" 를 통해 다양한 모바일 보안 위협에 대응하고 있다.

◆ 진단명 현황

- Trojan/Android.SMSZombie.A
- Trojan/Android.SMSZombie.B
- Trojan/Android.SMSZombie.C