Malware Analysis Report

2024-10-24 20:59

Sample ID 240805-vxll2swgpd
Target xiezi015436 .apk
SHA256 aa8829ed490d1eb7794d3baf3f4693583da130d275b44083c050255fc92fc8a1
Tags
spynote banker collection credential_access discovery evasion execution impact persistence
score
10/10

Table of Contents

Analysis Overview

MITRE ATT&CK

Enterprise Matrix V15

Mobile Matrix V15

Analysis: static1

Detonation Overview

Signatures

Analysis: behavioral1

Detonation Overview

Command Line

Signatures

Processes

Network

Files

Analysis Overview

score
10/10

SHA256

aa8829ed490d1eb7794d3baf3f4693583da130d275b44083c050255fc92fc8a1

Threat Level: Known bad

The file xiezi015436 .apk was found to be: Known bad.

Malicious Activity Summary

spynote banker collection credential_access discovery evasion execution impact persistence

Spynote family

Spynote payload

Makes use of the framework's Accessibility service

Obtains sensitive information copied to the device clipboard

Queries a list of all the installed applications on the device (Might be used in an attempt to overlay legitimate apps)

Declares services with permission to bind to the system

Requests dangerous framework permissions

Makes use of the framework's foreground persistence service

Performs UI accessibility actions on behalf of the user

Requests enabling of the accessibility settings.

Declares broadcast receivers with permission to handle system events

Queries information about active data network

Legitimate hosting services abused for malware hosting/C2

Requests disabling of battery optimizations (often used to enable hiding in the background).

Attempts to obfuscate APK file format

Acquires the wake lock

Schedules tasks to execute at a specified time

Checks memory information

Checks CPU information

MITRE ATT&CK

Analysis: static1

Detonation Overview

Reported

2024-08-05 17:22

Signatures

Spynote family

spynote

Spynote payload

Description Indicator Process Target
N/A N/A N/A N/A

Attempts to obfuscate APK file format

Declares broadcast receivers with permission to handle system events

Description Indicator Process Target
Required by device admin receivers to bind with the system. Allows apps to manage device administration features. android.permission.BIND_DEVICE_ADMIN N/A N/A

Declares services with permission to bind to the system

Description Indicator Process Target
Required by accessibility services to bind with the system. Allows apps to access accessibility features. android.permission.BIND_ACCESSIBILITY_SERVICE N/A N/A
Required by VPN services to bind with the system. Allows apps to provision VPN services. android.permission.BIND_VPN_SERVICE N/A N/A
Required by input method services to bind with the system. Allows apps to provide custom input methods (keyboards). android.permission.BIND_INPUT_METHOD N/A N/A

Requests dangerous framework permissions

Description Indicator Process Target
Allows an application to send SMS messages. android.permission.SEND_SMS N/A N/A
Allows an application to read SMS messages. android.permission.READ_SMS N/A N/A
Allows an application to read the user's call log. android.permission.READ_CALL_LOG N/A N/A
Allows an application to read the user's contacts data. android.permission.READ_CONTACTS N/A N/A
Allows access to the list of accounts in the Accounts Service. android.permission.GET_ACCOUNTS N/A N/A
Required to be able to access the camera device. android.permission.CAMERA N/A N/A
Allows an application to record audio. android.permission.RECORD_AUDIO N/A N/A
Allows an app to access approximate location. android.permission.ACCESS_COARSE_LOCATION N/A N/A
Allows an app to access precise location. android.permission.ACCESS_FINE_LOCATION N/A N/A
Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call. android.permission.CALL_PHONE N/A N/A
Allows an application to read from external storage. android.permission.READ_EXTERNAL_STORAGE N/A N/A
Allows an application to write to external storage. android.permission.WRITE_EXTERNAL_STORAGE N/A N/A
Allows an app to create windows using the type LayoutParams.TYPE_APPLICATION_OVERLAY, shown on top of all other apps. android.permission.SYSTEM_ALERT_WINDOW N/A N/A
Allows read only access to phone state, including the current cellular network information, the status of any ongoing calls, and a list of any PhoneAccounts registered on the device. android.permission.READ_PHONE_STATE N/A N/A
Allows an application to request installing packages. android.permission.REQUEST_INSTALL_PACKAGES N/A N/A

