Play Protect를 중지시키는 Shopper 악성코드

시스템 앱으로 위장한 트로이 목마

Kaspersky가 발견한 Trojan-Dropper.AndroidOS.Shopper.a는 안드로이드의 시스템 서비스로 위장해 실행된다. 시스템 아이콘과 ConfigAPKs라는 이름을 사용한다. 그리고 다른 악성코드를 다운로드하는 dropper 혹은 downloader이다.

접근성 권한 악용

쇼퍼a는 안드로이드의 기본 보안 수단인 Google Play Protect를 끈다. 그리고 '출처를 알 수 없는 앱 설치'를 허용으로 바꾼다. 이렇게 사용자 몰래 기기의 보안을 해제하는데, 이는 안드로이드의 접근성(accessibility) 권한을 통해 가능했다.

접근성 권한을 이용하면 시스템 인터페이스와 다른 앱들을 맘대로 다룰 수 있다. 예컨대 화면에 표시되는 데이터를 가로채고, 버튼을 클릭하고, 사용자 제스처를 흉내낼 수 있다. 악성코드에 악용되면 사실상 루팅한 것과 같은 효과를 낸다(관1).

쇼퍼a는 접근성 권한을 얻을 때까지, 계속해서 가짜 메시지를 띄운다.

보안 앱 역시 기기의 포괄적인 모니터링을 위해 접근성 권한을 요구하기도 한다. 아래 그림은 Norton mobile security에 접근성 권한을 허용하는 과정이다. 공신력있는 보안 앱에는 허용해도 괜찮다고 생각한다.

설정에서 접근성 권한을 사용할 수 있는 앱 목록을 볼 수 있다.



앱이 접근성 권한을 요청하는 모습이다.



안드로이드 운영체제의 경고 문구. 모든 앱에 동일한 내용으로 표시되는, 고정된 것이다.




악성 앱 홍보 수단

쇼퍼a가 다운로드한 페이로드 즉 악성코드 본체는 기기에 대한 상세한 정보를 수집해 해커에게 전달한다. 국가, 네트워크 유형, 제조사, 모델명, 이메일 주소, IMEI, IMSI 등이 포함된다. 그리고 해커의 명령에 따라 여러 가지 악행을 수행한다.

그 주된 용도는 다른 악성 앱을 홍보하는 것이다. 플레이 스토어에 있는 앱들의 사용자 평점을 올리고, 가짜 리뷰를 등록한다. 다운로드 수를 올리기 위해, 플레이 스토어나 제3자 스토어에서 앱을 다운로드한다. 접근성 권한을 얻었기 때문에, 이런 모든 일들을 사용자 몰래 할 수 있다.

구체적인 악행은 해커의 명령에 따라 다르겠지만, 대체로 다음과 같다.

사용자에겐 보이지 않는 창에서, 해커에게 받은 링크를 연다.
자신을 앱 메뉴에서 감춘다.
접근성 권한을 얻을 때까지 주기적으로 요청한다.
구글 플레이 프로텍트를 중지시킨다.
앱 메뉴에 홍보하는 사이트의 바로 가기를 만든다.
플레이 스토어와 제3자 스토어에서 앱을 다운로드한다.
사용자를 가장하여 플레이 스토어에 가짜 리뷰를 작성한다.
이미 설치돼 있는 앱들의 바로 가기를 홍보 사이트의 것으로 바꾼다.
잠금 해제시 광고를 표시한다.
사용자의 구글이나 페이스북 계정을 이용해 다른 앱에 계정을 등록한다.


관련 자료
  1. 안드로이드를 루팅하는 악성코드

참고 자료
  1. Android Trojan Kills Google Play Protect, Spews Fake App Reviews

댓글

이 블로그의 인기 게시물

엑셀 필터 상태에서 복사와 잘라내기

가정에서도 망 분리를 해보자

잉크젯 프린터 전원은 항상 켜 놓아야 좋다