Android.PUA.Jiagu

Threat

com.damonplay.damonps2.pro.ppsspp

DamonPS2 Pro - PS2 Emulator

Analyzed on 2021-02-17T16:28:26.110176

19

permissions

62

activities

10

services

4

receivers

5

domains

File sums

MD5 37c794f61769f8bd5fa0005abee29da6
SHA1 9f09789228043ad3d52d228cd0d44f5b4d34c4ef
SHA256 747b3d06800384a285782986b2091a75304ae6ed48e6ce887b6f3ff8e615d48d
Size 27.71MB

APKiD

Information computed with APKiD.

/tmp/tmpocgv0qd7
packer
  • Jiagu
/tmp/tmpocgv0qd7!assets/gdt_plugin/gdtadv2.jar!classes.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MODEL check
  • Build.MANUFACTURER check
  • Build.PRODUCT check
  • possible Build.SERIAL check
  • subscriber ID check
compiler
  • dexlib 2.x
/tmp/tmpocgv0qd7!assets/gdt_plugin/gdtadv2.jar!lib/arm64-v8a/libturingau.so
obfuscator
  • Obfuscator-LLVM version unknown
/tmp/tmpocgv0qd7!assets/gdt_plugin/gdtadv2.jar!lib/armeabi/libturingau.so
obfuscator
  • Obfuscator-LLVM version unknown
/tmp/tmpocgv0qd7!classes.dex
obfuscator
  • unreadable field names
  • unreadable method names
compiler
  • dexlib 2.x

SSdeep

Information computed with ssdeep.

APK file 786432:UZApcc+A8SQiiHnIHvxCcV4hlGMD8VRGL7Cqf:7pcVA8FiiHnncYD8VRGLTf
Manifest 768:6DEw6S/XimCywO/OQiblvo230aNTA4H3UfmkyJcEBrZp0prH8IdXCRZPKfOOqZ0X:…
classes.dex 98304:Ada4pA/xDMz8jeksa0R10IVujOIZZvLNDdVv:74CxDReba0v0IVuLvf

Dexofuzzy

Information computed with Dexofuzzy.

APK file 6:iLxh5PJ7KnK56PikiEE8GtVm0fFUUlzYfdQV/AprGzOovyqXEATmJtxMmeL5xtCl:gv…
classes.dex 6:iLxh5PJ7KnK56PikiEE8GtVm0fFUUlzYfdQV/AprGzOovyqXEATmJtxMmeL5xtCl:gv…

APK details

Information computed with AndroGuard and Pithus.

Package com.damonplay.damonps2.pro.ppsspp
App name DamonPS2 Pro - PS2 Emulator
Version name 3.2
Version code 124
SDK 21 - 28
UAID 1bc5cc9c0cba0f5be84a92079649612c9d0b54e9
Signature Signature V1 Signature V2
Frosting Frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown
  • 0x2146444e: Google metadata
  • 0x42726577: Verity padding

Certificate details

Information computed with AndroGuard.

