꿈을꾸는 파랑새

오늘은 구글 플레이 스토어 에서 QR 코드 스캐너로 위장해서 악성코드를 유포하는 QRScanner에 대해 글을 적어 보겠습니다.
QR 코드라는 것은 2차원 매트릭스 형태로 이루어진 정보 표시 방법이며 QR는 Quick Response의 약자이고 1994년 일본의 덴소 웨이브(デンソーウェーブ) 에서 처음으로 개발하고 보급을 하고 있습니다. 한국에서는 아마도 작년 코로나 19 상황에서 QR 코드 전자출입명부를 만들어서 사용했을 것입니다.
일단 해당 악성코드인 QRScanner 은 QR 코드를 스캔하지만 여기서 악성코드 동작도 하고 있습니다. 일단 구글 플레이 스토어 에 표시된 앱 내용은 다음과 같습니다.

https://play.google(.)com/store/apps/details?id=com.scanner.barcode.qrcode.pro

구글 플레이 스토어 에 유포 중인 악성코드 QRScanner 악성코드
구글 플레이 스토어 에 유포 중인 악성코드 QRScanner 악성코드

QrCode generator is the fastest and best user friendly scanner app that lets you easily scan both barcodes and QR codes.
【Search product information with QRcode Reader】
Use the product scanner to search for product information - find products at the best price.
Search product detail by barcode or product’s name.
Use the Qr code scanner online then search for product information in our storage or on the internet
Our smart bar code scanner lets you scan barcodes, qr code reader from image printed on all products, anywhere without an internet connection.
✔️Scan QRcode/Barcode for any product you want: compare prices from many different stores to find the best price.
QRcode Scanner is not just a QR code reader but also a free QR code generator.
You can generate arbitrary QR codes reader online with our scanner app without limit to generate QR code and read barcodes.
This is a powerful qr code scanner online: it scans various types of qr mode such as ISBN, EAN, UPC, matrix data, EQS, EAN 8, Code39, Code128 ...
【Main Functions of QR code scanner app】
Online barcode generator directly with the camera
 Read QR code/Barcode from images in your device
 Flashlight is supported
Zoom camera to bar code at far distance
Open the web address or search page of the decoding results by Google.
Export QR code which is scanned to PDF file.
History: store all of the scans on your devices.
 Save and share QR code/Barcode to your friends.
【Smart QR code/Barcode Generator App】
Automatically detect the scanner.
Create your own qr code: e-mail addresses, application, text, phone numbers, contact information, wifi , event, location and so on.
Create professional with different themes of barcode scanner generator
Easy to save and share your new QR code via social networking (Facebook, Twitter, Email, Line, whatsapp, SMS...)

악성코드 웹 개발자 정보
악성코드 웹 개발자 정보

버전:1.1.0_14
업데이트 날짜:2022. 7. 22.
필요한 Android 버전:5.0 이상
다운로드:5,000+회 다운로드
콘텐츠 등급:만 3세 이상 자세히 알아보기
출시일: 2022. 7. 22.
개발자:wyssreynolds

이며 해쉬값은 다음과 같습니다.
파일명:QRScanner 1.1.0.14.apk
사이즈:10.8 MB
CRC32:7619f05c
MD5:37d58e17051c7abab62ec3955d48e0c7
SHA-1:cb1308185b40efcfa9e25e84a19b8b190f2e4cb0
SHA-256:251eea43e33bc6a4f40e9cc38dfc8f04bcc7ec7a1ddd395ee934052f1ea5159d
SHA-512:748dc642d3b8bd54ea7ef7723adc1b74aad1af44d44221df8c371d8adf68adfbeb2425917c0e5639b85884783abcd64a3992d075bda6e61bf62c1d5bd23a605f

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

이며 웹 개발자 정보를 보면 일단 수상하다는 것을 확인할 수가 있습니다. 일단 기본적으로 https 가 아닌 기본입니다.

http://137.184.114(.)118/

