0/61

Threat

is.xyz.mpv

mpv

Analyzed on 2021-11-13T19:04:35.757761

4

permissions

4

activities

1

services

1

receivers

0

domains

File sums

MD5 a8f5fe2f8f77b16cb7e44f1c382e17bf
SHA1 d8510782b1d35365fa2319a8b8ef7b6e6fff5481
SHA256 df6c8c5c8ed5adfb6b6f6cec25713a2eaca18ad742701e8a331aa7cb33d8c564
Size 24.88MB

APKiD

Information computed with APKiD.

/tmp/tmp_4d_mapw!classes.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MANUFACTURER check
compiler
  • r8 without marker (suspicious)

SSdeep

Information computed with ssdeep.

APK file 786432:OMej1hrKSyfLXPBmo2cRA0iD/Npfgda7ICHAcvMcLj78zkXB:giQoq0ITIa7dHVMcoCB
Manifest 384:jYLsmI55eUQt9fjtyngvI1SSl1AHX8SXdm:jGPI55eUQt9rtyngvI1SSEHsSXdm
classes.dex 98304:qK34MVjG18RDGy1UgwK62N0Mji5wlCtDl:q918RlfRCtDl

Dexofuzzy

Information computed with Dexofuzzy.

APK file 6144:hal9GFujY/99mt+8y2zPbAxNH8fv8lsw+:halwditX
classes.dex 6144:hal9GFujY/99mt+8y2zPbAxNH8fv8lsw+:halwditX

APK details

Information computed with AndroGuard and Pithus.

Package is.xyz.mpv
App name mpv
Version name 2021-10-28-release
Version code 26
SDK 21 - 29
UAID 4ddbef0c7ee3f0aaa5ca623318db0919bd31989f
Signature Signature V1 Signature V2 Signature V3
Frosting Frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown
  • 0xf05368c0: Unknown
  • 0x2146444e: Google metadata
  • 0x42726577: Verity padding

Certificate details

Information computed with AndroGuard.

MD5 af50b7db7a372b6c3b66c96e513eb835
SHA1 6ba77bd5e5e287e97f94638a9e6d1dfb78f4df3d
SHA256 fae7f9d02385cc24d96e88436603e23ea6aec7649ad1250abbb4837daab82fff
Issuer Common Name: Jan, Organizational Unit: Unknown, Organization: Prismriver Media, Locality: Unknown, State/Province: Unknown, Country: Unknown
Not before 2016-12-07T20:01:52+00:00
Not after 2116-11-13T20:01:52+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. assets/cacert.pem

Manifest analysis

Information computed with MobSF.

Medium Application Data can be Backed up[android:allowBackup=true]
This flag allows anyone to backup your application data via adb. It allows users who have enabled USB debugging to copy application data off of the device.
High Activity (is.xyz.mpv.MPVActivity) is not Protected. [android:exported=true]
An Activity is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.

Browsable activities

Information computed with MobSF.

is.xyz.mpv.MPVActivity

Hosts: *

Schemes: rtmp:// rtmps:// rtp:// rtsp:// mms:// mmst:// mmsh:// tcp:// udp:// content:// file:// http:// https://