MD5 49936d739e1d721afaf265e4a321a358
SHA1 8e7f8629da0bcdf58c2153c73a5d2273bfb0fcfb
SHA256 dbe3e95e046813cd6fff23a1245aa83b81cfb4c7a7a4c8822b2846e96a45f435
Issuer Organizational Unit: Android, Organization: Damon, Locality: HongKong, State/Province: HongKong, Country: HongKong
Not before 2017-11-21T10:36:29+00:00
Not after 2042-11-15T10:36:29+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. assets/.appkey
assets/geo_global_ca.cer

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 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 Activity (com.damonplay.damonps2.pro.ppsspp.wxapi.WXEntryActivity) is not Protected. [android:exported=true]
An Activity is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
High Content Provider (com.umeng.facebook.FacebookContentProvider) is not Protected. [android:exported=true]
A Content Provider is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
High Content Provider (com.damonplay.damonps2.utils.DamonPlayProvider) is not Protected. [android:exported=true]
A Content Provider is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
High Activity (com.sina.weibo.sdk.share.WbShareTransActivity) is not Protected.An intent-filter exists.
An Activity 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 Activity is explicitly exported.
High Activity (com.tencent.tauth.AuthActivity) is not Protected.An intent-filter exists.
An Activity 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 Activity is explicitly exported.
High Activity (com.facebook.CustomTabActivity) is not Protected. [android:exported=true]
An Activity is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
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 Activity (com.google.firebase.auth.internal.FederatedSignInActivity) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.google.firebase.auth.api.gms.permission.LAUNCH_FEDERATED_SIGN_IN [android:exported=true]
An Activity is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device. 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.android.gms.measurement.AppMeasurementInstallReferrerReceiver) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.INSTALL_PACKAGES [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.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 (com.google.firebase.iid.FirebaseInstanceIdService) 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.tencent.tauth.AuthActivity

Schemes: tencent101463843://

com.facebook.CustomTabActivity

Schemes: @string/facebook_login_protocol_scheme://

Main Activity

Information computed with AndroGuard.

['com.damonplay.damonps2.pro.ppsspp.wxapi.WXEntryActivity', 'com.damonplay.damonps2.unity.UnityPlayerActivity', 'com.damonplay.damonps2.MainActivity', 'com.damonplay.damonps2.SplashActivity', 'com.damonplay.damonps2.SettingsActivity', 'com.damonplay.damonps2.AboutActivity', 'com.damonplay.damonps2.SubsActivity', 'com.damonplay.damonps2.emu.EmuActivity', 'com.damonplay.damonps2.emu.UserDefineLayoutActivity', 'com.damonplay.damonps2.login.LoginActivity', 'com.damonplay.damonps2.login.LoginGlobalActivity', 'com.damonplay.damonps2.login.LoginEmailActivity', 'com.damonplay.damonps2.login.LoginEmailRegisterActivity', 'com.damonplay.damonps2.login.LoginEmailResetActivity', 'com.damonplay.damonps2.login.LoginEmailChangePasswdActivity', 'com.damonplay.damonps2.login.LoginPhoneActivity', 'com.damonplay.damonps2.login.LoggedActivity', 'com.damonplay.damonps2.MediaPlayActivity', 'com.damonplay.damonps2.qrscan.QrCodeActivity', 'com.damonplay.damonps2.clouddisk.TrafficPayActivity', 'com.damonplay.damonps2.GameScanFragmentActivity', 'com.damonplay.damonps2.GameFolderActivity', 'com.damonplay.damonps2.pay.MyPayActivity', 'com.damonplay.damonps2.common.MyUpdateActivity', 'com.google.android.gms.ads.AdActivity', 'com.unity3d.ads.adunit.AdUnitActivity', 'com.damonplay.damonps2.GDT.MyAdSplash_QQActivity', 'com.qq.e.ads.ADActivity', 'com.qq.e.ads.PortraitADActivity', 'com.qq.e.ads.LandscapeADActivity', 'com.damonplay.damonps2.GDT.MyAdReward_QQActivity', 'com.umeng.socialize.media.WBShareCallBackActivity', 'com.sina.weibo.sdk.web.WeiboSdkWebActivity', 'com.sina.weibo.sdk.share.WbShareTransActivity', 'com.tencent.tauth.AuthActivity', 'com.tencent.connect.common.AssistActivity', 'com.alipay.sdk.app.H5PayActivity', 'com.alipay.sdk.app.H5AuthActivity', 'com.facebook.FacebookActivity', 'com.umeng.facebook.FacebookActivity', 'com.facebook.CustomTabActivity', 'com.payssion.android.sdk.PayssionActivity', 'com.payssion.android.sdk.PaymentWebActivity', 'com.firebase.ui.auth.KickoffActivity', 'com.firebase.ui.auth.ui.idp.SingleSignInActivity', 'com.firebase.ui.auth.ui.credentials.CredentialSaveActivity', 'com.firebase.ui.auth.ui.email.RecoverPasswordActivity', 'com.firebase.ui.auth.ui.email.EmailActivity', 'com.firebase.ui.auth.ui.phone.PhoneActivity', 'com.firebase.ui.auth.ui.idp.WelcomeBackIdpPrompt', 'com.firebase.ui.auth.ui.email.WelcomeBackPasswordPrompt', 'com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity', 'com.github.javiersantos.piracychecker.activities.LicenseActivity', 'com.facebook.CustomTabMainActivity', 'com.google.android.gms.auth.api.signin.internal.SignInHubActivity', 'com.google.firebase.auth.internal.FederatedSignInActivity', 'com.google.android.gms.common.api.GoogleApiActivity', 'com.twitter.sdk.android.core.identity.OAuthActivity', 'com.android.billingclient.api.ProxyBillingActivity', 'com.unity3d.ads.adunit.AdUnitTransparentActivity', 'com.unity3d.ads.adunit.AdUnitTransparentSoftwareActivity', 'com.unity3d.ads.adunit.AdUnitSoftwareActivity']

Activities

Information computed with AndroGuard.

com.damonplay.damonps2.pro.ppsspp.wxapi.WXEntryActivity
com.damonplay.damonps2.unity.UnityPlayerActivity
com.damonplay.damonps2.MainActivity
com.damonplay.damonps2.SplashActivity
com.damonplay.damonps2.SettingsActivity
com.damonplay.damonps2.AboutActivity
com.damonplay.damonps2.SubsActivity
com.damonplay.damonps2.emu.EmuActivity
com.damonplay.damonps2.emu.UserDefineLayoutActivity
com.damonplay.damonps2.login.LoginActivity
com.damonplay.damonps2.login.LoginGlobalActivity
com.damonplay.damonps2.login.LoginEmailActivity
com.damonplay.damonps2.login.LoginEmailRegisterActivity
com.damonplay.damonps2.login.LoginEmailResetActivity
com.damonplay.damonps2.login.LoginEmailChangePasswdActivity
com.damonplay.damonps2.login.LoginPhoneActivity
com.damonplay.damonps2.login.LoggedActivity
com.damonplay.damonps2.MediaPlayActivity
com.damonplay.damonps2.qrscan.QrCodeActivity
com.damonplay.damonps2.clouddisk.TrafficPayActivity
com.damonplay.damonps2.GameScanFragmentActivity
com.damonplay.damonps2.GameFolderActivity
com.damonplay.damonps2.pay.MyPayActivity
com.damonplay.damonps2.common.MyUpdateActivity
com.google.android.gms.ads.AdActivity
com.unity3d.ads.adunit.AdUnitActivity
com.damonplay.damonps2.GDT.MyAdSplash_QQActivity
com.qq.e.ads.ADActivity
com.qq.e.ads.PortraitADActivity
com.qq.e.ads.LandscapeADActivity
com.damonplay.damonps2.GDT.MyAdReward_QQActivity
com.umeng.socialize.media.WBShareCallBackActivity
com.sina.weibo.sdk.web.WeiboSdkWebActivity
com.sina.weibo.sdk.share.WbShareTransActivity
com.tencent.tauth.AuthActivity
com.tencent.connect.common.AssistActivity
com.alipay.sdk.app.H5PayActivity
com.alipay.sdk.app.H5AuthActivity
com.facebook.FacebookActivity
com.umeng.facebook.FacebookActivity
com.facebook.CustomTabActivity
com.payssion.android.sdk.PayssionActivity
com.payssion.android.sdk.PaymentWebActivity
com.firebase.ui.auth.KickoffActivity
com.firebase.ui.auth.ui.idp.SingleSignInActivity
com.firebase.ui.auth.ui.credentials.CredentialSaveActivity
com.firebase.ui.auth.ui.email.RecoverPasswordActivity
com.firebase.ui.auth.ui.email.EmailActivity
com.firebase.ui.auth.ui.phone.PhoneActivity
com.firebase.ui.auth.ui.idp.WelcomeBackIdpPrompt
com.firebase.ui.auth.ui.email.WelcomeBackPasswordPrompt
com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity
com.github.javiersantos.piracychecker.activities.LicenseActivity
com.facebook.CustomTabMainActivity
com.google.android.gms.auth.api.signin.internal.SignInHubActivity
com.google.firebase.auth.internal.FederatedSignInActivity
com.google.android.gms.common.api.GoogleApiActivity
com.twitter.sdk.android.core.identity.OAuthActivity
com.android.billingclient.api.ProxyBillingActivity
com.unity3d.ads.adunit.AdUnitTransparentActivity
com.unity3d.ads.adunit.AdUnitTransparentSoftwareActivity
com.unity3d.ads.adunit.AdUnitSoftwareActivity

Receivers

Information computed with AndroGuard.

com.google.android.gms.measurement.AppMeasurementReceiver
com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver
com.google.firebase.iid.FirebaseInstanceIdReceiver
com.facebook.CurrentAccessTokenExpirationBroadcastReceiver

Services

Information computed with AndroGuard.

com.damonplay.damonps2.update.service.DownloadService
com.damonplay.damonps2.clouddisk.download.SyncGameDownloadService
com.damonplay.damonps2.analytics.MyAnalyticsUmengService
com.damonplay.damonps2.emu.ScreenRecoderService
com.qq.e.comm.DownloadService
com.google.android.gms.auth.api.signin.RevocationBoundService
com.google.firebase.components.ComponentDiscoveryService
com.google.android.gms.measurement.AppMeasurementService
com.google.android.gms.measurement.AppMeasurementJobService
com.google.firebase.iid.FirebaseInstanceIdService

NIAP analysis

Information computed with MobSF.

FCS_STO_EXT.1.1 The application does not store any credentials to non-volatile memory.
Storage of Credentials
FCS_CKM_EXT.1.1 The application generate no asymmetric cryptographic keys.
Cryptographic Key Generation Services
FDP_DEC_EXT.1.1 The application has access to ['microphone', 'camera', 'network connectivity', 'location'].
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 does not encrypt files in non-volatile memory.
Encryption Of Sensitive Application Data
FTP_DIT_EXT.1.1 The application does not encrypt any data in traffic or does not transmit any data between itself and another trusted IT product.
Protection of Data in Transit
Pygal United States: 500

Map computed by Pithus.

Network analysis

Information computed with MobSF.

High Base config is insecurely configured to permit clear text traffic to all domains.
Scope: ['*']
Medium Base config is configured to trust system certificates.
Scope: ['*']
High Base config is configured to bypass certificate pinning.
Scope: ['*']
High Base config is configured to trust user installed certificates.
Scope: ['*']
High Base config is configured to bypass certificate pinning.
Scope: ['*']

Domains analysis

Information computed with MobSF.

US api.uca.cloud.unity3d.com 35.241.52.229
US damonps2-pro.firebaseio.com 35.201.97.85
US config.uca.cloud.unity3d.com 35.227.244.186
US cdp.cloud.unity3d.com 35.241.52.229
US github.com 140.82.121.3

URL analysis

Information computed with MobSF.

https://damonps2-pro.firebaseio.com
https://github.com/javiersantos
https://github.com/javiersantos/PiracyChecker
Defined in Android String Resource
https://config.uca.cloud.unity3d.com
https://cdp.cloud.unity3d.com/v1/events
https://api.uca.cloud.unity3d.com/v1/events
Defined in lib/armeabi-v7a/libunity.so
file:///%s
file:///
Defined in lib/armeabi-v7a/libmono.so

Permissions analysis

Information computed with MobSF.

High android.permission.WRITE_EXTERNAL_STORAGE read/modify/delete external storage contents
Allows an application to write to external storage.
High android.permission.READ_EXTERNAL_STORAGE read external storage contents
Allows an application to read from external storage.
High android.permission.RECORD_AUDIO record audio
Allows application to access the audio record path.
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.READ_PHONE_STATE read phone state and identity
Allows the application to access the phone features of the device. An application with this permission can determine the phone number and serial number of this phone, whether a call is active, the number that call is connected to and so on.
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.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.ACCESS_WIFI_STATE view Wi-Fi status
Allows an application to view the information about the status of Wi-Fi.
Low android.permission.VIBRATE control vibrator
Allows the application to control the vibrator.
Low android.permission.FOREGROUND_SERVICE Allows a regular application to use Service.startForeground
Low android.permission.CHANGE_WIFI_STATE change Wi-Fi status
Allows an application to connect to and disconnect from Wi-Fi access points and to make changes to configured Wi-Fi networks.
Low android.permission.WAKE_LOCK prevent phone from sleeping
Allows an application to prevent the phone from going to sleep.
Medium com.google.android.c2dm.permission.RECEIVE C2DM permissions
Permission for cloud to device messaging.
com.android.vending.BILLING Unknown permission
Unknown permission from android reference
com.android.vending.CHECK_LICENSE Unknown permission
Unknown permission from android reference
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE Unknown permission
Unknown permission from android reference

Threat analysis

Information computed with Quark-Engine.

Confidence:
100%
Read file from assets directory
Confidence:
100%
Method reflection
Confidence:
80%
Read data and put it into a buffer stream
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Open a file from given absolute path of the file
Confidence:
80%
Get absolute path of the file and store in string

Behavior analysis

Information computed with MobSF.

Java reflection
       com/stub/StubApp.java
com/qihoo/util/DtcLoader.java
com/qihoo/util/C0002.java
Load and manipulate dex files
       com/stub/StubApp.java
Loading native code (shared library)
       com/stub/StubApp.java
com/qihoo/util/DtcLoader.java

Control flow graphs analysis

Information computed by Pithus.

The application probably dynamically loads code