Analysis: behavioral1

Detonation Overview

Submitted

2024-08-05 17:22

Reported

2024-08-05 17:25

Platform

android-33-x64-arm64-20240624-en

Max time kernel

179s

Max time network

187s

Command Line

goat.proportion.performance

Signatures

Makes use of the framework's Accessibility service

collection evasion credential_access
Description Indicator Process Target
Framework service call android.accessibilityservice.IAccessibilityServiceConnection.findAccessibilityNodeInfoByAccessibilityId N/A N/A
Framework service call android.accessibilityservice.IAccessibilityServiceConnection.findAccessibilityNodeInfosByText N/A N/A
Framework service call android.accessibilityservice.IAccessibilityServiceConnection.findAccessibilityNodeInfosByViewId N/A N/A

Obtains sensitive information copied to the device clipboard

collection credential_access impact
Description Indicator Process Target
Framework service call android.content.IClipboard.addPrimaryClipChangedListener N/A N/A

Queries a list of all the installed applications on the device (Might be used in an attempt to overlay legitimate apps)

banker discovery

Acquires the wake lock

Description Indicator Process Target
Framework service call android.os.IPowerManager.acquireWakeLock N/A N/A

Legitimate hosting services abused for malware hosting/C2

Description Indicator Process Target
N/A api.keen.io N/A N/A
N/A api.keen.io N/A N/A

Makes use of the framework's foreground persistence service

evasion persistence
Description Indicator Process Target
Framework service call android.app.IActivityManager.setServiceForeground N/A N/A

Performs UI accessibility actions on behalf of the user

evasion
Description Indicator Process Target
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A
N/A android.accessibilityservice.IAccessibilityServiceConnection.performGlobalAction N/A N/A

Queries information about active data network

discovery
Description Indicator Process Target
Framework service call android.net.IConnectivityManager.getActiveNetworkInfo N/A N/A

Requests disabling of battery optimizations (often used to enable hiding in the background).

evasion
Description Indicator Process Target
Intent action android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS N/A N/A

Requests enabling of the accessibility settings.

Description Indicator Process Target
Intent action android.settings.ACCESSIBILITY_SETTINGS N/A N/A

Schedules tasks to execute at a specified time

execution persistence
Description Indicator Process Target
Framework service call android.app.job.IJobScheduler.schedule N/A N/A

Checks CPU information

Description Indicator Process Target
File opened for read /proc/cpuinfo N/A N/A

Checks memory information

Description Indicator Process Target
File opened for read /proc/meminfo N/A N/A

Processes

goat.proportion.performance

Network

