꿈을꾸는 파랑새

반응형

오늘은 신한은행 사칭 스미싱 악성코드인 shinhan.apk(2021.08.04)에 대해 글을 적어 보겠습니다.
최근 전화금융사기 조직들은 유명 은행으로 속인 피싱 사이트를 만들고 피싱 사이트에서 앱을 다운로드 해서 설치를 유도해 고객의 돈을 훔치는 행동을 하고 있습니다. 그리고 물론 해당 악성코드를 설치하면 당연히 진짜 고객센터로 연결되지 않고 경찰서, 검찰청으로 신고해도 보이스피싱 조직에 전화가 걸리게 구조가 돼 있습니다. 오늘은 이런 보이스피싱범 들이 만든 악성코드인 shinhan.apk(2021.08.04)에 대해 글을 적어 보겠습니다.
앱 이름:앱 이름은 공개하고 싶지만 이게 전혀 다른 기업인지라…. 그래서 생략
패키지 이름: com.securegroup.assistant
이며 해당 악성코드는 hxxp://919s(.)cn/->hxxp://919s(.)cn/shinhan.apk 이런 식으로 스미싱 문자를 보내서 사용자가 해당 사이트에 접속하게 유도하고 악성코드를 다운로드 및 실행을 하게 해서 감염시키는 구조로 되어 있습니다.

신한은행 사칭 피싱 사이트
신한은행 사칭 피싱 사이트

일단 주소부터 보면 너무 나~보이스피싱 할 것이라는 것을 확실하게 티가 나는 것을 볼 수가 있습니다. 보통은 도메인인 com등으로 끝이 나는데 국가 도메인이 cn 즉 중국 도메인을 사용하고 있어서 너무 티가 납니다.
그리고 웹 소스를 보면 다음과 같이 돼 있습니다.

