0/61

Threat

com.surfshark.vpnclient.android

Surfshark

Analyzed on 2021-10-23T10:13:09.904400

18

permissions

33

activities

24

services

20

receivers

16

domains

File sums

MD5 cb9cf4180d5da9ccce49d94b4e977b2d
SHA1 0a43182645d3fd9ca37962a307f87a28d7084eb9
SHA256 a3090ef3f9544e82f6ba8b3584120a9d40d3716d37ef8f9bfa7b897ec39f1a59
Size 27.95MB

APKiD

Information computed with APKiD.

/tmp/tmpz_fiellw!classes.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MODEL check
  • Build.MANUFACTURER check
  • Build.PRODUCT check
  • Build.BOARD check
  • Build.TAGS check
  • network operator name check
  • ro.kernel.qemu check
  • possible VM check
obfuscator
  • unreadable field names
  • unreadable method names
anti_debug
  • Debug.isDebuggerConnected() check
compiler
  • r8
/tmp/tmpz_fiellw!classes2.dex
anti_vm
  • Build.MODEL check
  • Build.MANUFACTURER check
  • Build.PRODUCT check
compiler
  • r8 without marker (suspicious)

SSdeep

Information computed with ssdeep.

APK file 786432:/VtbRTfiHdqMRtKiGqz4U/rzoyL9md2SwQRBycKifvnl:TBY8MR4i34U/rz1gs3EycKY
Manifest 768:9z1FSEr7e/RxcKE6CBbi5cSbqUQt9waT8P9TOefWs33etyngEaKCe4FkCMKfs0cr:…
classes.dex 98304:TVnXolQdjE/GGGXR66gnZqzU6ld15V3LuxRliZUmYhd73iRV:TV8GjMZb6gnZud…
classes2.dex 49152:sxtXqiipamNXZgeMJ5Z1UnrH6nkbyBYxRbbf+I8oyeq1gbzIJXVkn7t67BCGuRB…

Dexofuzzy

Information computed with Dexofuzzy.

APK file 6144:AdlIZjsuMoyQB8e9Yr6xaRbbbb7eZ70uOk831307iVhQmJqxy4dBP/6VYCu9c61U…
classes.dex 6144:AdlIZjsuMoyQB8e9Yr6xaRbbbb7eZ70uOk831307iVhQmJqxy4dBP/6VYCu9j:Ad…
classes2.dex 3072:gFS8MNKuOaHzbNd0tyGUMwWB1dtfeVW19C08q0V2lPE4anDV3WYsnca6CJ:g61Tb…

APK details

Information computed with AndroGuard and Pithus.

Package com.surfshark.vpnclient.android
App name Surfshark
Version name 2.6.6
Version code 206060400
SDK 21 - 29
UAID 562b88b2b9d87ebc3d63fc5a21d9cfa0addcc257
Signature Signature V1 Signature V2
Frosting Not frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown
  • 0x42726577: Verity padding

Certificate details

Information computed with AndroGuard.

MD5 1034d5305cf8e1600ec843b562bd376d
SHA1 61f5bd3983f0bfb8e15c87153cbc507b3ff68944
SHA256 4a0dc39f29beeeed408f8c33acbb3b18c14eac24a76208aa566e5cab8f3e3726
Issuer Common Name: Unknown, Organizational Unit: Unknown, Organization: Unknown, Locality: Unknown, State/Province: Unknown, Country: Unknown
Not before 2018-03-14T14:43:10+00:00
Not after 2045-07-30T14:43:10+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.