Country Destination Domain Proto
GB 142.250.187.196:443 udp
N/A 224.0.0.251:5353 udp
GB 142.250.187.196:443 udp
GB 142.250.187.196:443 udp
GB 142.250.187.196:443 tcp
GB 216.58.212.238:443 tcp
GB 216.58.212.238:443 tcp
US 1.1.1.1:53 subtitlez0.duckdns.org udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
GB 216.58.212.238:443 udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 ubher.mystrikingly.com udp
US 1.1.1.1:53 rcs-acs-tmo-us.jibe.google.com udp
US 216.239.36.155:443 rcs-acs-tmo-us.jibe.google.com tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 remoteprovisioning.googleapis.com udp
US 52.84.150.43:443 ubher.mystrikingly.com tcp
US 1.1.1.1:53 static-fonts-css.strikinglycdn.com udp
US 1.1.1.1:53 static-assets.strikinglycdn.com udp
GB 143.204.176.32:443 static-fonts-css.strikinglycdn.com tcp
GB 18.164.68.91:443 static-assets.strikinglycdn.com tcp
GB 18.164.68.91:443 static-assets.strikinglycdn.com udp
GB 18.164.68.91:443 static-assets.strikinglycdn.com udp
US 1.1.1.1:53 custom-images.strikinglycdn.com udp
GB 13.224.245.42:443 custom-images.strikinglycdn.com tcp
US 1.1.1.1:53 static-fonts.strikinglycdn.com udp
GB 18.245.187.70:443 static-fonts.strikinglycdn.com tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
GB 13.224.245.42:443 custom-images.strikinglycdn.com udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 172.64.41.3:443 tcp
US 172.64.41.3:443 tcp
GB 142.250.200.3:443 tcp
US 172.64.41.3:443 udp
GB 142.250.200.3:443 udp
GB 142.250.187.196:443 tcp
GB 172.217.169.68:443 tcp
GB 142.250.187.196:443 tcp
GB 142.250.187.196:443 tcp
GB 172.217.169.68:443 tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
GB 142.250.187.227:443 tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 subtitlez0.duckdns.org udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 cdnjs.cloudflare.com udp
US 104.17.25.14:443 cdnjs.cloudflare.com tcp
US 1.1.1.1:53 static-assets.strikinglycdn.com udp
GB 18.164.68.91:443 static-assets.strikinglycdn.com udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 subtitlez0.duckdns.org udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
GB 18.164.68.91:443 static-assets.strikinglycdn.com udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 1.1.1.1:53 d26b395fwzu5fz.cloudfront.net udp
GB 108.138.225.3:443 d26b395fwzu5fz.cloudfront.net tcp
US 1.1.1.1:53 api.keen.io udp
US 54.201.75.199:443 api.keen.io tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
GB 18.164.68.91:443 static-assets.strikinglycdn.com udp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp
US 192.169.69.26:7771 subtitlez0.duckdns.org tcp

Files

/storage/emulated/0/Config/sys/apps/log/log-2024-08-05.txt

MD5 ba30336bf53d54ed3c0ea69dd545de8c
SHA1 ce99c6724c75b93b7448e2d9fac16ca702a5711f
SHA256 2d6988fb5afdaafc4e33fa1f71d6f10c95ab5a49a8ec820add5b13eef05439af
SHA512 eea34ca526e03349e746d3687ea660b4748f0174fe2ffdb65161e232e08630b345e03329614852ce881a71362ba68575e9dd08fa361a416e5b2fb231e21a0a3e

/storage/emulated/0/Config/sys/apps/log/log-2024-08-05.txt

MD5 fd8ed43ac31bbf329c395582c15753cd
SHA1 3c76ee3fa79dde645c0447d6b23d6f435efb3b72
SHA256 049d51bf61bf26d7b9e55391560cc23ec59d2240453ac81b87f2e81153b0fcaf
SHA512 77bb10d1eeeea15fc35f7232af698c951d3f47a5fff56682bbc32f6bea9ebecc997d89ed88c6dff9c226c09446261f184ecbac9697f95799753d73a71e6c4d37

/storage/emulated/0/Config/sys/apps/log/log-2024-08-05.txt

MD5 cfb2fc8a0af4f4adec3fe47a4b07650c
SHA1 bf2888f53795c86ca8cd8f65477b475181502547
SHA256 916f3c154374fb9958d715001a369e4eb7a00ba5b3dc8c39a3f91b23be1e191d
SHA512 f7e44ccc4e499e319960f5c9f1aa49fac6038912d3608bdd161d0279d422b40456292eabef080f0e3466f2050b5240d3ee6d653dc80df489a859a367c1d289c6

/storage/emulated/0/Config/sys/apps/log/log-2024-08-05.txt

MD5 869d5ce4a4ca929cd7a4a256560c3aea
SHA1 e266e45ee8895be257834dd6c9d014c7ada752e8
SHA256 27e8cc41aa443e3e444c3615b103ff9105a6ca106020cf77b27218476e2ab0e2
SHA512 0fa3bc5f69d48c48bb922185059d326cdd12c07d985cca51a861fee6123c74adcb2bc74689285c490b3a677c97cc01f822d188fc48bf1511b3891e548e342933