<!-- Mirrored from 154(.)201.150.190/sh/ by HTTrack Website Copier/3.x [XR&CO'2013], Tue, 22 Jun 2021 10:47:41 GMT -->
<meta http-equiv="content-type" content="text/html;charset=UTF-8" /><!-- /Added by HTTrack -->
<head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"> <!-- minimal-ui-->
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-title" content="iOS Web App">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">

이라고 돼 있는데 HTTrack Website Copier이라는 프로그램을 사용하는 것 같습니다. 일단 구글 크롬,마이크로소프트 엣지,파이어폭스 등에서는 해당 사이트를 피싱 사이트로 차단을 하고 있으면 기본적으로 Google Safe Browsing를 사용하는 브라우저에서는 다음과 같은 화면을 표시하면서 피싱사이트 라고 차단을 합니다.
의심스러운 사이트
소프트웨어를 설치하거나 비밀번호나 신용카드 정보와 같은 개인 정보가 드러날 수 있는 행동을 하도록 속일 수 있기 때문에 Firefox가 이 페이지를 차단하였습니다.
Google Safe Browsing의 조언을 받음

신한은행 사칭 피싱 사이트 차단
신한은행 사칭 피싱 사이트 차단

그리고 V3에서도 해당 차단을 하고 있으며 바이러스토탈(VirusTotal)에서도 
2021-08-07 06:17:19 UTC 기준으로 차단하는 보안 업체들은 다음과 같습니다.
BitDefender:Malware
Emsisoft:Phishing
Fortinet:Malware
Kaspersky:Phishing
Netcraft:Malicious
Sophos:Phishing
Webroot:Malicious
일단 개인적으로 일단 일부 보안 업체에 진단되지 않는 보안 업체에 신고는 했습니다.

악성코드 안드로이드 권한
악성코드 안드로이드 권한

먼저 해당 악성코드의 해쉬값을 보겠습니다.
파일명: shinhan.apk
CRC32: a0651acd
MD5:f0b190f6f5af1d912187f99cc94882fc
SHA-1:9ca0e198c2d8b5fe13732abc6b4a48a8bc743d54
SHA-256:e5b149b479753294aa5bc4ceb9280b01538d931dbd1120002997782e48c4e402
SHA-512:70ed22dc4f87405e5552087483c74b0368f2c786b0067e527827ca884abe4c66533d40e3cff445c6c13e398cbd3df09d1ef36e31ab11c5d1701eb484d56cc362
입니다.
그리고 안드로이드 권한은 다음과 같습니다.

<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.REORDER_TASKS"/>
<uses-permission android:name="android.permission.ANSWER_PHONE_CALLS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES"/>
<uses-permission android:name="android.permission.READ_PHONE_NUMBERS"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.BIND_CALL_REDIRECTION_SERVICE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>

일단 악성코드 권한을 보면 기본적으로 스마트폰 위치 권한 요구, 문자 읽기, 문자 쓰기, 인터넷 연결, 연락처 읽기, 연락처 쓰기, 통화기록 읽기, 통화 기록 쓰기 등 사실상 스마트폰 전체 권한을 가져가는 것을 볼 수가 있습니다. 물론 스마트폰 카메라 권한에도 접근하는 것을 볼 수가 있습니다.
com.securegroup.assistant.service.PhoneListenerService 에서는 전화번호 관련 코드들이 보이는 것을 확인할 수가 있습니다.

public PhoneListenerService() {
    new Date();
  }
  
  public final void doInBackground() {
    AtomicBoolean atomicBoolean = new AtomicBoolean(true);
    Semaphore semaphore = new Semaphore(0);
    while (atomicBoolean.get()) {
      Label label = this.this$0;
      StringBuilder stringBuilder = StringBuilder.append("/device/getsettings?imei=");
      stringBuilder.append(MainActivity.this$0.d);
      label.a(stringBuilder.toString(), (Menu)new MenuWrapper(atomicBoolean, semaphore));
      try {
        semaphore.acquire();
        boolean bool = atomicBoolean.get();
        if (!bool)
          return; 
        Thread.sleep(4000L);
      } catch (InterruptedException interruptedException) {
        interruptedException.printStackTrace();
      } 
    } 
  }

피싱 악성코드 실행
피싱 악성코드 실행

그리고 해당 악성코드를 실행하면 다음과 같이 대출 관련 화면이 나오는 것을 볼 수가 있습니다. 

신한은행 사칭 악성코드 개인정보 및 가짜 상담사
신한은행 사칭 악성코드 개인정보 및 가짜 상담사

물론 정상적인 신한은행에서 제공하는 서비스가 아닌 전화금융사기 일당이 만들어 놓은 화면입니다. 여기서 대출을 받으려고 선택을 하면 다음과 같이 신청하기라는 항목이 나오고 여기서는 이름, 연락처, 주민등록번호, 직장명/사업자명, 연봉, 필요금액, 대출신청 사항이라는 것을 볼 수가 있으며 이것이 진짜로 믿게 하려고 상담사 소개라고 해서 상담사를 소개하는 것처럼 소개하고 있지만

실제로는 전화를 하면 보이스피싱 일당으로 가게 돼 있고 당연히 앞서 이야기 한 안드로이드 권한으로 112 같은 경찰서에 신고해도 보이스피싱 일당으로 전화를 걸게 돼 있습니다.

악성코드 인증서 내용
악성코드 인증서 내용

그리고 연락처 읽기를 통해서 연락처에 등록된 사람에게 보이스피싱을 하기 위한 문자를 보낼 수가 있습니다.
인증서 내용은 다음과 같습니다.

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 601106195 (0x23d42713)
        Signature Algorithm: sha256WithRSAEncryption
        Issuer: O=securegroup, OU=securegroup.assistant, CN=securegroup.assistant
        Validity
            Not Before: Apr 24 17:09:47 2021 GMT
            Not After : Apr 18 17:09:47 2046 GMT
        Subject: O=securegroup, OU=securegroup.assistant, CN=securegroup.assistant
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                RSA Public-Key: (2048 bit)

이며 바이러스토탈(VirusTotal) 2021-08-06 14:53:14 UTC 기준으로 다음과 같은 보안 제품들이 탐지하고 있습니다.
AhnLab-V3:Trojan/Android.Kaishi.1018364
Alibaba:TrojanBanker:Android/Fakecalls.a1c002a1
Avast-Mobile:APK:RepMetagen [Trj]
Avira (no cloud):ANDROID/Fakecall.YBG.Gen
BitDefenderFalx:Android.Riskware.Agent.JIH
Cynet:Malicious (score: 99)
Cyren:AndroidOS/Trojan.GNYA-11
DrWeb:Android.Spy.885.origin
ESET-NOD32:A Variant Of Android/Spy.Agent.BSY
Fortinet:Android/Agent.BSY!tr
Ikarus:Trojan.AndroidOS.Agent
K7GW:Trojan ( 00576a241 )
Kaspersky:HEUR:Trojan-Banker.AndroidOS.Fakecalls.f
Lionic:Trojan.AndroidOS.Fakecalls.C!c
McAfee:Artemis!5A604C0DEAFE
McAfee-GW-Edition:Artemis!Trojan
Sophos:Andr/Xgen-AST
Symantec:Trojan.Gen.2
Symantec Mobile Insight:AppRisk:Generisk
Tencent:Dos.Trojan-banker.Fakecalls.Ecjp
요약
1.구글 플레이 스토어 및 공식 스토어 이외에 어플 설치하지 말 것
2.공신력 있는 백신 앱(안티바이러스 앱) 설치해서 실시간 감시 및 실시간 업데이트할 것(AV-TEST 참고)
3.구글 안드로이드 스마트폰에서는 외부 앱을 설치를 하려고 하면 경고 메시지가 나오는데 해당 경고 메시지처럼 외부 앱 설치하지 말 것
4.스팸 차단앱 후후,후스콜,T 전화 같은 것을 사용하면 이런 앱을 활용을 하면 이런 보이스피싱 피해를 줄일 수가 있습니다.
5.소개팅 어플에서 어떤 어플을 다운로드 해서 설치하라고 하면 100% 악성코드입니다.
기본적인 보안 수칙을 지킨다고 하면 이런 스미싱 피해는 줄일 수가 있습니다. 특히 이름 있는 백신 어플을 사용을 하면 기본적으로 악성코드가 유포되는 사이트 및 악성코드를 사전에 차단할 수가 있습니다.

반응형

댓글

비밀글모드

  1. 112에 신고해도 자기들 전화로 연결 되는군요
    2021.08.10 05:15 신고
    • 스마트폰 권한이 넘어가서 입니다.
      2021.08.10 11:09 신고
  2. 조심해야 할 거 같아요
    2021.08.10 06:37 신고
    • 네 공식스토어를 이용하는것이 안전하죠.
      2021.08.10 11:09 신고
  3. 주거래 은행이 신한은행인데
    조심해야겠네요..^^
    2021.08.10 20:08 신고
    • 기본적으로 백신 앱 과 그리고 구글 스토어 같은 공식 경로를 통해서 설치 하면 안전 합니다.
      2021.08.10 23:18 신고