Low App has a Network Security Configuration[android:networkSecurityConfig=@xml/network_security_config]
The Network Security Configuration feature lets apps customize their network security settings in a safe, declarative configuration file without modifying app code. These settings can be configured for specific domains and for a specific app.
High Broadcast Receiver (com.appsflyer.SingleInstallBroadcastReceiver) 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 Broadcast Receiver (com.surfshark.vpnclient.android.core.feature.updatenotify.DownloadCompleteReceiver) 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 Broadcast Receiver (com.amazon.device.iap.ResponseReceiver) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.amazon.inapp.purchasing.Permission.NOTIFY [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. 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 Broadcast Receiver (com.surfshark.vpnclient.android.core.feature.receiver.BootCompleteReceiver) 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 Service (com.surfshark.vpnclient.android.core.feature.quicksettings.QuickSettingsService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.BIND_QUICK_SETTINGS_TILE [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 (androidx.work.impl.background.gcm.WorkManagerGcmService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.google.android.gms.permission.BIND_NETWORK_TASK_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.google.android.gms.auth.api.signin.RevocationBoundService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.google.android.gms.auth.api.signin.permission.REVOCATION_NOTIFICATION [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 Broadcast Receiver (com.google.firebase.iid.FirebaseInstanceIdReceiver) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.google.android.c2dm.permission.SEND [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. 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 (androidx.work.impl.background.systemjob.SystemJobService) 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.
High Broadcast Receiver (androidx.work.impl.diagnostics.DiagnosticsReceiver) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.DUMP [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. 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 (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 Broadcast Receiver (com.github.shadowsocks.BootReceiver) 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 Service (com.google.android.play.core.assetpacks.AssetPackExtractionService) is not Protected. [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.

Browsable activities

Information computed with MobSF.

com.surfshark.vpnclient.android.StartActivity

Hosts: surfshark.com

Schemes: https://

Main Activity

Information computed with AndroGuard.

com.surfshark.vpnclient.android.StartActivity

Activities

Information computed with AndroGuard.

com.surfshark.vpnclient.android.StartActivity
com.surfshark.vpnclient.android.app.feature.main.MainActivity
com.surfshark.vpnclient.android.app.feature.tutorial.TutorialActivity
com.surfshark.vpnclient.android.app.feature.manual.ManualConnectionActivity
com.surfshark.vpnclient.android.app.feature.debug.DebugActivity
com.surfshark.vpnclient.android.app.feature.login.LoginActivity
com.surfshark.vpnclient.android.app.feature.badconnection.BadConnectionActivity
com.surfshark.vpnclient.android.app.feature.signup.SignUpActivity
com.surfshark.vpnclient.android.app.feature.web.PrivacyPolicyActivity
com.surfshark.vpnclient.android.app.feature.settings.guides.GuideActivity
com.surfshark.vpnclient.android.app.feature.planselection.PlanSelectionActivity
com.surfshark.vpnclient.android.app.feature.web.ToSActivity
com.surfshark.vpnclient.android.app.feature.web.payment.WebPaymentActivity
com.surfshark.vpnclient.android.app.feature.fakegps.FakeGpsSetupActivity
com.surfshark.vpnclient.android.app.feature.onboarding.OnboardingActivity
zendesk.support.guide.HelpCenterActivity
zendesk.support.guide.ViewArticleActivity
zendesk.support.requestlist.RequestListActivity
zendesk.support.request.RequestActivity
com.surfshark.vpnclient.android.tv.feature.onboarding.TvEnterActivity
com.surfshark.vpnclient.android.tv.feature.main.TvMainActivity
com.surfshark.vpnclient.android.tv.feature.login.TvLoginActivity
com.surfshark.vpnclient.android.tv.feature.signup.TvSignUpActivity
com.surfshark.vpnclient.android.tv.feature.web.TvWebPaymentActivity
com.surfshark.vpnclient.android.tv.feature.planselection.playstore.TvPlanSelectionPlayStoreActivity
com.surfshark.vpnclient.android.tv.feature.planselection.amazon.TvPlanSelectionAmazonActivity
com.surfshark.vpnclient.android.tv.feature.search.TvSearchActivity
zendesk.messaging.MessagingActivity
com.google.android.gms.auth.api.signin.internal.SignInHubActivity
com.google.android.gms.common.api.GoogleApiActivity
com.android.billingclient.api.ProxyBillingActivity
com.google.android.play.core.missingsplits.PlayCoreMissingSplitsActivity
com.google.android.play.core.common.PlayCoreDialogWrapperActivity

Receivers

Information computed with AndroGuard.

com.appsflyer.SingleInstallBroadcastReceiver
com.surfshark.vpnclient.android.core.feature.receiver.DisconnectReceiver
com.surfshark.vpnclient.android.core.feature.updatenotify.DownloadCompleteReceiver
com.amazon.device.iap.ResponseReceiver
com.surfshark.vpnclient.android.core.feature.receiver.BootCompleteReceiver
com.surfshark.vpnclient.android.core.feature.receiver.OnAppUpgradeConnectReceiver
zendesk.support.DeepLinkingBroadcastReceiver
com.google.android.gms.analytics.AnalyticsReceiver
com.google.firebase.iid.FirebaseInstanceIdReceiver
com.google.android.gms.measurement.AppMeasurementReceiver
androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver
androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy
androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy
androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy
androidx.work.impl.background.systemalarm.ConstraintProxy$NetworkStateProxy
androidx.work.impl.background.systemalarm.RescheduleReceiver
androidx.work.impl.background.systemalarm.ConstraintProxyUpdateReceiver
androidx.work.impl.diagnostics.DiagnosticsReceiver
com.google.android.datatransport.runtime.scheduling.jobscheduling.AlarmManagerSchedulerBroadcastReceiver
com.github.shadowsocks.BootReceiver

Services

Information computed with AndroGuard.

com.surfshark.vpnclient.android.core.feature.quicksettings.QuickSettingsService
com.surfshark.vpnclient.android.core.feature.vpn.SurfsharkVpnService
com.surfshark.vpnclient.android.core.feature.fakegps.FakeGpsService
com.surfshark.vpnclient.android.core.feature.autoconnect.AutoConnectService
com.surfshark.vpnclient.android.core.service.push.SharkMessagingService
com.google.firebase.components.ComponentDiscoveryService
androidx.work.impl.background.gcm.WorkManagerGcmService
com.google.firebase.messaging.FirebaseMessagingService
com.google.android.gms.auth.api.signin.RevocationBoundService
com.google.android.gms.analytics.AnalyticsService
com.google.android.gms.analytics.AnalyticsJobService
com.google.android.gms.measurement.AppMeasurementService
com.google.android.gms.measurement.AppMeasurementJobService
androidx.work.impl.background.systemalarm.SystemAlarmService
androidx.work.impl.background.systemjob.SystemJobService
androidx.work.impl.foreground.SystemForegroundService
com.google.android.datatransport.runtime.backends.TransportBackendDiscovery
com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService
androidx.room.MultiInstanceInvalidationService
de.blinkt.openvpn.core.OpenVPNService
org.strongswan.android.logic.CharonVpnService
org.strongswan.android.logic.VpnStateUtil
com.github.shadowsocks.bg.ShadowSocksVpnService
com.google.android.play.core.assetpacks.AssetPackExtractionService

Sample timeline

Certificate valid not before March 14, 2018, 2:43 p.m.
First submission on VT Aug. 17, 2020, 2:24 p.m.
Last submission on VT Dec. 14, 2020, 10:48 a.m.
Upload on Pithus Oct. 23, 2021, 10:13 a.m.
Certificate valid not after July 30, 2045, 2:43 p.m.

NIAP analysis

Information computed with MobSF.

FCS_RBG_EXT.1.1 The application invoke platform-provided 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 implement asymmetric key generation.
Cryptographic Key Generation Services
FDP_DEC_EXT.1.1 The application has access to ['location', '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
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_COP.1.1(1) The application perform encryption/decryption in accordance with a specified cryptographic algorithm AES-CBC (as defined in NIST SP 800-38A) mode or AES-GCM (as defined in NIST SP 800-38D) and cryptographic key sizes 256-bit/128-bit.
Cryptographic Operation - Encryption/Decryption
FCS_COP.1.1(2) The application perform cryptographic hashing services not in accordance with FCS_COP.1.1(2) and uses the cryptographic algorithm RC2/RC4/MD4/MD5.
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.1 The application implement the HTTPS protocol that complies with RFC 2818.
HTTPS Protocol
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.1.1 The application invoked platform-provided functionality to validate certificates in accordance with the following rules: ['The certificate path must terminate with a trusted CA certificate'].
X.509 Certificate Validation
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
FPT_TUD_EXT.2.1 The application shall be distributed using the format of the platform-supported package manager.
Integrity for Installation and Update

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/appsflyer/AppsFlyerLibCore.java
com/sebchlan/picassocompat/PicassoBridge.java
com/airbnb/lottie/utils/LogcatLogger.java
com/dlazaro66/qrcodereaderview/QRCodeReaderView.java
zendesk/belvedere/Storage.java
com/amazon/device/iap/internal/a/c.java
com/amazon/device/iap/internal/e.java
org/strongswan/android/ui/LogFragment.java
timber/log/Timber.java
org/slf4j/helpers/Util.java
com/airbnb/lottie/LottieAnimationView.java
zendesk/belvedere/L.java
com/appsflyer/internal/aa.java
zendesk/belvedere/BelvedereFileProvider.java
com/github/shadowsocks/log/Logger.java
com/amazon/device/iap/PurchasingService.java
com/amazon/device/iap/internal/a/a.java
com/appsflyer/AFLogger.java
com/zendesk/logger/Logger.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
org/strongswan/android/data/Logger.java
zendesk/messaging/MessagingModel.java
Low
CVSS:3.9
App can write to App Directory. Sensitive Information should be encrypted.
MASVS: MSTG-STORAGE-14
CWE-276 Incorrect Default Permissions
Files:
 com/surfshark/vpnclient/android/core/service/featureswitch/DebugFeatures.java
High
CVSS:7.4
MD5 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:
 com/surfshark/vpnclient/android/core/feature/noborders/DecryptUtil.java
com/appsflyer/internal/z.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
com/appsflyer/internal/z.java
org/strongswan/android/security/LocalCertificateStore.java
org/minidns/AbstractDnsClient.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:
 org/minidns/util/CollectionsUtil.java
org/xbill/DNS/Header.java
kotlin/collections/EmptyList.java
kotlin/reflect/jvm/internal/impl/utils/SmartList.java
kotlin/random/jdk8/PlatformThreadLocalRandom.java
kotlin/random/AbstractPlatformRandom.java
okio/Options.java
com/appsflyer/internal/d.java
kotlin/reflect/jvm/internal/impl/protobuf/UnmodifiableLazyStringList.java
org/minidns/iterative/IterativeDnsClient.java
kotlin/collections/CollectionsKt___CollectionsKt.java
kotlin/reflect/jvm/internal/impl/protobuf/LazyStringArrayList.java
kotlin/random/FallbackThreadLocalRandom.java
kotlin/collections/ArraysKt___ArraysJvmKt$asList$3.java
kotlin/random/FallbackThreadLocalRandom$implStorage$1.java
org/minidns/constants/DnsRootServer.java
org/minidns/AbstractDnsClient.java
kotlin/collections/AbstractList.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:
 com/surfshark/vpnclient/android/core/data/persistence/db/ManualConnection.java
com/surfshark/vpnclient/android/core/data/api/response/UserResponse.java
org/strongswan/android/data/VpnProfileDataSource.java
com/appsflyer/CreateOneLinkHttpTask.java
com/surfshark/vpnclient/android/core/data/entity/KeyInfo.java
com/github/shadowsocks/database/Profile.java
com/surfshark/vpnclient/android/core/service/usersession/User.java
com/surfshark/vpnclient/android/core/feature/noborders/DecryptUtil.java
com/appsflyer/AppsFlyerProperties.java
com/surfshark/vpnclient/android/core/feature/settings/passwordchange/PasswordChangeData.java
com/surfshark/vpnclient/android/core/feature/home/QuickConnect.java
com/surfshark/vpnclient/android/core/data/api/request/RegistrationRequest.java
zendesk/support/CreateRequest.java
com/surfshark/vpnclient/android/core/data/api/request/LoginRequest.java
Medium
CVSS:4.3
IP Address disclosure
MASVS: MSTG-CODE-2
CWE-200 Information Exposure
Files:
 com/github/shadowsocks/bg/DnsResolverCompat.java
de/blinkt/openvpn/core/VpnProfile.java
com/surfshark/vpnclient/android/core/feature/noborders/NoBordersUtil.java
org/strongswan/android/logic/CharonVpnService.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/shadowsocks/ShadowsocksAccountStorage.java
de/blinkt/openvpn/core/OrbotHelper.java
com/github/shadowsocks/database/Profile.java
com/github/shadowsocks/bg/KillSwitch.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/openvpn/OpenVpnAccountStorage.java
com/surfshark/vpnclient/android/core/feature/noborders/PortCheck.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/ike/IkeAccountStorage.java
org/minidns/DnsClient.java
com/amazon/device/iap/PurchasingService.java
com/github/shadowsocks/preference/DataStore.java
com/github/shadowsocks/bg/ShadowSocksVpnService.java
com/surfshark/vpnclient/android/core/feature/vpn/ConnectionSetup.java
com/surfshark/vpnclient/android/core/data/repository/DiagnosticsRepository$checkPort$2.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
de/blinkt/openvpn/core/OpenVPNService.java
com/surfshark/vpnclient/android/core/feature/debug/DebugConnectionTest.java
High
CVSS:5.9
App uses SQLite Database and execute raw SQL query. Untrusted user input in raw SQL queries can cause SQL Injection. Also sensitive information should be encrypted and written to the database.
CWE-89 Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
M7: Client Code Quality
Files:
 org/strongswan/android/data/VpnProfileDataSource.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/core/VpnProfile.java
Info
CVSS:0
This App uses SSL certificate pinning to detect or prevent MITM attacks in secure communication channel.
MASVS: MSTG-NETWORK-4
Files:
 com/sebchlan/picassocompat/PicassoCompat271828.java
com/surfshark/vpnclient/android/core/data/api/ApiModule.java
com/sebchlan/picassocompat/PicassoCompat252.java
zendesk/core/ZendeskNetworkModule.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/surfshark/vpnclient/android/core/data/repository/DiagnosticsRepository.java
com/surfshark/vpnclient/android/core/feature/updatenotify/DownloadUpdateUseCase.java
com/surfshark/vpnclient/android/core/feature/updatenotify/DownloadCompleteReceiver.java
High
CVSS:5.4
Remote WebView debugging is enabled.
MASVS: MSTG-RESILIENCE-2
CWE-919 - Weaknesses in Mobile Applications
M1: Improper Platform Usage
Files:
 zendesk/support/guide/ViewArticleActivity.java
Pygal Switzerland: 100 Germany: 100 United States: 1400

Map computed by Pithus.

Network analysis

Information computed with MobSF.

Info Base config is configured to disallow clear text traffic to all domains.
Scope: ['*']
High Domain config is insecurely configured to permit clear text traffic to these domains in scope.
Scope: ['92.249.36.165', 'ip.intservers.net']

Domains analysis

Information computed with MobSF.

US tools.android.com 172.217.23.115
US surfshark-31327.firebaseio.com 35.201.97.85
US openvpn.net 104.18.109.96
US www.amazon.com 162.219.225.118
US support.surfshark.com 104.16.53.111
CH www.slf4j.org 83.166.144.67
US surfshark.com 104.18.120.34
DE ip.intservers.net 188.40.198.84
US www.zendesk.com 104.18.2.228
US api.surfshark.com 104.18.120.34
US shadowsocks.org 104.21.33.74
US account.surfshark.com 104.18.121.34
US api.surfsharktest.com 104.18.30.204
US play.google.com 142.250.186.78
US surfsharktest.com 104.18.30.204
US surfshark.zendesk.com 104.16.51.111

URL analysis

Information computed with MobSF.

http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger
Defined in zendesk/belvedere/Storage.java
https://www.zendesk.com/embeddables
Defined in zendesk/support/SupportSdkSettings.java
http://www.amazon.com/gp/mas/get-appstore/android/ref=mas_mx_mba_iap_dl
Defined in com/amazon/device/iap/internal/b/b.java
https://shadowsocks.org/acl/android/v1/
Defined in com/github/shadowsocks/acl/AclSyncer.java
https://play.google.com/store/apps/details?id=com.surfshark.vpnclient.android
Defined in com/surfshark/vpnclient/android/core/util/ExtensionsKt.java
https://downloads.
https://account.
https://surfsharktest.com
https://support.
Defined in com/surfshark/vpnclient/android/core/util/UrlUtil.java
https://downloads.
https://account.
https://surfsharktest.com
https://support.
Defined in com/surfshark/vpnclient/android/core/util/UrlUtil.java
https://surfshark.zendesk.com
Defined in com/surfshark/vpnclient/android/core/service/support/SupportService.java
https://api.surfshark.com/v1/
https://api.surfsharktest.com/v1/
Defined in com/surfshark/vpnclient/android/core/data/api/ApiModule.java
https://api.surfshark.com/v1/
https://api.surfsharktest.com/v1/
Defined in com/surfshark/vpnclient/android/core/data/api/ApiModule.java
http://ip.intservers.net
http://ip.intservers.net/android/
Defined in com/surfshark/vpnclient/android/core/feature/debug/DebugConnectionTest.java
http://ip.intservers.net
http://ip.intservers.net/android/
Defined in com/surfshark/vpnclient/android/core/feature/debug/DebugConnectionTest.java
https://surfshark.com/features-ul
https://surfshark.com/features-ul/clean-web
https://surfshark.com/features-ul/kill-switch
https://surfshark.com/features-ul/whitelister
https://surfshark.com/servers-ul
Defined in com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
https://surfshark.com/features-ul
https://surfshark.com/features-ul/clean-web
https://surfshark.com/features-ul/kill-switch
https://surfshark.com/features-ul/whitelister
https://surfshark.com/servers-ul
Defined in com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
https://surfshark.com/features-ul
https://surfshark.com/features-ul/clean-web
https://surfshark.com/features-ul/kill-switch
https://surfshark.com/features-ul/whitelister
https://surfshark.com/servers-ul
Defined in com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
https://surfshark.com/features-ul
https://surfshark.com/features-ul/clean-web
https://surfshark.com/features-ul/kill-switch
https://surfshark.com/features-ul/whitelister
https://surfshark.com/servers-ul
Defined in com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
https://surfshark.com/features-ul
https://surfshark.com/features-ul/clean-web
https://surfshark.com/features-ul/kill-switch
https://surfshark.com/features-ul/whitelister
https://surfshark.com/servers-ul
Defined in com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#StaticLoggerBinder
http://www.slf4j.org/codes.html#substituteLogger
http://www.slf4j.org/codes.html#replay
http://www.slf4j.org/codes.html#version_mismatch
http://www.slf4j.org/codes.html#multiple_bindings
http://www.slf4j.org/codes.html#loggerNameMismatch
http://www.slf4j.org/codes.html#unsuccessfulInit
Defined in org/slf4j/LoggerFactory.java
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
Defined in Android String Resource
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
Defined in Android String Resource
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
Defined in Android String Resource
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
Defined in Android String Resource
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
Defined in Android String Resource
https://account.surfshark.com/.well-known/assetlinks.json
https://support.surfshark.com/hc/en-us/articles/360009860539
https://support.surfshark.com/hc/en-us/articles/360009643980
https://surfshark-31327.firebaseio.com
https://surfshark.zendesk.com/hc/en-us/articles/360009709419
https://support.surfshark.com/hc/en-us/articles/360010864959-How-to-fix-website-app-login-issues
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_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.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.
High android.permission.ACCESS_MOCK_LOCATION mock location sources for testing
Create mock location sources for testing. Malicious applications can use this to override the location and/or status returned by real-location sources such as GPS or Network providers.
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.ACCESS_NETWORK_STATE view network status
Allows an application to view the status of all networks.
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.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.WAKE_LOCK prevent phone from sleeping
Allows an application to prevent the phone from going to sleep.
Low android.permission.CHANGE_NETWORK_STATE change network connectivity
Allows applications to change network connectivity state.
Medium com.google.android.c2dm.permission.RECEIVE C2DM permissions
Permission for cloud to device messaging.
Medium com.google.android.providers.gsf.permission.WRITE_GSERVICES modify the Google services map
Allows an application to modify the Google services map. Not for use by common applications.
com.google.android.providers.gsf.permission.READ_GSERVICES Unknown permission
Unknown permission from android reference
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE Unknown permission
Unknown permission from android reference
com.android.vending.BILLING Unknown permission
Unknown permission from android reference

Threat analysis

Information computed with Quark-Engine.

Confidence:
100%
Check if the network is connected
Confidence:
100%
Load external class
Confidence:
100%
Implicit intent(view a web page, make a phone call, etc.)
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%
Install other APKs from file
Confidence:
100%
Get the network operator name
Confidence:
100%
Connect to a URL and read data from it
Confidence:
100%
Monitor data identified by a given content URI changes(SMS, MMS, etc.)
Confidence:
100%
Load class from given class name
Confidence:
100%
Retrieve data from broadcast
Confidence:
100%
Read sensitive data(SMS, CALLLOG, etc)
Confidence:
100%
Open a file from given absolute path of the file
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%
Monitor the broadcast action events (BOOT_COMPLETED)
Confidence:
100%
Get absolute path of the file and store in string
Confidence:
100%
Check the current active network type
Confidence:
100%
Check the network capabilities
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%
Hide the current app's icon
Confidence:
100%
Connect to the remote server through the given URL
Confidence:
100%
Query data from URI (SMS, CALLLOGS)
Confidence:
100%
Check if the device is in data roaming mode
Confidence:
100%
Read file into a stream and put it into a JSON object
Confidence:
100%
Get the time of current location
Confidence:
100%
Initialize class object dynamically
Confidence:
100%
Get filename and put it to JSON object
Confidence:
100%
Read the input stream from given URL
Confidence:
100%
Connect to a URL and set request method
Confidence:
100%
Get specific method from other Dex files
Confidence:
80%
Get absolute path of file and put it to JSON object
Confidence:
80%
Read data and put it into a buffer stream
Confidence:
80%
Save the response to JSON after connecting to the remote server
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Query the network operator name
Confidence:
80%
Check if the given file path exist
Confidence:
80%
Executes the specified string Linux command
Confidence:
80%
Get resource file from res/raw directory

Behavior analysis

Information computed with MobSF.

Android notifications
       com/surfshark/vpnclient/android/core/util/NotificationUtil.java
org/strongswan/android/logic/CharonVpnService.java
com/surfshark/vpnclient/android/core/di/DaggerAppComponent.java
de/blinkt/openvpn/core/OpenVPNService.java
Base64 decode
       zendesk/core/ZendeskBase64Serializer.java
com/airbnb/lottie/manager/ImageAssetManager.java
de/blinkt/openvpn/core/VpnProfile.java
com/github/shadowsocks/plugin/PluginManager$trustedSignatures$2.java
com/appsflyer/internal/j.java
Base64 encode
       zendesk/core/ZendeskBase64Serializer.java
com/appsflyer/AppsFlyerLibCore.java
de/blinkt/openvpn/core/VpnProfile.java
Certificate handling
       zendesk/core/Tls12SocketFactory.java
Content provider
       zendesk/core/SdkStartUpProvider.java
Crypto
       com/surfshark/vpnclient/android/core/feature/noborders/DecryptUtil.java
de/blinkt/openvpn/core/VpnProfile.java
Execute os command
       com/surfshark/vpnclient/android/core/feature/debug/DebugModeKt.java
org/minidns/dnsserverlookup/AndroidUsingExec.java
org/strongswan/android/logic/imc/collectors/PortFilterCollector.java
Gps location
       com/appsflyer/AppsFlyerLibCore.java
com/appsflyer/internal/p.java
Get android advertising id
       com/appsflyer/internal/v.java
com/surfshark/vpnclient/android/core/service/analytics/Analytics.java
com/appsflyer/oaid/OaidClient.java
Get installed applications
       zendesk/belvedere/ImageStreamItems.java
zendesk/messaging/ui/UtilsAttachment.java
zendesk/belvedere/Storage.java
org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java
com/surfshark/vpnclient/android/core/data/repository/AppsRepository$retrieve$1.java
zendesk/support/request/CellBindHelper.java
zendesk/support/request/UtilsAttachment.java
Get network interface information
       com/appsflyer/AppsFlyerLibCore.java
Get sim operator name
       com/appsflyer/internal/s.java
Get sim provider details
       com/appsflyer/internal/s.java
Get system service
       com/github/shadowsocks/bg/ServiceNotification$nm$2.java
com/appsflyer/internal/c.java
zendesk/core/ZendeskProvidersModule.java
zendesk/core/DeviceInfo.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt.java
zendesk/belvedere/ImageStreamUi.java
zendesk/support/SupportSdkMetadata.java
zendesk/messaging/ui/InputBox.java
org/strongswan/android/utils/NetworkUtils.java
zendesk/support/UiUtils.java
zendesk/support/guide/NetworkUtils.java
com/github/shadowsocks/bg/ServiceNotification.java
com/appsflyer/internal/p.java
com/appsflyer/internal/s.java
com/github/shadowsocks/bg/BaseService.java
com/github/shadowsocks/Core$directBootSupported$2.java
com/appsflyer/AppsFlyerLibCore.java
org/strongswan/android/logic/CharonVpnService.java
com/dlazaro66/qrcodereaderview/QRCodeReaderView.java
com/github/shadowsocks/Core.java
org/strongswan/android/logic/NetworkManager.java
zendesk/belvedere/KeyboardHelper.java
com/github/shadowsocks/utils/NetworkUtils.java
com/getkeepsafe/taptargetview/TapTargetView.java
com/github/shadowsocks/Core$connectivity$2.java
de/blinkt/openvpn/core/NetworkUtils.java
de/blinkt/openvpn/core/DeviceStateReceiver.java
com/appsflyer/internal/q.java
com/surfshark/vpnclient/android/core/di/modules/AppModule.java
com/github/shadowsocks/Core$activity$2.java
com/appsflyer/AFSensorManager.java
com/github/shadowsocks/BootReceiver.java
de/blinkt/openvpn/core/OpenVPNService.java
Get wifi details
       com/surfshark/vpnclient/android/core/util/ConnectedWifiRequirement.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectPreferencesViewModel.java
com/surfshark/vpnclient/android/core/util/NetworkUtil.java
Http connection
       org/strongswan/android/logic/SimpleFetcher.java
com/github/shadowsocks/acl/AclSyncer.java
com/airbnb/lottie/network/NetworkFetcher.java
com/appsflyer/AppsFlyerLibCore.java
com/github/shadowsocks/utils/UtilsKt$useCancellable$$inlined$suspendCancellableCoroutine$lambda$1.java
com/appsflyer/AFDeepLinkManager.java
com/appsflyer/internal/ad.java
com/surfshark/vpnclient/android/core/data/repository/DiagnosticsRepository$checkPort$2.java
com/appsflyer/share/CrossPromotionHelper.java
com/appsflyer/internal/x.java
Https connection
       com/appsflyer/OneLinkHttpTask.java
com/appsflyer/CreateOneLinkHttpTask.java
com/appsflyer/internal/ab.java
Inter process communication
       com/appsflyer/internal/c.java
com/surfshark/vpnclient/android/core/feature/vpn/SurfsharkVpnService.java
com/surfshark/vpnclient/android/app/feature/manual/ManualConnectionActivity.java
com/surfshark/vpnclient/android/app/feature/settings/categories/SettingsHelpFragment.java
com/github/shadowsocks/bg/ServiceNotification$lockReceiver$1.java
zendesk/messaging/ui/InputBoxAttachmentClickListener.java
com/surfshark/vpnclient/android/app/feature/web/payment/WebPaymentFragment.java
com/surfshark/vpnclient/android/app/feature/onboarding/OnboardingPagesFragment$onViewCreated$1.java
com/amazon/device/iap/internal/b/b/a.java
com/github/shadowsocks/utils/DirectBoot.java
org/strongswan/android/logic/delegate/StrongSwanVPNDelegate.java
zendesk/support/requestlist/RequestListConfiguration.java
com/surfshark/vpnclient/android/core/feature/quicksettings/QuickSettingsManager$connect$1.java
com/appsflyer/SingleInstallBroadcastReceiver.java
com/surfshark/vpnclient/android/core/feature/quicksettings/QuickSettingsManager.java
com/surfshark/vpnclient/android/core/feature/support/ContactUsUseCase.java
zendesk/core/ZendeskNetworkInfoProvider.java
zendesk/support/DeepLinkToRequestActionHandler.java
com/surfshark/vpnclient/android/core/feature/home/HomeViewModel$connectToServer$1.java
com/surfshark/vpnclient/android/tv/feature/login/TvAutoLoginFragment.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
de/blinkt/openvpn/core/OpenVPNService.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$26.java
com/github/shadowsocks/aidl/IShadowsocksServiceCallback.java
com/github/shadowsocks/aidl/ShadowsocksConnection.java
com/github/shadowsocks/plugin/PluginManager.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$19.java
com/github/shadowsocks/delegate/ShadowsocksDelegate.java
com/surfshark/vpnclient/android/core/feature/home/HomeViewModel$connectToPendingVpnConnection$2.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectService$onDisconnectReceiver$1.java
com/surfshark/vpnclient/android/core/feature/search/TvSearchViewModel$onServerItemClicked$1.java
com/surfshark/vpnclient/android/app/feature/settings/categories/main/SettingsConnectivityFragment$NativeKillSwitchDialog$setUp$2.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectPreferencesViewModel$onNetworkChangeReceiver$1.java
com/surfshark/vpnclient/android/app/feature/referfriend/ReferFriendShareFragment.java
com/surfshark/vpnclient/android/core/feature/vpn/ConnectionRenewUseCase$execute$1.java
zendesk/messaging/MessagingActivity.java
com/surfshark/vpnclient/android/core/feature/smartlock/MultiUserSmartlockAutoconnect.java
com/appsflyer/AppsFlyerLibCore.java
de/blinkt/openvpn/core/VpnProfile.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$setUpTipLayout$2.java
com/github/shadowsocks/Core.java
com/surfshark/vpnclient/android/app/feature/login/TwoFactorBackUpFragment.java
de/blinkt/openvpn/core/OrbotHelper.java
zendesk/belvedere/PermissionManager.java
com/amazon/device/iap/internal/a/c.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectService.java
com/surfshark/vpnclient/android/core/service/analytics/EventCategory.java
com/surfshark/vpnclient/android/tv/feature/web/TvWebPaymentFragment$setUp$2.java
zendesk/support/request/RequestActivity.java
zendesk/support/requestlist/RequestListView.java
de/blinkt/openvpn/core/VPNLaunchHelper.java
zendesk/belvedere/ImageStream.java
com/surfshark/vpnclient/android/tv/feature/home/TvHomeFragment$setUp$3.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/ShadowsocksVpnDelegate.java
com/surfshark/vpnclient/android/core/feature/updatenotify/DownloadCompleteReceiver.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment$setupToSSpannable$1.java
com/surfshark/vpnclient/android/app/feature/fakegps/FakeGpsStepTwoFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/app/feature/fakegps/FakeGpsStepOneFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$bindMainLogo$1.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$16.java
com/surfshark/vpnclient/android/app/feature/settings/categories/main/SettingsAdvancedFragment$setUpToggleButtons$3.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment$setUpInfoText$1.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment$setupToSSpannable$2.java
com/surfshark/vpnclient/android/core/feature/receiver/DisconnectReceiver.java
com/surfshark/vpnclient/android/app/feature/autoconnect/AutoConnectPreferencesFragment$bindCurrentNetworkAndKillSwitchState$2.java
zendesk/support/guide/ViewArticleActivity.java
com/surfshark/vpnclient/android/core/feature/planselection/external/PlanSelectionExternalViewModel.java
com/surfshark/vpnclient/android/StartActivity$startActivity$1.java
zendesk/messaging/EventFactory.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$9.java
zendesk/support/request/AttachmentHelper.java
com/surfshark/vpnclient/android/tv/feature/planselection/amazon/TvPlanSelectionAmazonFragment.java
com/appsflyer/internal/u.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGpsService$onDisconnectReceiver$1.java
com/appsflyer/AndroidUtils.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment$setUpInfoText$2.java
zendesk/support/requestlist/RequestListActivity.java
com/surfshark/vpnclient/android/app/feature/login/LoginFragment$setUpManualConnectionText$1.java
com/surfshark/vpnclient/android/app/feature/settings/guides/GuideActivity.java
zendesk/support/DeepLinkingBroadcastReceiver.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/OpenVpnDelegate.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$21.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/shadowsocks/ShadowsocksProtocol.java
com/appsflyer/internal/ActivityCompat.java
com/surfshark/vpnclient/android/core/feature/receiver/OnAppUpgradeConnectReceiver.java
com/appsflyer/AppsFlyerLib.java
zendesk/messaging/ui/UtilsAttachment.java
de/blinkt/openvpn/delegate/VPNDelegate.java
zendesk/belvedere/BelvedereUi.java
com/surfshark/vpnclient/android/core/feature/serverlist/ObfuscatedListViewModel$onServerItemClicked$1.java
zendesk/support/request/UtilsAttachment.java
com/amazon/device/iap/ResponseReceiver.java
zendesk/messaging/Update.java
com/github/shadowsocks/bg/BaseService$Data$closeReceiver$1.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectService$onNetworkChangedReceiver$1.java
com/surfshark/vpnclient/android/app/feature/badconnection/ConnectivityIssuesFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/core/feature/vpn/VPNConnectionDelegate.java
com/surfshark/vpnclient/android/core/feature/quicksettings/QuickSettingsService.java
com/surfshark/vpnclient/android/core/feature/receiver/BootCompleteReceiver.java
zendesk/support/request/CellBindHelper.java
zendesk/belvedere/ImageStreamModel.java
com/surfshark/vpnclient/android/core/feature/home/HomeViewModel.java
com/surfshark/vpnclient/android/core/service/usersession/LogOutUseCase.java
zendesk/belvedere/MediaIntent.java
zendesk/core/DeviceInfo.java
com/surfshark/vpnclient/android/tv/feature/signup/TvSignUpFragment.java
com/surfshark/vpnclient/android/tv/feature/login/TvLoginFragment.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/ike/IkeProtocol.java
zendesk/support/SupportSdkMetadata.java
com/github/shadowsocks/utils/UtilsKt$listenForPackageChanges$1.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGpsService.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$onOpenDebugClick$1.java
com/github/shadowsocks/bg/LocalDnsService.java
com/github/shadowsocks/utils/UtilsKt.java
com/github/shadowsocks/bg/ServiceNotification.java
com/surfshark/vpnclient/android/tv/feature/planselection/amazon/TvPlanSelectionAmazonActivity.java
zendesk/support/request/RequestConfiguration.java
zendesk/support/guide/HelpCenterActivity.java
com/surfshark/vpnclient/android/core/feature/serverlist/MultiHopViewModel$onServerItemClicked$1.java
com/surfshark/vpnclient/android/core/feature/localization/LocaleUtils.java
zendesk/support/guide/HelpCenterConfiguration.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment.java
com/appsflyer/internal/af.java
org/strongswan/android/logic/delegate/VPNDelegate.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/openvpn/OpenVpnProtocol.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGps.java
zendesk/belvedere/ImageStreamMvp$Model.java
com/surfshark/vpnclient/android/core/data/repository/AppsRepository$retrieve$1.java
com/appsflyer/internal/x.java
com/github/shadowsocks/utils/UtilsKt$broadcastReceiver$1.java
com/github/shadowsocks/delegate/VPNDelegate.java
com/github/shadowsocks/bg/KillSwitch.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$3.java
de/blinkt/openvpn/delegate/OpenVPNDelegate.java
com/surfshark/vpnclient/android/app/feature/web/payment/WebPaymentActivity.java
com/surfshark/vpnclient/android/tv/feature/main/TvMainActivity.java
com/github/shadowsocks/bg/BaseService.java
com/surfshark/vpnclient/android/app/feature/autoconnect/AutoConnectPreferencesFragment$showPermissionRequestDialog$alert$1.java
com/surfshark/vpnclient/android/app/feature/badconnection/SlowConnectionFragment$onViewCreated$1.java
org/strongswan/android/logic/CharonVpnService.java
zendesk/belvedere/ImageStreamMvp$View.java
com/surfshark/vpnclient/android/core/feature/serverlist/ServerListViewModel$onServerItemClicked$1.java
org/strongswan/android/logic/NetworkManager.java
zendesk/belvedere/Storage.java
zendesk/belvedere/IntentRegistry.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionActivity.java
com/surfshark/vpnclient/android/core/feature/signup/SignUpUseCase.java
com/appsflyer/internal/b.java
com/surfshark/vpnclient/android/app/feature/web/WebFragment.java
zendesk/belvedere/ImageStreamPresenter.java
com/surfshark/vpnclient/android/core/feature/autoconnect/OnAppUpgradeConnectUseCase$execute$1.java
com/github/shadowsocks/bg/ShadowSocksVpnService.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$8.java
com/surfshark/vpnclient/android/tv/feature/web/TvWebPaymentActivity.java
com/surfshark/vpnclient/android/app/feature/main/MainActivity.java
com/appsflyer/Foreground.java
com/amazon/device/iap/internal/b/b.java
com/surfshark/vpnclient/android/tv/feature/planselection/playstore/TvPlanSelectionPlayStoreActivity.java
com/surfshark/vpnclient/android/app/feature/manual/ManualConnectedFragment$setUp$3.java
zendesk/belvedere/MediaSource.java
com/appsflyer/MultipleInstallBroadcastReceiver.java
com/surfshark/vpnclient/android/app/feature/login/TwoFactorFragment.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnect.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectUseCase$execute$2.java
com/surfshark/vpnclient/android/app/feature/onboarding/OnboardingPagesFragment$onLongImageClickListener$1.java
com/amazon/device/iap/internal/d.java
com/github/shadowsocks/plugin/PluginList.java
com/surfshark/vpnclient/android/tv/feature/login/TvTwoFactorFragment.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/IkeVpnDelegate.java
com/amazon/device/iap/internal/b/c.java
zendesk/messaging/MessagingConfiguration.java
zendesk/support/request/ComponentInputForm.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$1.java
com/surfshark/vpnclient/android/tv/feature/login/TvLoginFragment$setUp$2.java
com/appsflyer/AFEvent.java
com/github/shadowsocks/BootReceiver.java
com/github/shadowsocks/aidl/IShadowsocksService.java
com/surfshark/vpnclient/android/core/service/analytics/Analytics.java
com/surfshark/vpnclient/android/StartActivity.java
zendesk/belvedere/Belvedere.java
com/surfshark/vpnclient/android/core/util/NotificationUtil.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt.java
com/surfshark/vpnclient/android/tv/feature/login/TvTwoFactorBackUpFragment.java
zendesk/belvedere/ImageStreamUi.java
zendesk/messaging/Event.java
com/surfshark/vpnclient/android/core/util/AuthorizedAction.java
org/strongswan/android/logic/VpnStateUtil.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectPreferencesViewModel.java
com/surfshark/vpnclient/android/core/feature/settings/SettingsViewModel.java
com/amazon/device/iap/internal/c.java
com/appsflyer/AFDeepLinkManager.java
com/surfshark/vpnclient/android/tv/feature/web/TvWebPaymentFragment$setUp$1.java
zendesk/support/guide/ArticleConfiguration.java
com/surfshark/vpnclient/android/app/feature/settings/categories/main/SettingsConnectivityFragment.java
com/surfshark/vpnclient/android/tv/feature/signup/TvSignUpFragment$setUp$2.java
zendesk/configurations/ConfigurationUtil.java
com/surfshark/vpnclient/android/core/feature/serverlist/StaticListViewModel$onServerItemClicked$1.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt$restartApp$1.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$2.java
zendesk/support/ZendeskDeepLinkHelper.java
com/appsflyer/share/CrossPromotionHelper.java
com/surfshark/vpnclient/android/app/feature/login/LoginFragment.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$14.java
zendesk/configurations/ConfigurationHelper.java
zendesk/belvedere/ImageStreamItems.java
de/blinkt/openvpn/core/DeviceStateReceiver.java
com/surfshark/vpnclient/android/app/feature/settings/guides/GuidesFragment.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectService$onLocationProviderChangeReceiver$1.java
com/surfshark/vpnclient/android/core/feature/planselection/PlanSelectionUseCase.java
Java reflection
       com/appsflyer/internal/c.java
com/github/shadowsocks/utils/UtilsKt$parseNumericAddress$2.java
kotlin/reflect/jvm/internal/KClassImpl$Data$objectInstance$2.java
kotlin/reflect/jvm/internal/RuntimeTypeMapper.java
kotlin/reflect/jvm/internal/JvmFunctionSignature$FakeJavaAnnotationConstructor$asString$1.java
kotlin/reflect/jvm/internal/KFunctionImpl$caller$2.java
kotlin/reflect/jvm/internal/impl/builtins/jvm/JvmBuiltInsSettings.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/components/SignatureSerializer.java
kotlinx/coroutines/internal/ConcurrentKt.java
org/slf4j/helpers/SubstituteLogger.java
kotlin/coroutines/jvm/internal/DebugMetadataKt.java
com/sebchlan/picassocompat/LibDetector.java
com/zendesk/util/LocaleUtil.java
kotlin/reflect/jvm/internal/calls/CallerImpl.java
kotlin/reflect/jvm/internal/KClassImpl.java
kotlin/internal/PlatformImplementationsKt.java
kotlin/reflect/jvm/internal/impl/renderer/DescriptorRendererOptionsImpl.java
kotlin/coroutines/jvm/internal/ModuleNameRetriever.java
kotlinx/coroutines/internal/FastServiceLoaderKt.java
kotlin/reflect/jvm/internal/KPropertyImpl$_javaField$1.java
com/appsflyer/MultipleInstallBroadcastReceiver.java
com/github/shadowsocks/utils/UtilsKt.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/components/ReflectJavaClassFinderKt.java
kotlinx/coroutines/internal/ExceptionsConstuctorKt.java
retrofit2/RequestFactory.java
retrofit2/Utils.java
kotlin/reflect/jvm/internal/JvmPropertySignature.java
com/github/shadowsocks/bg/DnsResolverCompat.java
com/github/shadowsocks/bg/DnsResolverCompat$DnsResolverCompat21$netId$2.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaClass$fields$2.java
retrofit2/KotlinExtensions$await$2$2.java
kotlin/reflect/jvm/internal/JvmFunctionSignature.java
com/github/shadowsocks/bg/GuardedProcessPool$Companion$pid$2.java
com/appsflyer/internal/d.java
com/appsflyer/oaid/OaidClient.java
kotlin/reflect/jvm/internal/calls/AnnotationConstructorCallerKt$createAnnotationInstance$2.java
kotlin/reflect/jvm/internal/RuntimeTypeMapperKt.java
com/appsflyer/internal/af.java
kotlin/reflect/jvm/internal/KFunctionImpl.java
zendesk/suas/Suas.java
kotlin/reflect/jvm/internal/KPropertyImplKt.java
kotlinx/coroutines/CommonPool.java
kotlin/jvm/internal/Reflection.java
com/github/shadowsocks/bg/GuardedProcessPool.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
org/minidns/util/PlatformDetection.java
com/appsflyer/internal/referrer/GoogleReferrer.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/Java8ParameterNamesLoader.java
retrofit2/ParameterHandler.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaClass$methods$1.java
kotlin/reflect/jvm/internal/calls/AnnotationConstructorCallerKt.java
kotlinx/coroutines/internal/FastServiceLoader.java
com/zendesk/logger/Logger.java
kotlin/reflect/jvm/internal/impl/resolve/scopes/DescriptorKindFilter.java
kotlinx/coroutines/android/AndroidExceptionPreHandler.java
kotlin/reflect/jvm/internal/KPropertyImplKt$computeCallerForAccessor$3.java
kotlin/reflect/jvm/internal/KDeclarationContainerImpl.java
retrofit2/Retrofit.java
kotlin/reflect/jvm/internal/calls/InternalUnderlyingValOfInlineClass.java
com/appsflyer/internal/v.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaField.java
kotlin/internal/PlatformImplementations.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaClass$methods$2.java
kotlin/reflect/jvm/internal/impl/protobuf/GeneratedMessageLite.java
com/appsflyer/AppsFlyerLibCore.java
retrofit2/Invocation.java
kotlin/reflect/jvm/internal/calls/InlineClassAwareCaller.java
retrofit2/Platform.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/components/ReflectClassStructure.java
kotlin/reflect/jvm/internal/KPropertyImpl.java
zendesk/belvedere/KeyboardHelper.java
kotlin/reflect/jvm/internal/calls/InlineClassAwareCallerKt.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaAnnotation.java
kotlinx/coroutines/internal/StackTraceRecoveryKt.java
retrofit2/HttpServiceMethod.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaClass.java
kotlin/reflect/jvm/internal/KProperty1Impl$delegateField$1.java
kotlin/reflect/jvm/internal/impl/descriptors/runtime/structure/ReflectJavaMethod.java
kotlin/reflect/jvm/internal/KProperty2Impl$delegateField$1.java
com/github/shadowsocks/bg/DnsResolverCompat$DnsResolverCompat21$bindSocketToNetwork$2.java
retrofit2/ServiceMethod.java
org/minidns/dnsserverlookup/AndroidUsingReflection.java
kotlin/reflect/jvm/internal/KFunctionImpl$defaultCaller$2.java
kotlin/reflect/jvm/internal/calls/AnnotationConstructorCallerKt$createAnnotationInstance$result$1.java
com/appsflyer/internal/ag.java
kotlin/reflect/jvm/internal/calls/AnnotationConstructorCaller.java
Loading native code (shared library)
       com/surfshark/vpnclient/android/SharkApplication.java
de/blinkt/openvpn/core/NativeUtils.java
org/strongswan/android/logic/StrongSwanApplication.java
com/github/shadowsocks/acl/AclMatcher.java
Local file i/o operations
       de/blinkt/openvpn/core/ProfileManager.java
com/appsflyer/internal/c.java
com/surfshark/vpnclient/android/core/service/abtest/AbTestUtil.java
com/surfshark/vpnclient/android/core/feature/home/HomeViewModel.java
com/surfshark/vpnclient/android/core/service/usersession/LogOutUseCase.java
com/surfshark/vpnclient/android/core/data/repository/PortsStateRepository.java
com/surfshark/vpnclient/android/core/di/DaggerAppComponent.java
com/surfshark/vpnclient/android/tv/feature/home/TvQuickConnectSelectionDialog$quickConnectClick$1.java
com/surfshark/vpnclient/android/core/data/repository/key/ShadowsocksKeyRepository.java
com/amazon/device/iap/internal/c/a.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGpsService.java
com/appsflyer/MultipleInstallBroadcastReceiver.java
com/surfshark/vpnclient/android/app/feature/fakegps/FakeGpsStepTwoFragment$onViewCreated$2.java
com/appsflyer/internal/ae.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnect.java
com/surfshark/vpnclient/android/core/feature/noborders/PortCheck$handlePortsState$2.java
com/surfshark/vpnclient/android/core/service/featureswitch/DebugFeatures.java
com/airbnb/lottie/network/NetworkCache.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGps$init$1.java
com/surfshark/vpnclient/android/core/feature/localization/LocaleUtils.java
com/appsflyer/SingleInstallBroadcastReceiver.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/IkeVpnDelegate.java
com/appsflyer/internal/af.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$1.java
com/surfshark/vpnclient/android/core/data/repository/CurrentVpnServerRepository.java
zendesk/support/request/AttachmentUploadService.java
com/surfshark/vpnclient/android/core/feature/vpn/ConnectionSetup.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
com/appsflyer/internal/x.java
com/surfshark/vpnclient/android/core/feature/noborders/NoBordersCheckUseCase$execute$2.java
com/surfshark/vpnclient/android/core/data/repository/UserRepository.java
com/appsflyer/internal/referrer/GoogleReferrer.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/OpenVpnDelegate.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$21.java
com/surfshark/vpnclient/android/core/data/repository/AutoConnectDataRepository.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnectPreferencesViewModel.java
com/surfshark/vpnclient/android/core/feature/whitelister/Whitelister.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity.java
com/surfshark/vpnclient/android/core/feature/settings/SettingsViewModel.java
com/amazon/device/iap/internal/util/b.java
com/surfshark/vpnclient/android/core/data/repository/VersionInfoRepository.java
zendesk/belvedere/PermissionStorage.java
com/surfshark/vpnclient/android/core/feature/noborders/NoBordersCheckUseCase.java
zendesk/support/request/UtilsAttachment.java
com/surfshark/vpnclient/android/core/feature/vpn/VPNConnectionDelegate$connectInternal$1.java
com/surfshark/vpnclient/android/core/feature/vpn/ConnectionRenewUseCase$execute$1.java
com/surfshark/vpnclient/android/core/service/usersession/UserSession.java
com/surfshark/vpnclient/android/app/feature/onboarding/OnboardingPagesFragment.java
com/appsflyer/AppsFlyerLibCore.java
de/blinkt/openvpn/core/VpnProfile.java
com/surfshark/vpnclient/android/core/feature/noborders/NoBordersUtil.java
com/surfshark/vpnclient/android/core/data/repository/ConnectionInfoRepository.java
zendesk/belvedere/Storage.java
com/surfshark/vpnclient/android/app/feature/home/QuickConnectSelectionDialog$quickConnectClick$1.java
com/surfshark/vpnclient/android/core/feature/vpn/VPNConnectionDelegate.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$17.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment.java
com/amazon/device/iap/internal/c/c.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$22.java
com/surfshark/vpnclient/android/core/feature/noborders/NoBordersUtil$tryUpdateApiHost$2.java
zendesk/core/ZendeskStorageModule.java
com/surfshark/vpnclient/android/core/feature/autoconnect/OnAppUpgradeConnectUseCase$execute$1.java
com/appsflyer/AppsFlyerProperties.java
de/blinkt/openvpn/core/VPNLaunchHelper.java
com/appsflyer/internal/ad.java
zendesk/support/StorageModule.java
com/surfshark/vpnclient/android/core/feature/vpndelegate/ShadowsocksVpnDelegate.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/auto/AutoProtocol.java
Message digest
       de/blinkt/openvpn/core/LogItem.java
com/surfshark/vpnclient/android/core/feature/noborders/DecryptUtil.java
okio/ByteString.java
com/appsflyer/AndroidUtils.java
com/appsflyer/internal/z.java
com/zendesk/util/DigestUtils.java
org/strongswan/android/security/LocalCertificateStore.java
okio/SegmentedByteString.java
Query database of sms, contacts etc
       com/appsflyer/internal/referrer/HuaweiReferrer.java
zendesk/belvedere/Storage.java
com/appsflyer/internal/ac.java
Sending broadcast
       de/blinkt/openvpn/core/VPNLaunchHelper.java
com/surfshark/vpnclient/android/core/feature/fakegps/FakeGps.java
com/github/shadowsocks/Core.java
de/blinkt/openvpn/core/OrbotHelper.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnect.java
org/strongswan/android/logic/VpnStateUtil.java
Starting activity
       com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment$setupToSSpannable$1.java
com/surfshark/vpnclient/android/app/feature/settings/categories/SettingsHelpFragment.java
com/surfshark/vpnclient/android/core/service/usersession/LogOutUseCase.java
zendesk/belvedere/MediaIntent.java
com/surfshark/vpnclient/android/app/feature/fakegps/FakeGpsStepTwoFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/app/feature/fakegps/FakeGpsStepOneFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$bindMainLogo$1.java
com/amazon/device/iap/internal/b/b.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$16.java
com/surfshark/vpnclient/android/tv/feature/signup/TvSignUpFragment.java
com/surfshark/vpnclient/android/app/feature/settings/categories/main/SettingsAdvancedFragment$setUpToggleButtons$3.java
com/surfshark/vpnclient/android/tv/feature/login/TvLoginFragment.java
com/surfshark/vpnclient/android/app/feature/onboarding/OnboardingPagesFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/tv/feature/planselection/playstore/TvPlanSelectionPlayStoreActivity.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment$setUpInfoText$1.java
com/surfshark/vpnclient/android/app/feature/manual/ManualConnectedFragment$setUp$3.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$onOpenDebugClick$1.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment$setupToSSpannable$2.java
com/surfshark/vpnclient/android/app/feature/login/TwoFactorFragment.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionFragment.java
com/amazon/device/iap/internal/b/b/a.java
com/surfshark/vpnclient/android/app/feature/autoconnect/AutoConnectPreferencesFragment$bindCurrentNetworkAndKillSwitchState$2.java
com/surfshark/vpnclient/android/tv/feature/planselection/amazon/TvPlanSelectionAmazonActivity.java
zendesk/support/requestlist/RequestListConfiguration.java
zendesk/support/request/RequestConfiguration.java
com/surfshark/vpnclient/android/app/feature/onboarding/OnboardingPagesFragment$onLongImageClickListener$1.java
zendesk/support/guide/ViewArticleActivity.java
com/surfshark/vpnclient/android/tv/feature/login/TvTwoFactorFragment.java
com/surfshark/vpnclient/android/core/feature/localization/LocaleUtils.java
com/surfshark/vpnclient/android/core/feature/planselection/external/PlanSelectionExternalViewModel.java
com/surfshark/vpnclient/android/StartActivity$startActivity$1.java
com/surfshark/vpnclient/android/core/feature/support/ContactUsUseCase.java
zendesk/support/guide/HelpCenterConfiguration.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$9.java
zendesk/messaging/MessagingConfiguration.java
zendesk/support/request/ComponentInputForm.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$1.java
com/surfshark/vpnclient/android/tv/feature/login/TvLoginFragment$setUp$2.java
com/surfshark/vpnclient/android/tv/feature/planselection/amazon/TvPlanSelectionAmazonFragment.java
com/surfshark/vpnclient/android/tv/feature/login/TvAutoLoginFragment.java
com/surfshark/vpnclient/android/app/feature/signup/SignUpFragment$setUpInfoText$2.java
com/surfshark/vpnclient/android/app/feature/login/LoginFragment$setUpManualConnectionText$1.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$26.java
com/surfshark/vpnclient/android/StartActivity.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$21.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt.java
com/surfshark/vpnclient/android/tv/feature/login/TvTwoFactorBackUpFragment.java
com/surfshark/vpnclient/android/core/util/AuthorizedAction.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$19.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$3.java
com/surfshark/vpnclient/android/core/feature/settings/SettingsViewModel.java
com/surfshark/vpnclient/android/app/feature/settings/categories/main/SettingsConnectivityFragment$NativeKillSwitchDialog$setUp$2.java
com/surfshark/vpnclient/android/app/feature/web/payment/WebPaymentActivity.java
zendesk/messaging/ui/UtilsAttachment.java
com/surfshark/vpnclient/android/tv/feature/web/TvWebPaymentFragment$setUp$1.java
zendesk/support/guide/ArticleConfiguration.java
com/surfshark/vpnclient/android/tv/feature/signup/TvSignUpFragment$setUp$2.java
com/surfshark/vpnclient/android/app/feature/referfriend/ReferFriendShareFragment.java
com/surfshark/vpnclient/android/core/util/ExtensionsKt$restartApp$1.java
com/surfshark/vpnclient/android/tv/feature/onboarding/TvEnterActivity$onCreate$2.java
com/surfshark/vpnclient/android/app/feature/autoconnect/AutoConnectPreferencesFragment$showPermissionRequestDialog$alert$1.java
com/surfshark/vpnclient/android/app/feature/badconnection/SlowConnectionFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/app/feature/home/HomeFragment$setUpTipLayout$2.java
zendesk/messaging/Update.java
com/surfshark/vpnclient/android/app/feature/login/TwoFactorBackUpFragment.java
com/surfshark/vpnclient/android/app/feature/badconnection/ConnectivityIssuesFragment$onViewCreated$1.java
com/surfshark/vpnclient/android/core/feature/vpn/VPNConnectionDelegate.java
com/surfshark/vpnclient/android/app/feature/planselection/PlanSelectionActivity.java
com/appsflyer/share/CrossPromotionHelper.java
com/surfshark/vpnclient/android/core/feature/signup/SignUpUseCase.java
com/surfshark/vpnclient/android/app/feature/login/LoginFragment.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$14.java
com/surfshark/vpnclient/android/tv/feature/web/TvWebPaymentFragment$setUp$2.java
zendesk/support/requestlist/RequestListView.java
com/surfshark/vpnclient/android/app/feature/settings/guides/GuidesFragment.java
com/surfshark/vpnclient/android/app/feature/debug/DebugFragment$onViewCreated$8.java
com/surfshark/vpnclient/android/core/feature/planselection/PlanSelectionUseCase.java
com/surfshark/vpnclient/android/tv/feature/home/TvHomeFragment$setUp$3.java
zendesk/support/request/CellBindHelper.java
com/surfshark/vpnclient/android/core/feature/updatenotify/DownloadCompleteReceiver.java
Starting service
       com/surfshark/vpnclient/android/core/feature/vpn/protocols/shadowsocks/ShadowsocksProtocol.java
com/github/shadowsocks/aidl/ShadowsocksConnection.java
com/github/shadowsocks/Core.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/VpnProtocol.java
com/amazon/device/iap/internal/a/c.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnect$onVpnServiceStopped$1.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/ike/IkeProtocol.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/openvpn/OpenVpnProtocol.java
com/appsflyer/internal/u.java
com/github/shadowsocks/BootReceiver.java
com/surfshark/vpnclient/android/core/feature/autoconnect/AutoConnect.java
com/surfshark/vpnclient/android/core/feature/vpn/VPNConnectionDelegate$connectInternal$1.java
com/surfshark/vpnclient/android/core/feature/vpn/protocols/auto/AutoProtocol.java
Tcp socket
       org/strongswan/android/logic/SimpleFetcher.java
de/blinkt/openvpn/core/ProxyDetection.java
okio/SocketAsyncTimeout.java
okio/Okio__JvmOkioKt.java
org/strongswan/android/logic/CharonVpnService.java
org/minidns/source/NetworkDataSource.java
com/airbnb/lottie/utils/Utils.java
zendesk/core/Tls12SocketFactory.java
com/surfshark/vpnclient/android/core/feature/noborders/PortCheck.java
com/github/shadowsocks/net/LocalDnsServer$handlePacket$1.java
com/github/shadowsocks/net/LocalDnsServer.java
com/surfshark/vpnclient/android/core/util/NetworkUtil$isServerReachable$2.java
de/blinkt/openvpn/core/OpenVpnManagementThread.java
com/github/shadowsocks/net/LocalDnsServer$start$$inlined$run$lambda$1.java
okio/Okio.java
Udp datagram packet
       com/surfshark/vpnclient/android/core/feature/noborders/PortCheck.java
org/minidns/dnsmessage/DnsMessage.java
org/minidns/source/NetworkDataSource.java
com/surfshark/vpnclient/android/core/util/NetworkUtil.java
Udp datagram socket
       com/surfshark/vpnclient/android/core/feature/noborders/PortCheck.java
org/minidns/source/NetworkDataSource.java
com/surfshark/vpnclient/android/core/util/NetworkUtil.java
Url connection to file/http/https/ftp/jar
       com/appsflyer/OneLinkHttpTask.java
org/strongswan/android/logic/SimpleFetcher.java
com/github/shadowsocks/acl/AclSyncer.java
com/airbnb/lottie/network/NetworkFetcher.java
com/appsflyer/AppsFlyerLibCore.java
com/appsflyer/AFDeepLinkManager.java
com/appsflyer/internal/ad.java
com/github/shadowsocks/bg/ShadowSocksVpnService.java
com/github/shadowsocks/acl/Acl.java
com/surfshark/vpnclient/android/core/data/repository/DiagnosticsRepository$checkPort$2.java
com/appsflyer/share/CrossPromotionHelper.java
com/github/shadowsocks/bg/BaseService.java
Webview get request
       com/surfshark/vpnclient/android/core/feature/web/SharkWebClient.java
zendesk/support/guide/ViewArticleActivity.java