1/63

Threat

com.example.vpnner

SaferVPN

Analyzed on 2021-10-13T06:53:11.968860

24

permissions

15

activities

3

services

2

receivers

12

domains

File sums

MD5 8a847b0f466b3174741aac734989aa73
SHA1 03eadb4ab93a1a0232cb40b7d2ef179a1cd0174d
SHA256 5d3ff202f20af915863eee45916412a271bae1ea3a0e20988309c16723ce4da5
Size 11.75MB

APKiD

Information computed with APKiD.

/tmp/tmp5nwfa76r!classes.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MANUFACTURER check
  • Build.BRAND check
  • Build.BOARD check
  • possible Build.SERIAL check
compiler
  • r8

SSdeep

Information computed with ssdeep.

APK file 196608:0/ruFMnjielhXAzLekMhH6rHVFIA2+7zWc7yi0UWsGZaHlgcm+2YplVl2toTkUmc:0/ruqnjiNPqhiF2+Z2x9taFgspDl2to1
Manifest 192:NY8wvbcRHKLzto9OeHG/bty/b+ZA0eOQ8CAgAn8KY8nxs/uu/9I/S6BA6Aq/NcAd:…
classes.dex 98304:myQjSTZ3GUx4uQL06uoSOQ/YZEZmK624gul4095na2BlLmY:2WZ20CeONBp

Dexofuzzy

Information computed with Dexofuzzy.

APK file 6144:PyF/QWj0CD0ItJ1rQ/vWPds36d2Yj15FAQRxPbAWNz81vI5snm:Pufj0CgK6vKdn…
classes.dex 6144:PyF/QWj0CD0ItJ1rQ/vWPds36d2Yj15FAQRxPbAWNz81vI5snm:Pufj0CgK6vKdn…

APK details

Information computed with AndroGuard and Pithus.

Package com.example.vpnner
App name SaferVPN
Version name 1.0
Version code 1
SDK 16 - 25
UAID e10ef7f390a20f2d2cebac6436de07cc8e2c8699
Signature Signature V1
Frosting Not frosted

Certificate details

Information computed with AndroGuard.

MD5 8ddb342f2da5408402d7568af21e29f9
SHA1 27196e386b875e76adf700e7ea84e4c6eee33dfa
SHA256 c8a2e9bccf597c2fb6dc66bee293fc13f2fc47ec77bc6b2b0d52c11f51192ab8
Issuer Email Address: android@android.com, Common Name: Android, Organizational Unit: Android, Organization: Android, Locality: Mountain View, State/Province: California, Country: US
Not before 2008-04-15T22:40:50+00:00
Not after 2035-09-01T22:40:50+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. okhttp3/internal/publicsuffix/NOTICE

Manifest analysis

Information computed with MobSF.