그리고 DEX 정보는 다음과 같습니다.
Dex File Name:classes.dex
File Size:267024 bytes
MD5:0ae1e5c4cbc161e6c7a74a1f8645325a
Class Size:122
Method Size:1206
String Size:3070
Dex File Name:classes2.dex
File Size:2432 bytes
MD5:12657bfbd4606f9361320056723cd470
Class Size:9
Method Size:10
String Size:39
Dex File Name:classes3.dex
File Size:2432 bytes
MD5:12657bfbd4606f9361320056723cd470
Class Size:9
Method Size:10
String Size:39
입니다.해당 악성코드의 안드로이드 권한은 다음과 같습니다.그리고 DEX 정보는 다음과 같습니다.
Dex File Name:classes.dex
File Size:267024 bytes
MD5:0ae1e5c4cbc161e6c7a74a1f8645325a
Class Size:122
Method Size:1206
String Size:3070
Dex File Name:classes2.dex
File Size:2432 bytes
MD5:12657bfbd4606f9361320056723cd470
Class Size:9
Method Size:10
String Size:39
Dex File Name:classes3.dex
File Size:2432 bytes
MD5:12657bfbd4606f9361320056723cd470
Class Size:9
Method Size:10
String Size:39
입니다.해당 악성코드의 안드로이드 권한은 다음과 같습니다.

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.READ_CALENDAR"/>
<uses-permission android:name="android.permission.WRITE_CALENDAR"/>
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>

기본적으로 액세스 네트워크 상태 확인, WI-FI 상태 확인, 외장 드라이브 읽고 외장 드라이브 쓰기, 카메라, 진동, 연락처, 연락처 쓰기, 안드로이드 스마트폰 캘린더 데이터를 읽기, 손전등, 스마트폰 켜진 상태로 유지, 광고 ID 있는 것을 확인할 수가 있습니다.
res/values/strings.xml 부분에서는 페이스북 API 가 보이는 것을 확인할 수가 있습니다.

악성코드 페이스북 API
악성코드 페이스북 API

com.google.android.material.transformation.FabTransformationSheetBehavior</string>
    <string name="facebook_app_id">736919344263968</string>
    <string name="facebook_id">736919344263968</string>
    <string name="fail_calendar">Calendar creation failed</string>
    <string name="fail_calendar_time">The start time should be earlier than the end time</string>
    <string name="fail_create">Create failed</string>
    <string name="fail_download">Download failed</string>
    <string name="fail_duplicate_name">The name cannot be repeated</string>
    <string name="fail_email">Please input the correct email address</string>
    <string name="fail_empty">Please enter content</string>
    <string name="fail_export">Export failed</string>
    <string name="fail_folder_move">Folder cannot be moved</string>
    <string name="fail_lock">Encryption failed</string>
    <string name="fail_logo">add failed</string>
    <string name="fail_password_length">Password must be 16 digits</string>
    <string name="fail_phone">Please enter the correct phone number</string>
    <string name="fail_unlock">Unlock failed</string>
    <string name="fail_url">Please enter the correct URL</string>
    <string name="feedback1">We always try our best to work for you. We really appreciate if you can give us some

QRScanner 악성코드 실행QRScanner 스캔 코드
QRScanner 스캔 코드

입니다. 그리고 com.wrapper.proxyapplication.Util 부분에서는 안드로이드 비트를 확인을 위한 코드들이 존재합니다.

QRScanner 악성코드 안드로이드 스마트폰 비트 확인
QRScanner 악성코드 안드로이드 스마트폰 비트 확인

public static void getCPUABI() {
        if (CPUABI == null) {
            try {
                String os_cpuabi = new BufferedReader(new InputStreamReader(Runtime.getRuntime().exec("getprop ro.product.cpu.abi").getInputStream())).readLine();
                if (os_cpuabi.contains("x86")) {
                    CPUABI = "x86";
                } else if (os_cpuabi.contains("armeabi-v7a") || os_cpuabi.contains("arm64-v8a")) {
                    CPUABI = "armeabi-v7a";
                } else {
                    CPUABI = "armeabi";
                }
            } catch (Exception e) {
                CPUABI = "armeabi";
            }
        }
    }

QRScanner 악성코드 인증서 정보
QRScanner 악성코드 인증서 정보

QRScanner 악성코드 인증서 정보는 다음과 같습니다.

