평범한 개발자 행복한 가족, 패밀리그램

AJ일상

스미싱 방지를 위해 한 번 알아보자

패밀리그램 2021. 3. 18. 00:39

업무 중 문자 한통이 날아왔다

구매하신 선물이 배송되었습니다 자세한 내용을 보려면 아래 URL을 클릭하세요 

요즘 코로나 때문에 수기로 방문기록을 남기는 경우가 있는데 이런 곳에서 유출된게 아닐까 생각해본다

난 선물을 구매한 적이 없는데 알 수 없는 숏링크 ( Short Link )  와 함께 날아온 문자였다.

* Short link 란

아주 긴 인터넷 주소 (URL) 을 짧게 사용 할 수 있게 해주는 일종의 서비스이다. 구글이나 TinyURL 라는 서비스가 있다

몇 년전에 친누나가 스미싱에 당해 거액의 현금피해를 본 사건이 있었다.

그리고 최근에 장모님께서 가족을 가장한 알 수 없는 문자메세지를 받은적이 있다고 하신다.

스미싱 예방을 잘 모르는 주변 사랑하는 사람들을 위해 스미싱이 어떻게 이루어지는 추측성 포스팅을 해본다

1. 문자 수신

내가 받았던 문자 처럼 알 수 없는 선물이나 경품 또는 택배에 대해 조회하라는 인터넷 주소가 함께 날아온다

링크를 선택하지 않고 문자를 삭제하는게 최고의 방법이다

최근에 선물을 주문했던가 선물이 그리운 사람들은 충분히 클릭할 만한 내용이다. 궁금해서 눌러보고 싶은 마음을 달래주기 위해 어떤식으로 스미싱이 진행되는지 더 파본다

2. 강제 APK 다운로드

APK 는 Android Package의 약자로 안드로이드 스마트 폰에( 삼성, LG ) 구동되는 앱의 설치 파일을 말한다. 그러므로 일반 PC나 애플의 iOS에서는 설치가 되지 않는다

그렇기 때문 PC를 이용해 위 링크를 확인해보자

PC 크롬 브라우저를 통해 해당 URL에 접근해 보았다

APK 파일을 제공하는 웹 서버에서 PC에서 접근 시 위 처럼 NOT FOUND 라는 메세지만 달랑 보여준다.

그럼 웹 서버에서 PC 크롬 브라우저를 스마트폰으로 인식하게 크롬 디버거를 열어 설정해서 다시 접속 해보자

처음 PC브라우저와 접속했을 때와 다른 메세지가 노출된다

* 팝업의 문구를 자세히 보면 맞춤법이 틀린 글자가 눈에 들어온다. "더 낳은" 이라니. 그리고 고유명사 chrome도 소문자로 시작하니 꼭 문구를 잘 읽어보고 판단해야한다

아마도 스마트폰에서 해당 페이지에 접속 했다면 확인을 누를 수 밖에 없는 상황이 될거라고 생각된다. 특히나 IT지식이 부족한 분들은 더욱 더

해당 페이지를 그냥 닫을 수도 있지만 확인을 눌러보았다

알 수 없는 APK가 다운로드됨

보통 최근 스마트폰 단말기 ( 최신 OS ) 는 알 수 없는 APK를 설치하려고 할 때 충분히 많은 경고를 보낸다. 구형 단말 ( 버전이 낮은 OS ) 에서는 선택 시 단순한 경고만 노출되고 확인 선택 시 위 APK가 설치 될 것 같기도하다.

3. 무슨 APK인지 궁금하다

APK가 어떤 역할을 하는지 궁금해서 Decompile ( 디컴파일 )  해보았다

안드로이드에는 Receiver ( 이벤트 수신자 ) 와 Service ( 백그라운드 서비스 )라는 것들이 있는데 이 것들은 앱이 실행되지 않아도 핸드폰이 켜져있으면 계속 구동 될 수 있는 프로그램들이다

총 5개의 이벤트 수신자와 서비스가 확인 되었는데 아마도 사용자가 허락하지 않아도 구동 될 수 있는 이벤트 들을 최대한 받는 것 같았다.

핸드폰이 켜지거나 알람이 울렸을 때 Receiver란 걸 통해서 앱에서 알 수 있다. 그래서 이런 형태의 앱이 설치된다면 핸드폰이 켜지거나 알람이 울리거나 할 때  즉시 바로 구동될 가능성이 있다

앱의 소스코드를 확인해 보니 실행 즉시 특정 서비스를 실행 시킨 후 보이지 않게 감춰지는 것 같았다.

감추는 부분의 코드를 확인해보니 JNI를 사용하고 있었다. JNI 는 일반 안드로이드 앱에서 제어할 수 없는 부분까지 제어가능 할 수 있게 만들어주는 하드웨어적 프로그램을 구동시킬 수 있게 해주는 방법이다.

4. 정리

정리해보면 문자를 통해 클릭한 링크로 APK가 설치되면, 알람 또는 핸드폰이 켜지거나 화면을 켜거나하는 행동을 하면 실행 될 것 같다.

실행이 된다면 핸드폰에 입력하는 정보들을 수집해서 위에서 언급한 JNI 를 통해 특정 서버로 전송하는 걸로 추측해본다.

모르는 사람이 주는 알 수 없는 호의는 의심을 먼저 해야하는게 맞는 것 같다. 의심이 많아져야 안전한 세상이라니 ㅠㅠ..

반응형