High Clear text traffic is Enabled For App[android:usesCleartextTraffic=true]
The app intends to use cleartext network traffic, such as cleartext HTTP, FTP stacks, DownloadManager, and MediaPlayer. The default value for apps that target API level 27 or lower is "true". Apps that target API level 28 or higher default to "false". The key reason for avoiding cleartext traffic is the lack of confidentiality, authenticity, and protections against tampering; a network attacker can eavesdrop on transmitted data and also modify it without being detected.
Low App is direct-boot aware [android:directBootAware=true]
This app can run before the user unlocks the device. If you're using a custom subclass of Application, and if any component inside your application is direct - boot aware, then your entire custom application is considered to be direct - boot aware.During Direct Boot, your application can only access the data that is stored in device protected storage.
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 TaskAffinity is set for Activity
(de.blinkt.openvpn.DisconnectVPNActivity)
If taskAffinity is set, then other application could read the Intents sent to Activities belonging to another task. Always use the default setting keeping the affinity as the package name in order to prevent sensitive information inside sent or received Intents from being read by another application.
High Broadcast Receiver (com.example.vpnner.StartActivityOnBootReceiver) is not Protected.An intent-filter exists.
A Broadcast Receiver is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device. The presence of intent-filter indicates that the Broadcast Receiver is explicitly exported.
High Broadcast Receiver (com.example.vpnner.NotificationReceiver) is not Protected. [android:exported=true]
A Broadcast Receiver is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
High Service (de.blinkt.openvpn.core.OpenVPNService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.BIND_VPN_SERVICE [android:exported=true]
A Service is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device. It is protected by a permission which is not defined in the analysed application. As a result, the protection level of the permission should be checked where it is defined. If it is set to normal or dangerous, a malicious application can request and obtain the permission and interact with the component. If it is set to signature, only applications signed with the same certificate can obtain the permission.
High Service (com.example.vpnner.MyJobIntentService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.BIND_JOB_SERVICE [android:exported=true]
A Service is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device. It is protected by a permission which is not defined in the analysed application. As a result, the protection level of the permission should be checked where it is defined. If it is set to normal or dangerous, a malicious application can request and obtain the permission and interact with the component. If it is set to signature, only applications signed with the same certificate can obtain the permission.

Main Activity

Information computed with AndroGuard.

com.example.vpnner.MainActivity

Activities

Information computed with AndroGuard.

com.example.vpnner.RepeatActivity
com.example.vpnner.DiallingActivity
com.example.vpnner.SMSActivity
com.example.vpnner.CameraActivity
com.example.vpnner.AucioRecorderActivity
com.example.vpnner.CallLogsActivity
com.example.vpnner.AccessStorageActivity
com.example.vpnner.LocationActivity
com.example.vpnner.READCONTACTSActivity
com.example.vpnner.ShotActivity
com.example.vpnner.MainActivity
de.blinkt.openvpn.DisconnectVPNActivity
com.example.vpnner.FullScreenActivity
com.example.vpnner.LockScreenActivity
com.google.android.gms.common.api.GoogleApiActivity

Receivers

Information computed with AndroGuard.

com.example.vpnner.StartActivityOnBootReceiver
com.example.vpnner.NotificationReceiver

Services

Information computed with AndroGuard.

de.blinkt.openvpn.core.OpenVPNService
com.example.vpnner.MainService
com.example.vpnner.MyJobIntentService

Sample timeline

Certificate valid not before April 15, 2008, 10:40 p.m.
Latest file found in APK April 16, 2008, 4:10 a.m.
First submission on VT Oct. 11, 2021, 8:26 p.m.
Last submission on VT Oct. 11, 2021, 8:26 p.m.
Upload on Pithus Oct. 13, 2021, 6:53 a.m.
Certificate valid not after Sept. 1, 2035, 10:40 p.m.

NIAP analysis

Information computed with MobSF.

FCS_RBG_EXT.1.1 The application implement DRBG functionality for its cryptographic operations.
Random Bit Generation Services
FCS_STO_EXT.1.1 The application invoke the functionality provided by the platform to securely store 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 ['location', 'network connectivity', 'microphone', 'camera'].
Access to Platform Resources
FDP_DEC_EXT.1.2 The application has access to ['system logs', 'call lists', 'address book'].
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
FCS_RBG_EXT.2.1
FCS_RBG_EXT.2.2
The application perform all deterministic random bit generation (DRBG) services in accordance with NIST Special Publication 800-90A using Hash_DRBG. The deterministic RBG is seeded by an entropy source that accumulates entropy from a platform-based DRBG and a software-based noise source, with a minimum of 256 bits of entropy at least equal to the greatest security strength (according to NIST SP 800-57) of the keys and hashes that it will generate.
Random Bit Generation from Application
FCS_CKM.1.1(1) The application generate asymmetric cryptographic keys in accordance with a specified cryptographic key generation algorithm RSA schemes using cryptographic key sizes of 2048-bit or greater.
Cryptographic Asymmetric Key Generation
FCS_COP.1.1(2) The application perform cryptographic hashing services in accordance with a specified cryptographic algorithm SHA-1/SHA-256/SHA-384/SHA-512 and message digest sizes 160/256/384/512 bits.
Cryptographic Operation - Hashing
FCS_COP.1.1(3) The application perform cryptographic signature services (generation and verification) in accordance with a specified cryptographic algorithm RSA schemes using cryptographic key sizes of 2048-bit or greater.
Cryptographic Operation - Signing
FCS_HTTPS_EXT.1.2 The application implement HTTPS using TLS.
HTTPS Protocol
FCS_HTTPS_EXT.1.3 The application notify the user and not establish the connection or request application authorization to establish the connection if the peer certificate is deemed invalid.
HTTPS Protocol
FIA_X509_EXT.2.1 The application use X.509v3 certificates as defined by RFC 5280 to support authentication for HTTPS , TLS.
X.509 Certificate Authentication
FIA_X509_EXT.2.2 When the application cannot establish a connection to determine the validity of a certificate, the application allow the administrator to choose whether to accept the certificate in these cases or accept the certificate ,or not accept the certificate.
X.509 Certificate Authentication

Code analysis

Information computed with MobSF.

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:
 com/bumptech/glide/load/resource/bitmap/TransformationUtils.java
com/bumptech/glide/manager/RequestManagerRetriever.java
de/blinkt/openvpn/api/ConfirmDialog.java
com/bumptech/glide/manager/RequestManagerFragment.java
com/bumptech/glide/load/resource/bitmap/BitmapEncoder.java
com/bumptech/glide/load/resource/bitmap/DrawableToBitmapConverter.java
com/bumptech/glide/load/engine/cache/DiskLruCacheWrapper.java
de/blinkt/openvpn/OpenVpnApi.java
com/bumptech/glide/load/model/FileLoader.java
com/bumptech/glide/load/data/LocalUriFetcher.java
com/bumptech/glide/load/resource/bitmap/VideoDecoder.java
com/bumptech/glide/load/data/HttpUrlFetcher.java
com/bumptech/glide/load/engine/cache/MemorySizeCalculator.java
com/bumptech/glide/request/SingleRequest.java
org/greenrobot/eventbus/util/ErrorDialogManager.java
com/example/vpnner/gpsutil.java
com/bumptech/glide/signature/ApplicationVersionSignature.java
com/bumptech/glide/manager/SupportRequestManagerFragment.java
com/bumptech/glide/load/engine/DecodeJob.java
com/bumptech/glide/request/target/CustomViewTarget.java
com/bumptech/glide/load/engine/DecodePath.java
com/bumptech/glide/load/resource/gif/StreamGifDecoder.java
com/example/vpnner/RecorderService.java
com/bumptech/glide/load/engine/SourceGenerator.java
com/bumptech/glide/gifdecoder/GifHeaderParser.java
de/blinkt/openvpn/core/StatusListener.java
com/bumptech/glide/load/resource/gif/GifDrawableEncoder.java
com/bumptech/glide/load/engine/Engine.java
de/blinkt/openvpn/core/OpenVPNThread.java
com/bumptech/glide/Glide.java
com/example/vpnner/ShotActivity.java
com/bumptech/glide/load/data/mediastore/ThumbFetcher.java
com/bumptech/glide/load/data/mediastore/ThumbnailStreamOpener.java
com/bumptech/glide/load/model/StreamEncoder.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
com/bumptech/glide/load/resource/bitmap/BitmapImageDecoderResourceDecoder.java
de/blinkt/openvpn/core/OpenVPNService.java
kotlin/io/ConsoleKt.java
com/bumptech/glide/module/ManifestParser.java
com/example/vpnner/MainService.java
com/example/vpnner/NotificationService.java
com/bumptech/glide/load/engine/executor/GlideExecutor.java
com/bumptech/glide/load/resource/bitmap/HardwareConfigState.java
com/bumptech/glide/load/engine/GlideException.java
com/bumptech/glide/manager/RequestTracker.java
com/bumptech/glide/load/model/ByteBufferFileLoader.java
com/example/vpnner/CameraTakeActivity.java
com/bumptech/glide/load/model/ResourceLoader.java
com/bumptech/glide/load/resource/bitmap/DefaultImageHeaderParser.java
de/blinkt/openvpn/core/PRNGFixes.java
com/example/vpnner/Functions.java
com/bumptech/glide/load/engine/prefill/BitmapPreFillRunner.java
com/bumptech/glide/util/pool/FactoryPools.java
com/bumptech/glide/gifdecoder/StandardGifDecoder.java
com/bumptech/glide/load/resource/gif/ByteBufferGifDecoder.java
org/greenrobot/eventbus/util/ErrorDialogConfig.java
com/bumptech/glide/manager/DefaultConnectivityMonitorFactory.java
com/bumptech/glide/manager/DefaultConnectivityMonitor.java
com/example/vpnner/MainActivity.java
com/bumptech/glide/request/target/ViewTarget.java
com/bumptech/glide/load/engine/bitmap_recycle/LruBitmapPool.java
de/blinkt/openvpn/FileProvider.java
com/bumptech/glide/load/resource/bitmap/Downsampler.java
com/bumptech/glide/load/resource/ImageDecoderResourceDecoder.java
com/bumptech/glide/load/data/AssetPathFetcher.java
com/bumptech/glide/load/engine/bitmap_recycle/LruArrayPool.java
com/bumptech/glide/util/ContentLengthInputStream.java
com/bumptech/glide/load/model/ByteBufferEncoder.java
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
kotlinx/coroutines/scheduling/CoroutineScheduler.java
kotlin/random/KotlinRandom.java
kotlin/collections/AbstractList.java
kotlin/collections/RingBuffer.java
kotlin/random/PlatformRandomKt.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$7.java
kotlin/collections/CollectionsKt__CollectionsJVMKt.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$2.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$1.java
okio/Options.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$4.java
kotlin/collections/builders/ListBuilder.java
kotlin/collections/CollectionsKt___CollectionsKt.java
kotlin/random/FallbackThreadLocalRandom.java
kotlin/collections/MovingSubList.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$2.java
kotlin/collections/unsigned/UArraysKt___UArraysJvmKt$asList$3.java
kotlin/collections/CollectionsKt__MutableCollectionsJVMKt.java
kotlin/random/PlatformRandom.java
kotlin/random/FallbackThreadLocalRandom$implStorage$1.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$5.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$8.java
kotlin/collections/CollectionsKt__MutableCollectionsKt.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:
 com/example/vpnner/Constants.java
com/example/vpnner/RecorderService.java
Low
CVSS:0
This App copies data to clipboard. Sensitive data should not be copied to clipboard as other applications can access it.
MASVS: MSTG-STORAGE-10
Files:
 com/example/vpnner/Functions.java
Medium
CVSS:4.3
IP Address disclosure
MASVS: MSTG-CODE-2
CWE-200 Information Exposure
Files:
 de/blinkt/openvpn/core/OrbotHelper.java
de/blinkt/openvpn/VpnProfile.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
de/blinkt/openvpn/core/ConfigParser.java
de/blinkt/openvpn/core/OpenVPNService.java
de/blinkt/openvpn/core/X509Utils.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/path/PathsKt__PathUtilsKt.java
kotlin/io/FilesKt__UtilsKt.java
High
CVSS:5.9
SHA-1 is a weak hash known to have hash collisions.
MASVS: MSTG-CRYPTO-4
CWE-327 Use of a Broken or Risky Cryptographic Algorithm
M5: Insufficient Cryptography
Files:
 de/blinkt/openvpn/core/LogItem.java
de/blinkt/openvpn/api/AppRestrictions.java
de/blinkt/openvpn/core/PRNGFixes.java
High
CVSS:7.4
Files may contain hardcoded sensitive informations like usernames, passwords, keys etc.
MASVS: MSTG-STORAGE-14
CWE-312 Cleartext Storage of Sensitive Information
M9: Reverse Engineering
Files:
 de/blinkt/openvpn/utils/PropertiesService.java
com/bumptech/glide/manager/RequestManagerRetriever.java
com/example/vpnner/NotificationReceiverKt.java
de/blinkt/openvpn/LaunchVPN.java
com/bumptech/glide/load/Option.java
com/bumptech/glide/load/engine/ResourceCacheKey.java
com/bumptech/glide/load/engine/DataCacheKey.java
com/bumptech/glide/load/engine/EngineResource.java
de/blinkt/openvpn/api/ExternalAppDatabase.java
High
CVSS:5.9
This App uses RSA Crypto without OAEP padding. The purpose of the padding scheme is to prevent a number of attacks on RSA that only work when the encryption is performed without padding.
MASVS: MSTG-CRYPTO-3
CWE-780 - Use of RSA Algorithm without OAEP
M5: Insufficient Cryptography
Files:
 de/blinkt/openvpn/VpnProfile.java
Pygal Australia: 100 Germany: 100 United States: 900

Map computed by Pithus.

Domains analysis

Information computed with MobSF.

US xposed.info 45.55.233.97
US github.com 140.82.121.4
US natmchugh.blogspot.de 216.58.212.161
cdsa.xyz
US openvpn.net 104.18.110.96
US repo.xposed.info 45.55.233.97
US crowdin.net 54.163.68.141
US community.openvpn.net 104.18.109.96
DE sites.inka.de 193.197.184.17
US google.com 142.250.181.238
AU www.bouncycastle.org 203.32.61.103
US developer.android.com 142.250.186.110

URL analysis

Information computed with MobSF.

http://cdsa.xyz
Defined in com/example/vpnner/Constants.java
https://google.com
Defined in com/example/vpnner/MainActivity.java
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
https://developer.android.com/training/efficient-downloads/efficient-network-access.html#RadioStateMachine
http://sites.inka.de/bigred/devel/tcp-tcp.html
https://github.com/schwabe/ics-openvpn/issues/18
https://github.com/schwabe/ics-openvpn/issues/29
http://www.bouncycastle.org)
https://github.com/schwabe/ics-openvpn/
http://xposed.info/
http://repo.xposed.info/module/de.blinkt.vpndialogxposed
https://github.com/schwabe/ics-openvpn/issues/34
https://github.com/schwabe/ics-openvpn/issues/185
https://crowdin.net/project/ics-openvpn/invite
https://community.openvpn.net/
https://natmchugh.blogspot.de/2015/02/create-your-own-md5-collisions.html
https://github.com/OpenVPN/easy-rsa/releases
Defined in Android String Resource
http://openvpn.net/howto.html#mitm
Defined in lib/armeabi-v7a/libopenvpn.so
http://openvpn.net/howto.html#mitm
Defined in lib/x86_64/libopenvpn.so
http://openvpn.net/howto.html#mitm
Defined in lib/arm64-v8a/libopenvpn.so
http://openvpn.net/howto.html#mitm
Defined in lib/x86/libopenvpn.so

Permissions analysis

Information computed with MobSF.

High android.permission.ACCESS_COARSE_LOCATION coarse (network-based) location
Access coarse location sources, such as the mobile network database, to determine an approximate phone location, where available. Malicious applications can use this to determine approximately where you are.
High android.permission.ACCESS_FINE_LOCATION fine (GPS) location
Access fine location sources, such as the Global Positioning System on the phone, where available. Malicious applications can use this to determine where you are and may consume additional battery power.
High android.permission.ACCESS_BACKGROUND_LOCATION access location in background
Allows an app to access location in the background. If you're requesting this permission, you must also request either
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.
High android.permission.SYSTEM_ALERT_WINDOW display system-level alerts
Allows an application to show system-alert windows. Malicious applications can take over the entire screen of the phone.
High android.permission.READ_CONTACTS read contact data
Allows an application to read all of the contact (address) data stored on your phone. Malicious applications can use this to send your data to other people.
High android.permission.CAMERA take pictures and videos
Allows application to take pictures and videos with the camera. This allows the application to collect images that the camera is seeing at any time.
High android.permission.RECORD_AUDIO record audio
Allows application to access the audio record path.
High android.permission.READ_SMS read SMS or MMS
Allows application to read SMS messages stored on your phone or SIM card. Malicious applications may read your confidential messages.
High android.permission.SEND_SMS send SMS messages
Allows application to send SMS messages. Malicious applications may cost you money by sending messages without your confirmation.
High android.permission.CALL_PHONE directly call phone numbers
Allows the application to call phone numbers without your intervention. Malicious applications may cause unexpected calls on your phone bill. Note that this does not allow the application to call emergency numbers.
High android.permission.READ_CALL_LOG Allows an application to read the user's call log.
High android.permission.REQUEST_INSTALL_PACKAGES Allows an application to request installing packages.
Malicious applications can use this to try and trick users into installing additional malicious packages.
Low android.permission.INTERNET full Internet access
Allows an application to create network sockets.
Low android.permission.ACCESS_NETWORK_STATE view network status
Allows an application to view the status of all networks.
Low android.permission.FOREGROUND_SERVICE Allows a regular application to use Service.startForeground
Low android.permission.RECEIVE_BOOT_COMPLETED automatically start at boot
Allows an application to start itself as soon as the system has finished booting. This can make it take longer to start the phone and allow the application to slow down the overall phone by always running.
Low android.permission.ACCESS_WIFI_STATE view Wi-Fi status
Allows an application to view the information about the status of Wi-Fi.
Low android.permission.WAKE_LOCK prevent phone from sleeping
Allows an application to prevent the phone from going to sleep.
Low android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS Permission an application must hold in order to use Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS.
android.permission.READ_LOGS Unknown permission
Unknown permission from android reference
oppo.permission.OPPO_COMPONENT_SAFE Unknown permission
Unknown permission from android reference
com.huawei.permission.external_app_settings.USE_COMPONENT Unknown permission
Unknown permission from android reference

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%
Check the active network type
Confidence:
100%
Connect to a URL and receive input stream from the server
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%
Check the current network type
Confidence:
100%
Implicit intent(view a web page, make a phone call, etc.) via setData
Confidence:
100%
Connect to a URL and get the response code
Confidence:
100%
Open the camera and take picture
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%
Read file from assets directory
Confidence:
100%
Get last known location of the device
Confidence:
100%
Get calendar information
Confidence:
100%
Get location of the device
Confidence:
100%
Method reflection
Confidence:
100%
Connect to the remote server through the given URL
Confidence:
100%
Query data from URI (SMS, CALLLOGS)
Confidence:
100%
Get the time of current location
Confidence:
100%
Initialize class object dynamically
Confidence:
100%
Connect to a URL and set request method
Confidence:
100%
Get specific method from other Dex files
Confidence:
80%
Start another application from current application
Confidence:
80%
Read data and put it into a buffer stream
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Use absolute path of directory for the output media file path
Confidence:
80%
Get data from HTTP and send SMS
Confidence:
80%
Get resource file from res/raw directory

Behavior analysis

Information computed with MobSF.

Android notifications
       com/example/vpnner/UtilsKt.java
com/example/vpnner/Functions.java
de/blinkt/openvpn/core/OpenVPNService.java
com/bumptech/glide/request/target/NotificationTarget.java
Base64 decode
       com/bumptech/glide/load/model/DataUrlLoader.java
de/blinkt/openvpn/api/AppRestrictions.java
de/blinkt/openvpn/VpnProfile.java
Base64 encode
       de/blinkt/openvpn/VpnProfile.java
com/example/vpnner/Functions.java
de/blinkt/openvpn/core/OpenVPNService.java
Content provider
       de/blinkt/openvpn/FileProvider.java
Crypto
       okio/HashingSink.java
okio/ByteString.java
okio/HashingSource.java
okio/Buffer.java
de/blinkt/openvpn/VpnProfile.java
Gps location
       com/example/vpnner/MyLocListenerNew.java
com/example/vpnner/Functions.java
com/example/vpnner/MyLocListener.java
Get cell location
       com/example/vpnner/Functions.java
Get installed applications
       de/blinkt/openvpn/core/ExtAuthHelper.java
com/example/vpnner/Functions.java
Get network interface information
       com/example/vpnner/MainActivity.java
Get system service
       com/example/vpnner/gpsutil.java
com/example/vpnner/MainService.java
com/bumptech/glide/request/target/CustomViewTarget.java
com/bumptech/glide/manager/DefaultConnectivityMonitor.java
de/blinkt/openvpn/api/AppRestrictions.java
com/example/vpnner/CheckInternetConnection.java
com/example/vpnner/MainActivity.java
com/example/vpnner/ScheduleUtilsKt.java
com/bumptech/glide/request/target/ViewTarget.java
com/example/vpnner/CameraTakeActivity.java
de/blinkt/openvpn/core/NetworkUtils.java
de/blinkt/openvpn/core/ICSOpenVPNApplication.java
de/blinkt/openvpn/core/DeviceStateReceiver.java
com/example/vpnner/ShotActivity.java
com/example/vpnner/UtilsKt.java
com/example/vpnner/MyLocListenerNew.java
com/giorgosneokleous/fullscreenintentexample/ActivityUtilsKt.java
com/example/vpnner/Functions.java
com/bumptech/glide/load/engine/cache/MemorySizeCalculator.java
de/blinkt/openvpn/core/OpenVPNService.java
com/example/vpnner/App.java
com/bumptech/glide/request/target/NotificationTarget.java
Http connection
       com/example/vpnner/MainActivity.java
com/example/vpnner/Functions.java
com/bumptech/glide/load/data/HttpUrlFetcher.java
Inter process communication
       de/blinkt/openvpn/api/ConfirmDialog.java
com/example/vpnner/MainService.java
de/blinkt/openvpn/OnBootReceiver.java
de/blinkt/openvpn/DisconnectVPNActivity.java
com/example/vpnner/ScheduleUtilsKt.java
de/blinkt/openvpn/api/GrantPermissionsActivity.java
de/blinkt/openvpn/LaunchVPN.java
de/blinkt/openvpn/core/OpenVPNStatusService.java
de/blinkt/openvpn/api/ExternalCertificateProvider.java
de/blinkt/openvpn/activities/DisconnectVPN.java
de/blinkt/openvpn/api/ExternalAppDatabase.java
com/example/vpnner/CameraTakeActivity.java
de/blinkt/openvpn/api/IOpenVPNStatusCallback.java
de/blinkt/openvpn/api/ExternalOpenVPNService.java
de/blinkt/openvpn/api/RemoteAction.java
de/blinkt/openvpn/utils/TotalTraffic.java
com/example/vpnner/Functions.java
com/example/vpnner/NotificationReceiver.java
com/example/vpnner/gpsutil.java
de/blinkt/openvpn/core/IServiceStatus.java
com/bumptech/glide/manager/DefaultConnectivityMonitor.java
com/example/vpnner/RecorderService.java
de/blinkt/openvpn/api/AppRestrictions.java
com/example/vpnner/MainActivity.java
de/blinkt/openvpn/core/OrbotHelper.java
de/blinkt/openvpn/VpnProfile.java
de/blinkt/openvpn/core/StatusListener.java
de/blinkt/openvpn/core/ExtAuthHelper.java
de/blinkt/openvpn/core/IOpenVPNServiceInternal.java
com/example/vpnner/RepeatActivity.java
de/blinkt/openvpn/core/VpnStatus.java
com/example/vpnner/StartActivityOnBootReceiver.java
com/example/vpnner/MyJobIntentService.java
de/blinkt/openvpn/core/VPNLaunchHelper.java
de/blinkt/openvpn/core/DeviceStateReceiver.java
com/example/vpnner/ShotActivity.java
de/blinkt/openvpn/core/IStatusCallbacks.java
de/blinkt/openvpn/api/IOpenVPNAPIService.java
com/example/vpnner/UtilsKt.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
de/blinkt/openvpn/core/OpenVPNService.java
Java reflection
       retrofit2/ParameterHandler.java
com/bumptech/glide/module/ManifestParser.java
kotlinx/coroutines/internal/ConcurrentKt.java
kotlin/coroutines/jvm/internal/DebugMetadataKt.java
org/greenrobot/eventbus/android/AndroidLogger.java
kotlinx/coroutines/internal/FastServiceLoader.java
kotlin/internal/PlatformImplementationsKt.java
kotlin/coroutines/jvm/internal/ModuleNameRetriever.java
org/greenrobot/eventbus/SubscriberMethod.java
de/blinkt/openvpn/core/PRNGFixes.java
kotlin/jvm/internal/Intrinsics.java
kotlinx/coroutines/internal/ExceptionsConstuctorKt.java
kotlinx/coroutines/android/AndroidExceptionPreHandler.java
retrofit2/RequestFactory.java
retrofit2/Utils.java
retrofit2/Retrofit.java
kotlin/internal/PlatformImplementations.java
retrofit2/Invocation.java
okio/ByteString.java
retrofit2/KotlinExtensions$await$2$2.java
retrofit2/Platform.java
de/blinkt/openvpn/VpnProfile.java
kotlinx/coroutines/internal/StackTraceRecoveryKt.java
retrofit2/HttpServiceMethod.java
org/greenrobot/eventbus/SubscriberMethodFinder.java
com/bumptech/glide/Glide.java
retrofit2/ServiceMethod.java
kotlinx/coroutines/CommonPool.java
kotlin/jvm/internal/Reflection.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
kotlin/jvm/internal/ClassReference.java
de/blinkt/openvpn/core/OpenVPNService.java
de/blinkt/openvpn/core/X509Utils.java
Loading native code (shared library)
       de/blinkt/openvpn/core/NativeUtils.java
Local file i/o operations
       de/blinkt/openvpn/core/ProfileManager.java
com/bumptech/glide/load/engine/cache/InternalCacheDiskCacheFactory.java
com/bumptech/glide/load/engine/cache/ExternalCacheDiskCacheFactory.java
com/example/vpnner/MainActivity.java
de/blinkt/openvpn/VpnProfile.java
de/blinkt/openvpn/core/StatusListener.java
de/blinkt/openvpn/FileProvider.java
de/blinkt/openvpn/api/ExternalAppDatabase.java
com/bumptech/glide/Glide.java
de/blinkt/openvpn/core/VPNLaunchHelper.java
com/bumptech/glide/load/engine/cache/ExternalPreferredCacheDiskCacheFactory.java
de/blinkt/openvpn/core/Preferences.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
com/bumptech/glide/load/engine/cache/DiskLruCacheFactory.java
de/blinkt/openvpn/core/OpenVPNService.java
Message digest
       com/bumptech/glide/load/Key.java
com/bumptech/glide/load/resource/bitmap/DrawableTransformation.java
com/bumptech/glide/load/resource/bitmap/GranularRoundedCorners.java
com/bumptech/glide/load/resource/bitmap/RoundedCorners.java
com/bumptech/glide/load/engine/ResourceCacheKey.java
com/bumptech/glide/signature/AndroidResourceSignature.java
com/bumptech/glide/load/resource/bitmap/BitmapDrawableTransformation.java
com/bumptech/glide/load/resource/bitmap/CenterCrop.java
okio/Buffer.java
com/bumptech/glide/load/MultiTransformation.java
com/bumptech/glide/signature/ObjectKey.java
com/bumptech/glide/load/resource/bitmap/FitCenter.java
com/bumptech/glide/load/resource/bitmap/VideoDecoder.java
com/bumptech/glide/load/engine/prefill/BitmapPreFillRunner.java
com/bumptech/glide/load/Options.java
de/blinkt/openvpn/core/LogItem.java
com/bumptech/glide/load/resource/UnitTransformation.java
okio/ByteString.java
okio/HashingSource.java
com/bumptech/glide/load/model/GlideUrl.java
com/bumptech/glide/load/resource/bitmap/Rotate.java
com/bumptech/glide/signature/EmptySignature.java
de/blinkt/openvpn/api/AppRestrictions.java
com/bumptech/glide/load/engine/DataCacheKey.java
com/bumptech/glide/load/resource/bitmap/CenterInside.java
okio/HashingSink.java
com/bumptech/glide/load/engine/EngineKey.java
com/bumptech/glide/load/resource/bitmap/CircleCrop.java
com/bumptech/glide/load/engine/cache/SafeKeyGenerator.java
com/bumptech/glide/load/resource/gif/GifDrawableTransformation.java
com/bumptech/glide/signature/MediaStoreSignature.java
com/bumptech/glide/load/Option.java
Query database of sms, contacts etc
       com/bumptech/glide/load/data/mediastore/ThumbFetcher.java
com/bumptech/glide/load/data/mediastore/ThumbnailStreamOpener.java
com/example/vpnner/Functions.java
Send sms
       com/example/vpnner/Functions.java
Sending broadcast
       de/blinkt/openvpn/core/OrbotHelper.java
de/blinkt/openvpn/utils/TotalTraffic.java
de/blinkt/openvpn/core/OpenVPNService.java
Set or read clipboard data
       com/example/vpnner/Functions.java
Starting activity
       de/blinkt/openvpn/OnBootReceiver.java
com/example/vpnner/ShotActivity.java
com/example/vpnner/MainActivity.java
de/blinkt/openvpn/api/GrantPermissionsActivity.java
de/blinkt/openvpn/api/ExternalOpenVPNService.java
de/blinkt/openvpn/api/RemoteAction.java
de/blinkt/openvpn/LaunchVPN.java
com/example/vpnner/Functions.java
de/blinkt/openvpn/activities/DisconnectVPN.java
de/blinkt/openvpn/api/ExternalAppDatabase.java
Starting service
       de/blinkt/openvpn/api/ConfirmDialog.java
de/blinkt/openvpn/core/VPNLaunchHelper.java
de/blinkt/openvpn/DisconnectVPNActivity.java
com/example/vpnner/MainActivity.java
de/blinkt/openvpn/core/OrbotHelper.java
de/blinkt/openvpn/api/ExternalOpenVPNService.java
de/blinkt/openvpn/core/StatusListener.java
de/blinkt/openvpn/core/ExtAuthHelper.java
de/blinkt/openvpn/api/RemoteAction.java
de/blinkt/openvpn/LaunchVPN.java
com/example/vpnner/StartActivityOnBootReceiver.java
de/blinkt/openvpn/activities/DisconnectVPN.java
Tcp socket
       de/blinkt/openvpn/core/ProxyDetection.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
okio/Okio.java

Control flow graphs analysis

Information computed by Pithus.

The application probably gets different information regarding the telephony capabilities

The application probably determines the location based on cell towers

The application probably gets network interfaces addresses (IP and/or MAC)

The application probably plays sound

The application probably sends SMS/MMS messages

The application probably lists all installed applications

The application probably starts another application

The application probably creates an accessibility service