서명자BNDLTOOL.RSA (META-INF/BNDLTOOL.SF)
유형:X.509
버전:3
시리얼 번호 0x49ebc73
소유자:CN=er, OU=df, O=sadf, L=dsaf, ST=as, C=sdf
유효 시작 시각:Fri Jul 22 19:23:16 GMT+09:00 2022
유효 종료 시각:Sat Apr 24 19:23:16 GMT+09:00 2077
공개키 타입:RSA
지수:65537
모듈러스 크기 (비트):2048
모듈러스: 19640513290548208051787158545546576620455505777103654173616349189736598574259218167827843482847815533312430830201379107308918730337402664855716412902627078642488178836179707083830523251179883549453617675068660146275156828415362520544909570515430589229744905892207890677221381150163253702347777858658151197599776391038725681480627652611281888284654178591917182697913012255146410008816452243763592111813244449323558736280959835006117750698992307432325845024833972757109768243531287447350413538847405835343512036696694002147941819851947378305544926005075757144037055215734649916234686833082541835250474782207753650489983
서명 유형: SHA256withRSA
서명 OID: 1.2.840.113549.1.1.11
MD5 지문: 0A 3C 3D 40 55 DD 5A A9 97 C9 22 F6 74 04 C0 69 
SHA-1 지문: B9 07 B8 93 C2 27 71 B0 0A 13 D8 0B 7C 5B 0D 5F 62 A7 69 FB 
SHA-256 지문: C4 DD A6 0A AC 7B F8 F5 64 29 0C B1 8A 3C 18 CE B2 CE 5A 23 E1 53 42 09 92 8E CD FB C6 B5 8D 1C

해당 악성코드 트래픽은 다음과 같습니다.

172.217.218(.)95:443
74.125.128(.)95:443
142.250.145(.)95:443
173.194.69(.)138:443
108.177.126(.)188:5228
142.250.145(.)106:443
142.250.145(.)103:443
108.177.127(.)188:5228
142.250.150(.)188:443
142.250.145(.)99:443
142.250.145(.)105:443
142.250.145(.)147:443
172.217.218(.)102:443
108.177.127(.)138:443
142.250.145(.)102:443
173.194.69(.)95:443
142.250.153(.)95:443
142.251.31(.)99:443
142.250.157(.)188:443
142.251.31(.)106:443
108.177.127(.)95:80
173.194.69(.)188:5228
142.250.152(.)188:5228
142.251.31(.)103:443

VirusTotal(바이러스토탈) 2022-08-08 15:43:17 UTC 기준 탐지 하는 보안 업체들은 다음과 같습니다.
ESET-NOD32:Android/Agent.DKV
Ikarus:Trojan.AndroidOS.Agent
Lionic:Trojan.AndroidOS.MobOk.C!c
McAfee:Artemis!37D58E17051C
McAfee-GW-Edition:Artemis!Trojan
Symantec Mobile Insight:AdLibrary:Generisk
일단 개인적으로 구글 플레이 스토어 에 신고를 했으며 이의가 받아지면 폭발을 할 것입니다. 굳이 QR 코드 스캐너를 사용한다고 하며 Kaspersky Lab(카스퍼스키), Trend Micro(트랜드 마이크로)같은 보안 업체에서 제공하는 QR 스캐너를 사용하는 것이 안전하고 큐싱(Qshing) 이라고 부르는 피싱 또는 악성코드로부터 안전하게 사용을 하고 있으며 기본적으로 언제나 이야기하지만 이런 악성코드를 예방하려며

[소프트웨어 팁/보안 및 분석] - QR 코드를 악용 하는 피싱 큐싱(Qshing) 예방 방법

 

QR 코드를 악용 하는 피싱 큐싱(Qshing) 예방 방법

오늘은 QR 코드를 악용하는 피싱 큐싱(Qshing)에 대해서 알아보는 시간을 가져 보겠습니다. 일단 지난 2017년에 공유기 DNS 변조를 악용하는 네이버 사칭 피싱 공격 큐싱 예방 방법이라는 글을 적은

wezard4u.tistory.com

안드로이드 스마트폰 사용자 분들은 기본적으로 신뢰할 수 있는 백신 앱을 설치를 해서 사용을 하시길 바랍니다. 물론 만약 해킹을 대비해서 기본적으로 이 단계 인증은 필수로 해주는 것이 가장 좋은 방법입니다. 그리고 기본적으로 구글 플레이 스토어 에서도 악성코드가 유포되고 있으니 조심하시길 바랍니다.

그리드형

공유하기

facebook twitter kakaoTalk kakaostory naver band