Mime types: video/* audio/* application/vnd.apple.mpegurl text/plain

Main Activity

Information computed with AndroGuard.

is.xyz.mpv.MainActivity

Activities

Information computed with AndroGuard.

is.xyz.mpv.MPVActivity
is.xyz.mpv.MainActivity
is.xyz.mpv.FilePickerActivity
is.xyz.mpv.config.SettingsActivity

Receivers

Information computed with AndroGuard.

is.xyz.mpv.NotificationButtonReceiver

Services

Information computed with AndroGuard.

is.xyz.mpv.BackgroundPlaybackService

NIAP analysis

Information computed with MobSF.

FCS_RBG_EXT.1.1 The application use no DRBG functionality for its cryptographic operations.
Random Bit Generation Services
FCS_STO_EXT.1.1 The application does not store any credentials to non-volatile memory.
Storage of Credentials
FCS_CKM_EXT.1.1 The application generate no asymmetric cryptographic keys.
Cryptographic Key Generation Services
FDP_DEC_EXT.1.1 The application has access to ['network connectivity'].
Access to Platform Resources
FDP_DEC_EXT.1.2 The application has access to no sensitive information repositories.
Access to Platform Resources
FDP_NET_EXT.1.1 The application has user/application initiated network communications.
Network Communications
FDP_DAR_EXT.1.1 The application implement functionality to encrypt sensitive data in non-volatile memory.
Encryption Of Sensitive Application Data
FMT_MEC_EXT.1.1 The application invoke the mechanisms recommended by the platform vendor for storing and setting configuration options.
Supported Configuration Mechanism
FTP_DIT_EXT.1.1 The application does encrypt some transmitted data with HTTPS/TLS/SSH between itself and another trusted IT product.
Protection of Data in Transit

Code analysis

Information computed with MobSF.

High
CVSS:7.5
The App uses an insecure Random Number Generator.
MASVS: MSTG-CRYPTO-6
CWE-330 Use of Insufficiently Random Values
M5: Insufficient Cryptography
Files:
 kotlin/collections/EmptyList.java
kotlin/random/AbstractPlatformRandom.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$4.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$1.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$6.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$3.java
kotlin/random/KotlinRandom.java
kotlin/collections/RingBuffer.java
kotlin/collections/AbstractList.java
kotlin/random/PlatformRandomKt.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$7.java
kotlin/collections/CollectionsKt__CollectionsJVMKt.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$1.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$2.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$4.java
kotlin/collections/builders/ListBuilder.java
kotlin/collections/CollectionsKt___CollectionsKt.java
kotlin/random/FallbackThreadLocalRandom.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$2.java
kotlin/collections/MovingSubList.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$3.java
kotlin/collections/CollectionsKt__MutableCollectionsJVMKt.java
kotlin/random/FallbackThreadLocalRandom$implStorage$1.java
kotlin/random/PlatformRandom.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$5.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$8.java
kotlin/collections/CollectionsKt__MutableCollectionsKt.java
Low
CVSS:7.5
The App logs information. Sensitive information should never be logged.
MASVS: MSTG-STORAGE-3
CWE-532 Insertion of Sensitive Information into Log File
Files:
 is/xyz/mpv/NotificationButtonReceiver.java
is/xyz/mpv/FilePickerActivity.java
is/xyz/mpv/MPVActivity.java
is/xyz/mpv/PlaylistDialog.java
is/xyz/mpv/MPVView.java
is/xyz/mpv/BackgroundPlaybackService.java
is/xyz/mpv/MainActivity.java
kotlin/io/ConsoleKt.java
is/xyz/mpv/Utils.java
High
CVSS:5.5
App can read/write to External Storage. Any App can read data written to External Storage.
MASVS: MSTG-STORAGE-2
CWE-276 Incorrect Default Permissions
M2: Insecure Data Storage
Files:
 is/xyz/mpv/FilePickerActivity.java
is/xyz/mpv/MPVView.java
is/xyz/mpv/MainActivity.java
High
CVSS:5.5
App creates temp file. Sensitive information should never be written into a temp file.
MASVS: MSTG-STORAGE-2
CWE-276 Incorrect Default Permissions
M2: Insecure Data Storage
Files:
 kotlin/io/FilesKt__UtilsKt.java

Permissions analysis

Information computed with MobSF.

High android.permission.WRITE_EXTERNAL_STORAGE read/modify/delete external storage contents
Allows an application to write to external storage.
High android.permission.READ_EXTERNAL_STORAGE read external storage contents
Allows an application to read from external storage.
Low android.permission.INTERNET full Internet access
Allows an application to create network sockets.
Low android.permission.FOREGROUND_SERVICE Allows a regular application to use Service.startForeground

Threat analysis

Information computed with Quark-Engine.

Confidence:
100%
Load external class
Confidence:
100%
Find a method from given class name, usually for reflection
Confidence:
100%
Method reflection
Confidence:
100%
Load class from given class name
Confidence:
100%
Retrieve data from broadcast
Confidence:
100%
Read sensitive data(SMS, CALLLOG, etc)
Confidence:
100%
Send notification
Confidence:
100%
Monitor the broadcast action events (BOOT_COMPLETED)
Confidence:
100%
Get absolute path of the file and store in string
Confidence:
100%
Get last known location of the device
Confidence:
100%
Get location of the device
Confidence:
100%
Method reflection
Confidence:
100%
Get the time of current location
Confidence:
100%
Initialize class object dynamically
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Get declared method from given method name
Confidence:
80%
Open a file from given absolute path of the file
Confidence:
80%
Implicit intent(view a web page, make a phone call, etc.) via setData
Confidence:
80%
Get resource file from res/raw directory

Behavior analysis

Information computed with MobSF.

Android notifications
       is/xyz/mpv/BackgroundPlaybackService.java
Get system service
       is/xyz/mpv/MPVActivity.java
is/xyz/mpv/MPVView.java
is/xyz/mpv/BackgroundPlaybackService.java
is/xyz/mpv/MainActivity.java
is/xyz/mpv/Utils.java
Inter process communication
       is/xyz/mpv/NotificationButtonReceiver.java
is/xyz/mpv/MPVActivityKt.java
is/xyz/mpv/FilePickerActivity.java
is/xyz/mpv/MPVActivity.java
is/xyz/mpv/MPVActivity$openPlaylistMenu$1$openFilePicker$1.java
is/xyz/mpv/BackgroundPlaybackService.java
is/xyz/mpv/MainActivity.java
is/xyz/mpv/MPVActivity$openTopMenu$buttons$2.java
is/xyz/mpv/MPVActivity$openTopMenu$buttons$1.java
Java reflection
       kotlin/internal/PlatformImplementations.java
kotlin/internal/PlatformImplementationsKt.java
kotlin/coroutines/jvm/internal/ModuleNameRetriever.java
kotlin/jvm/internal/Intrinsics.java
kotlin/jvm/internal/Reflection.java
kotlin/jvm/internal/ClassReference.java
kotlin/coroutines/jvm/internal/DebugMetadataKt.java
Loading native code (shared library)
       is/xyz/mpv/MPVLib.java
Local file i/o operations
       is/xyz/mpv/MainActivity.java
is/xyz/mpv/config/InterpolationDialogPreference.java
is/xyz/mpv/config/ScalerDialogPreference.java
Starting activity
       is/xyz/mpv/MPVActivity.java
is/xyz/mpv/MainActivity.java
Starting service
       is/xyz/mpv/MPVActivity.java

Control flow graphs analysis

Information computed by Pithus.

The application probably gets the network connections information

The application probably plays sound

The application probably listens accessibility events