0/63

Threat

com.android.bluetooth

Bluetooth

Analyzed on 2021-11-14T10:14:12.004024

88

permissions

14

activities

26

services

5

receivers

3

domains

File sums

MD5 1e5fd8bc54cf2128de9d8babe86205ac
SHA1 50cd4af05cab09d83b492c5dac952ebf8e627c0e
SHA256 bbfde6958884f9a7b179ebcae182cfba8eda93f95811fa6dedbd1edf70981b41
Size 1.73MB

APKiD

Information computed with APKiD.

/tmp/tmp9pch323d!classes.dex
yara_issue
  • yara issue - dex file recognized by apkid but not yara module
anti_vm
  • possible Build.SERIAL check
  • subscriber ID check
compiler
  • unknown (please file detection issue!)

SSdeep

Information computed with ssdeep.

APK file 49152:Y/CujsxJRCP4Hwwki3ozqR7SDPpyrq8itgWxYXXp:CvsjHwwmqRSPpyXit5wp
Manifest 768:Ytjh71uYpute8oHY+cvyLf8HqYIR9Ujbp5oH//UV91L18poOPhLJNHQg+3c3f1A6:…
classes.dex 49152:n11WnrVRCgwtTwQjWz2pWxD1Z4/KINIh7s9wCKz2SgZUNFncNfB:n1bCBZ4SIq8…

Dexofuzzy

Information computed with Dexofuzzy.

classes.dex None

APK details

Information computed with AndroGuard and Pithus.

Package com.android.bluetooth
App name Bluetooth
Version name 9
Version code 28
SDK 28 - 28
UAID 9f46048f7c2b32531ed906e4f56f4678ba420ed2
Signature Signature V1 Signature V2
Frosting Not frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown

Certificate details

Information computed with AndroGuard.

MD5 d087e72912fba064cafa78dc34aea839
SHA1 9ca5170f381919dfe0446fcdab18b19a143b3163
SHA256 34df0e7a9f1cf1892e45c056b4973cd81ccf148a4050d11aea4ac5a65f900a42
Issuer Email Address: android.os@samsung.com, Common Name: Samsung Cert, Organizational Unit: DMC, Organization: Samsung Corporation, Locality: Suwon City, State/Province: South Korea, Country: KR
Not before 2011-06-22T12:25:12+00:00
Not after 2038-11-07T12:25:12+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. SEC-INF/buildConfirm.crt

Manifest analysis

Information computed with MobSF.

Low App is direct-boot aware [android:directBootAware=true]
This app can run before the user unlocks the device. If you're using a custom subclass of Application, and if any component inside your application is direct - boot aware, then your entire custom application is considered to be direct - boot aware.During Direct Boot, your application can only access the data that is stored in device protected storage.
Medium Application Data can be Backed up[android:allowBackup] flag is missing.
The flag [android:allowBackup] should be set to false. By default it is set to true and allows anyone to backup your application data via adb. It allows users who have enabled USB debugging to copy application data off of the device.
High Content Provider (com.samsung.android.scloud.oem.lib.ClientProvider) 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 Broadcast Receiver (com.samsung.bt.btservice.BluetoothPropertyMonitor) 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 Content Provider (.opp.BluetoothOppProvider) 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.samsung.bt.btservice.AdapterProvider) 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.samsung.bt.btservice.BluetoothSettingsProvider) 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 Broadcast Receiver (com.samsung.bt.btservice.BtSmartSwitchBackupRestore) is Protected by a permission, but the protection level of the permission should be checked.
Permission: com.wssnps.permission.COM_WSSNPS [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 (.btservice.AdapterService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Broadcast Receiver (.opp.BluetoothOppReceiver) 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.
Low Broadcast Receiver (.opp.BluetoothOppHandoverReceiver) is Protected by a permission.
Permission: com.android.permission.WHITELIST_BLUETOOTH_DEVICE
protectionLevel: signature[android:exported=true]
A Broadcast Receiver is found to be exported, but is protected by permission.
High Activity (.opp.BluetoothOppLauncherActivity) 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 Activity (.opp.BluetoothOppTransferHistory) 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 (.pbap.BluetoothPbapActivity) 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 Service (.pbap.BluetoothPbapService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.map.BluetoothMapService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.mapclient.MapClientService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.sap.SapService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.gatt.GattService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hfp.HeadsetService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.a2dp.A2dpService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.a2dpsink.A2dpSinkService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.a2dpsink.mbs.A2dpMediaBrowserService) 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.
High Service (.avrcp.AvrcpTargetService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.avrcpcontroller.AvrcpControllerService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hid.HidHostService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hid.HidDeviceService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hdp.HealthService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.pan.PanService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hfpclient.HeadsetClientService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hfpclient.connserv.HfpClientConnectionService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.BIND_CONNECTION_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 (.pbapclient.PbapClientService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.hearingaid.HearingAidService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.
High Service (.pbapclient.AuthenticationService) 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.
High Service (com.samsung.bt.pageoffload.PageOffloadService) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.BLUETOOTH_ADMIN [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.broadcom.fm.fmreceiver.FmService) is not Protected.An intent-filter exists.
A Service 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 Service is explicitly exported.

Activities

Information computed with AndroGuard.

com.android.bluetooth.opp.BluetoothOppLauncherActivity
com.android.bluetooth.opp.BluetoothOppBtEnableActivity
com.android.bluetooth.opp.BluetoothOppBtErrorActivity
com.android.bluetooth.opp.BluetoothOppTransferHistoryClearActivity
com.android.bluetooth.opp.BluetoothOppBtEnablingActivity
com.android.bluetooth.opp.BluetoothOppIncomingFileConfirmActivity
com.android.bluetooth.opp.BluetoothOppTransferActivity
com.android.bluetooth.opp.BluetoothOppTransferHistory
com.android.bluetooth.hid.BluetoothHidIncomingpriorityoffActivity
com.samsung.bt.pan.DialogConnReqInactiveNap
com.samsung.bt.pan.DialogPanAuthorize
com.samsung.bt.pan.DialogTetherError
com.android.bluetooth.pbap.BluetoothPbapActivity
com.android.bluetooth.map.BluetoothMapSettings

Receivers

Information computed with AndroGuard.

com.samsung.bt.btservice.BluetoothPropertyMonitor
com.samsung.bt.btservice.BtSmartSwitchBackupRestore
com.samsung.bt.btservice.BtServiceBroadcastReceiver
com.android.bluetooth.opp.BluetoothOppReceiver
com.android.bluetooth.opp.BluetoothOppHandoverReceiver

Services

Information computed with AndroGuard.

com.android.bluetooth.btservice.AdapterService
com.android.bluetooth.opp.BluetoothOppService
com.android.bluetooth.opp.BluetoothAdvancedOppService
com.android.bluetooth.pbap.BluetoothPbapService
com.android.bluetooth.map.BluetoothMapService
com.android.bluetooth.mapclient.MapClientService
com.android.bluetooth.sap.SapService
com.android.bluetooth.gatt.GattService
com.android.bluetooth.hfp.HeadsetService
com.android.bluetooth.a2dp.A2dpService
com.android.bluetooth.a2dpsink.A2dpSinkService
com.android.bluetooth.a2dpsink.mbs.A2dpMediaBrowserService
com.android.bluetooth.avrcp.AvrcpTargetService
com.android.bluetooth.avrcpcontroller.AvrcpControllerService
com.android.bluetooth.hid.HidHostService
com.android.bluetooth.hid.HidDeviceService
com.android.bluetooth.hdp.HealthService
com.android.bluetooth.pan.PanService
com.android.bluetooth.hfpclient.HeadsetClientService
com.android.bluetooth.hfpclient.connserv.HfpClientConnectionService
com.android.bluetooth.pbapclient.PbapClientService
com.android.bluetooth.hearingaid.HearingAidService
com.android.bluetooth.pbapclient.AuthenticationService
com.samsung.ble.BleAutoConnectService
com.samsung.bt.pageoffload.PageOffloadService
com.broadcom.fm.fmreceiver.FmService

Sample timeline

Oldest file found in APK Jan. 1, 2009, midnight
Latest file found in APK Jan. 1, 2009, midnight
Certificate valid not before June 22, 2011, 12:25 p.m.
First submission on VT April 27, 2021, 3:54 a.m.
Last submission on VT April 27, 2021, 3:54 a.m.
Upload on Pithus Nov. 14, 2021, 10:14 a.m.
Certificate valid not after Nov. 7, 2038, 12:25 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 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 ['location', 'bluetooth', 'network connectivity', 'NFC'].
Access to Platform Resources
FDP_DEC_EXT.1.2 The application has access to ['call lists', 'address book'].
Access to Platform Resources
FDP_NET_EXT.1.1 The application has user/application initiated network communications.
Network Communications
FDP_DAR_EXT.1.1 The application implement functionality to encrypt sensitive data in non-volatile memory.
Encryption Of Sensitive Application Data
FMT_MEC_EXT.1.1 The application invoke the mechanisms recommended by the platform vendor for storing and setting configuration options.
Supported Configuration Mechanism
FTP_DIT_EXT.1.1 The application does encrypt some transmitted data with HTTPS/TLS/SSH between itself and another trusted IT product.
Protection of Data in Transit
FCS_RBG_EXT.2.1
FCS_RBG_EXT.2.2
The application perform all deterministic random bit generation (DRBG) services in accordance with NIST Special Publication 800-90A using Hash_DRBG. The deterministic RBG is seeded by an entropy source that accumulates entropy from a platform-based DRBG and a software-based noise source, with a minimum of 256 bits of entropy at least equal to the greatest security strength (according to NIST SP 800-57) of the keys and hashes that it will generate.
Random Bit Generation from Application
FCS_CKM.1.1(3)
FCS_CKM.1.2(3)
A password/passphrase shall perform [Password-based Key Derivation Functions] in accordance with a specified cryptographic algorithm..
Password Conditioning
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_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
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
FCS_CKM.1.1(2) The application shall generate symmetric cryptographic keys using a Random Bit Generator as specified in FCS_RBG_EXT.1 and specified cryptographic key sizes 128 bit or 256 bit.
Cryptographic Symmetric Key Generation

Code analysis

Information computed with MobSF.

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:
 com/samsung/bt/btservice/AdapterProvider.java
com/samsung/context/sdk/samsunganalytics/internal/sender/buffering/database/DbManager.java
com/samsung/android/scloud/oem/lib/backup/ReuseDBHelper.java
com/samsung/ble/LeDbHelper.java
com/samsung/context/sdk/samsunganalytics/internal/sender/buffering/database/DefaultDBOpenHelper.java
com/samsung/bt/btservice/BluetoothSettingsProvider.java
com/samsung/downloadabledb/BluetoothDownloadableDbProvider.java
Low
CVSS:7.5
The App logs information. Sensitive information should never be logged.
MASVS: MSTG-STORAGE-3
CWE-532 Insertion of Sensitive Information into Log File
Files:
 com/samsung/ble/LeDbManager.java
com/samsung/bt/hfp/HeadsetLogManager.java
android/net/netlink/NetlinkSocket.java
com/sec/android/diagmonagent/log/provider/DiagMonUtil.java
com/samsung/ble/LeAppInfo.java
android/net/util/NetdService.java
com/samsung/bt/btservice/BluetoothSettingsProvider.java
com/samsung/bt/pbap/BluetoothPbapSimVcardManager.java
com/samsung/ble/LeLogInfo.java
com/samsung/android/scloud/oem/lib/LOG.java
com/samsung/bt/map/MapLogManager.java
com/samsung/context/sdk/samsunganalytics/internal/util/Debug.java
com/samsung/bt/util/JSONParser.java
android/net/ip/RouterAdvertisementDaemon.java
android/net/util/SharedLog.java
com/samsung/bt/data/BluetoothCoreManager.java
com/samsung/bt/pan/DialogTetherError.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/bt/hfp/HeadsetBigdataManager.java
com/samsung/bt/hfp/ExtendedAtCmdProcess.java
com/samsung/bt/btservice/ReconcileLocalDownloadOperationHandler.java
com/samsung/bt/hfp/HeadsetAudioManager.java
com/samsung/bt/btservice/BtSamsungCloudBackupRestore.java
com/samsung/bt/pageoffload/PageOffloadService.java
com/broadcom/fm/fmreceiver/FmNativehandler.java
com/samsung/bt/btservice/BluetoothBackupRestore.java
com/samsung/bt/btservice/AdapterProvider.java
com/samsung/bt/btservice/ReconcileLocalDeleteOperationHandler.java
com/broadcom/bt/service/SecureModeConfig.java
com/samsung/bt/pbap/BluetoothPbapVCardSelectorAttr.java
com/broadcom/bt/service/BluetoothSecMgrProxy.java
com/samsung/bt/pan/DialogPanAuthorize.java
android/net/dhcp/DhcpClient.java
com/sec/android/diagmonagent/log/provider/DiagMonConfig.java
com/samsung/bt/map/MapObexServerSockets.java
com/samsung/bt/btservice/BtServiceBroadcastReceiver.java
android/net/ip/IpClient.java
com/samsung/bt/pan/EnhancedTetheringManager.java
com/samsung/bt/util/Hash.java
android/net/ip/ConnectivityPacketTracker.java
com/samsung/bt/btservice/BluetoothPropertyMonitor.java
com/samsung/bt/pan/DialogConnReqInactiveNap.java
com/samsung/bt/hfp/AtMessageUtils.java
com/samsung/bt/btservice/BluetoothPropertyBuilder.java
com/samsung/bt/hfp/HeadsetConnectionManager.java
android/net/ip/IpReachabilityMonitor.java
android/net/ip/InterfaceController.java
com/samsung/ble/LeDbProvider.java
android/net/ip/IpNeighborMonitor.java
com/samsung/ble/LeDbHelper.java
android/net/apf/ApfFilter.java
com/samsung/bt/hfp/AtMessage.java
com/samsung/ble/BleAutoConnectService.java
com/samsung/bt/btservice/HandleReconcileContents.java
com/samsung/bt/data/BluetoothDataManager.java
android/net/dhcp/SemDhcpClientUtil.java
com/sec/android/diagmonagent/log/provider/DiagMonSDK.java
com/samsung/bt/pbap/BluetoothPbapLogManager.java
com/samsung/bt/hfp/vsc/VendorSpecificCommand.java
com/samsung/bt/pan/ETMLeHelper.java
com/sec/android/diagmonagent/log/provider/IssueBuilder.java
com/broadcom/fm/fmreceiver/FmService.java
com/samsung/bt/hfp/vsc/VendorSpecificCommandRouter.java
com/samsung/downloadabledb/BluetoothDownloadableDatabase.java
Medium
CVSS:4.3
IP Address disclosure
MASVS: MSTG-CODE-2
CWE-200 Information Exposure
Files:
 android/net/ip/InterfaceController.java
android/net/util/PrefixUtils.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:
 com/samsung/android/scloud/oem/lib/utils/FileTool.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/android/scloud/oem/lib/utils/SCloudUtil.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/samsung/android/scloud/oem/lib/common/CommonConstants.java
com/samsung/bt/util/Hash.java
com/samsung/android/scloud/oem/lib/sync/record/RecordSyncManager.java
com/samsung/android/scloud/oem/lib/backup/ReuseDBHelper.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/downloadabledb/BluetoothDownloadableDatabase.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/samsung/android/scloud/oem/lib/utils/FileTool.java
com/samsung/android/scloud/oem/lib/utils/HashUtil.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:
 android/net/ip/RouterAdvertisementDaemon.java
android/net/dhcp/DhcpClient.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/samsung/context/sdk/samsunganalytics/internal/security/CertificateManager.java
Pygal United States: 300

Map computed by Pithus.

Domains analysis

Information computed with MobSF.

US dc.di.atlas.samsung.com 34.120.24.208
US stg-api.di.atlas.samsung.com 34.149.149.71
US regi.di.atlas.samsung.com 34.102.190.55

URL analysis

Information computed with MobSF.

https://stg-api.di.atlas.samsung.com
https://dc.di.atlas.samsung.com
https://regi.di.atlas.samsung.com
Defined in com/samsung/context/sdk/samsunganalytics/internal/connection/Domain.java
https://stg-api.di.atlas.samsung.com
https://dc.di.atlas.samsung.com
https://regi.di.atlas.samsung.com
Defined in com/samsung/context/sdk/samsunganalytics/internal/connection/Domain.java
https://stg-api.di.atlas.samsung.com
https://dc.di.atlas.samsung.com
https://regi.di.atlas.samsung.com
Defined in com/samsung/context/sdk/samsunganalytics/internal/connection/Domain.java

Permissions analysis

Information computed with MobSF.

High android.permission.ACCESS_COARSE_LOCATION coarse (network-based) location
Access coarse location sources, such as the mobile network database, to determine an approximate phone location, where available. Malicious applications can use this to determine approximately where you are.
High android.permission.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.READ_CONTACTS read contact data
Allows an application to read all of the contact (address) data stored on your phone. Malicious applications can use this to send your data to other people.
High android.permission.WRITE_CONTACTS write contact data
Allows an application to modify the contact (address) data stored on your phone. Malicious applications can use this to erase or modify your contact data.
High android.permission.READ_CALL_LOG Allows an application to read the user's call log.
High android.permission.WRITE_CALL_LOG Allows an application to write (but not read) the user's call log data.
High android.permission.WRITE_SETTINGS modify global system settings
Allows an application to modify the system's settings data. Malicious applications can corrupt your system's configuration.
High android.permission.WRITE_APN_SETTINGS write Access Point Name settings
Allows an application to modify the APN settings, such as Proxy and Port of any APN.
High android.permission.GET_ACCOUNTS list accounts
Allows access to the list of accounts in the Accounts Service.
High android.permission.RECEIVE_SMS receive SMS
Allows application to receive and process SMS messages. Malicious applications may monitor your messages or delete them without showing them to you.
High android.permission.SEND_SMS send SMS messages
Allows application to send SMS messages. Malicious applications may cost you money by sending messages without your confirmation.
High android.permission.READ_SMS read SMS or MMS
Allows application to read SMS messages stored on your phone or SIM card. Malicious applications may read your confidential messages.
High android.permission.WRITE_SMS edit SMS or MMS
Allows application to write to SMS messages stored on your phone or SIM card. Malicious applications may delete your messages.
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.READ_PROFILE read the user's personal profile data
Allows an application to read the user's personal profile data.
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.INTERNET full Internet access
Allows an application to create network sockets.
Low android.permission.BLUETOOTH create Bluetooth connections
Allows applications to connect to paired bluetooth devices.
Low android.permission.BLUETOOTH_ADMIN bluetooth administration
Allows applications to discover and pair bluetooth devices.
Low android.permission.WAKE_LOCK prevent phone from sleeping
Allows an application to prevent the phone from going to sleep.
Low android.permission.MODIFY_AUDIO_SETTINGS change your audio settings
Allows application to modify global audio settings, such as volume and routing.
Low android.permission.ACCESS_NETWORK_STATE view network status
Allows an application to view the status of all networks.
Low android.permission.CHANGE_NETWORK_STATE change network connectivity
Allows applications to change network connectivity state.
Low android.permission.MEDIA_CONTENT_CONTROL Allows an application to know what content is playing and control its playback.
Low android.permission.VIBRATE control vibrator
Allows the application to control the vibrator.
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.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.EXPAND_STATUS_BAR expand/collapse status bar
Allows application to expand or collapse the status bar.
Medium android.permission.DEVICE_POWER turn phone on or off
Allows the application to turn the phone on or off.
Medium android.permission.PACKAGE_USAGE_STATS update component usage statistics
Allows the modification of collected component usage statistics. Not for use by common applications.
Medium android.permission.STOP_APP_SWITCHES prevent app switches
Prevents the user from switching to another application.
Medium android.permission.STATUS_BAR_SERVICE status bar
Allows the application to be the status bar.
Medium android.permission.BROADCAST_SMS send SMS-received broadcast
Allows an application to broadcast a notification that an SMS message has been received. Malicious applications may use this to forge incoming SMS messages.
Medium android.permission.BLUETOOTH_PRIVILEGED Allows applications to pair bluetooth devices without user interaction, and to allow or disallow phonebook access or message access. This is not available to third party applications.
Medium android.permission.DUMP retrieve system internal status
Allows application to retrieve internal status of the system. Malicious applications may retrieve a wide variety of private and secure information that they should never commonly need.
Medium android.permission.WRITE_SECURE_SETTINGS modify secure system settings
Allows an application to modify the system's secure settings data. Not for use by common applications.
Medium android.permission.CALL_PRIVILEGED directly call any phone numbers
Allows the application to call any phone number, including emergency numbers, without your intervention. Malicious applications may place unnecessary and illegal calls to emergency services.
Medium android.permission.MODIFY_PHONE_STATE modify phone status
Allows the application to control the phone features of the device. An application with this permission can switch networks, turn the phone radio on and off and the like, without ever notifying you.
Medium android.permission.UPDATE_DEVICE_STATS modify battery statistics
Allows the modification of collected battery statistics. Not for use by common applications.
android.permission.ACCESS_BLUETOOTH_SHARE Unknown permission
Unknown permission from android reference
android.permission.BLUETOOTH_MAP Unknown permission
Unknown permission from android reference
android.permission.NETWORK_SETTINGS Unknown permission
Unknown permission from android reference
android.permission.READ_PRIVILEGED_PHONE_STATE Unknown permission
Unknown permission from android reference
android.permission.NFC_HANDOVER_STATUS Unknown permission
Unknown permission from android reference
android.permission.NET_ADMIN Unknown permission
Unknown permission from android reference
android.permission.NET_TUNNELING Unknown permission
Unknown permission from android reference
android.permission.CONNECTIVITY_INTERNAL Unknown permission
Unknown permission from android reference
android.permission.TETHER_PRIVILEGED Unknown permission
Unknown permission from android reference
android.permission.INTERACT_ACROSS_USERS_FULL Unknown permission
Unknown permission from android reference
android.permission.BLUETOOTH_STACK Unknown permission
Unknown permission from android reference
android.permission.INTERACT_ACROSS_USERS Unknown permission
Unknown permission from android reference
android.permission.MANAGE_USERS Unknown permission
Unknown permission from android reference
com.google.android.gallery3d.permission.GALLERY_PROVIDER Unknown permission
Unknown permission from android reference
com.android.gallery3d.permission.GALLERY_PROVIDER Unknown permission
Unknown permission from android reference
android.permission.UPDATE_APP_OPS_STATS Unknown permission
Unknown permission from android reference
android.permission.MANAGE_APP_OPS_MODES Unknown permission
Unknown permission from android reference
android.permission.REAL_GET_TASKS Unknown permission
Unknown permission from android reference
android.permission.MODIFY_AUDIO_ROUTING Unknown permission
Unknown permission from android reference
com.sec.permission.BLUETOOTH_DEBUG Unknown permission
Unknown permission from android reference
android.permission.MANAGE_NETWORK_POLICY Unknown permission
Unknown permission from android reference
android.permission.LOCAL_MAC_ADDRESS Unknown permission
Unknown permission from android reference
android.permission.PEERS_MAC_ADDRESS Unknown permission
Unknown permission from android reference
com.google.android.providers.gsf.permission.READ_GSERVICES Unknown permission
Unknown permission from android reference
com.google.android.apps.photos.permission.GOOGLE_PHOTOS Unknown permission
Unknown permission from android reference
com.samsung.permission.HQM_NOTIFICATION_PERMISSION Unknown permission
Unknown permission from android reference
com.samsung.android.allshare.service.fileshare.SERVICE_MANAGER Unknown permission
Unknown permission from android reference
com.samsung.android.permission.SSRM_NOTIFICATION_PERMISSION Unknown permission
Unknown permission from android reference
com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY Unknown permission
Unknown permission from android reference
android.permission.MMS_SEND_OUTBOX_MSG Unknown permission
Unknown permission from android reference
com.android.email.permission.ACCESS_PROVIDER Unknown permission
Unknown permission from android reference
com.android.email.permission.READ_ATTACHMENT Unknown permission
Unknown permission from android reference
com.google.android.gm.permission.READ_GMAIL Unknown permission
Unknown permission from android reference
com.samsung.android.email.permission.ACCESS_PROVIDER Unknown permission
Unknown permission from android reference
com.sec.android.email.permission.EMAILBROADCAST Unknown permission
Unknown permission from android reference
com.sec.android.provider.logsprovider.permission.READ_LOGS Unknown permission
Unknown permission from android reference
com.sec.android.provider.logsprovider.permission.WRITE_LOGS Unknown permission
Unknown permission from android reference
android.permission.GET_INTENT_SENDER_INTENT Unknown permission
Unknown permission from android reference
com.samsung.android.permission.EXTRACT_SMARTCLIP_DATA Unknown permission
Unknown permission from android reference
com.samsung.permission.READ_SEC_COMMON_POLICY Unknown permission
Unknown permission from android reference
com.sec.spp.permission.TOKEN_4d9592a7f7941e059d4568ad776ebc2b675f4f6c543a324dba84a789c084… Unknown permission
Unknown permission from android reference
com.samsung.android.scloud.backup.lib.read Unknown permission
Unknown permission from android reference
com.samsung.android.scloud.backup.lib.write Unknown permission
Unknown permission from android reference
com.sec.android.app.myfiles.permission.READ Unknown permission
Unknown permission from android reference
com.sec.android.app.myfiles.permission.WRITE Unknown permission
Unknown permission from android reference
android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME Unknown permission
Unknown permission from android reference
com.samsung.android.scloud.sync.permission.READ Unknown permission
Unknown permission from android reference
com.samsung.android.scloud.sync.permission.WRITE Unknown permission
Unknown permission from android reference

Threat analysis

Information computed with Quark-Engine.

Confidence:
100%
Find a method from given class name, usually for reflection
Confidence:
100%
Method reflection
Confidence:
100%
Monitor data identified by a given content URI changes(SMS, MMS, etc.)
Confidence:
100%
Retrieve data from broadcast
Confidence:
100%
Read sensitive data(SMS, CALLLOG, etc)
Confidence:
100%
Put data in cursor to JSON object
Confidence:
100%
Query user account information
Confidence:
100%
Send notification
Confidence:
100%
Monitor the broadcast action events (BOOT_COMPLETED)
Confidence:
100%
Monitor incoming call status
Confidence:
100%
Get the current WIFI information
Confidence:
100%
Deletes media specified by a content URI(SMS, CALL_LOG, File, etc.)
Confidence:
100%
Check if the given file path exist
Confidence:
100%
Hide the current app's icon
Confidence:
100%
Query WiFi information and WiFi Mac Address
Confidence:
100%
Query data from URI (SMS, CALLLOGS)
Confidence:
100%
Query the phone number
Confidence:
100%
Create a directory
Confidence:
100%
Get the current WiFi MAC address
Confidence:
100%
Check the list of currently running applications
Confidence:
100%
Get resource file from res/raw directory
Confidence:
80%
Get the content of SMS and forward it to others via SMS
Confidence:
80%
Implicit intent(view a web page, make a phone call, etc.)
Confidence:
80%
Get absolute path of file and put it to JSON object
Confidence:
80%
Modify voice volume
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Open a file from given absolute path of the file
Confidence:
80%
Read sensitive data(SMS, CALLLOG) and put it into JSON object
Confidence:
80%
Return dynamic information about the current Wi-Fi connection
Confidence:
80%
Get absolute path of the file and store in string
Confidence:
80%
Read file into a stream and put it into a JSON object
Confidence:
80%
Read sensitive data(SMS, CALLLOG, etc)

Behavior analysis

Information computed with MobSF.

Android notifications
       com/samsung/bt/hfp/HeadsetAudioManager.java
Base64 encode
       com/samsung/bt/util/JSONParser.java
com/samsung/android/scloud/oem/lib/utils/FileTool.java
com/samsung/android/scloud/oem/lib/utils/SCloudParser.java
Content provider
       com/samsung/android/scloud/oem/lib/ClientProvider.java
com/samsung/bt/btservice/AdapterProvider.java
com/sec/android/diagmonagent/log/provider/newAbstractLogProvider.java
com/samsung/ble/LeDbProvider.java
com/samsung/bt/btservice/BluetoothSettingsProvider.java
com/samsung/downloadabledb/BluetoothDownloadableDbProvider.java
Crypto
       com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
Get sim provider details
       com/samsung/context/sdk/samsunganalytics/internal/device/DeviceInfo.java
Get subscriber id
       com/samsung/bt/hfp/AtMessage.java
Get system service
       com/samsung/context/sdk/samsunganalytics/internal/sender/DLS/DLSLogSender.java
android/net/ip/IpReachabilityMonitor.java
com/samsung/context/sdk/samsunganalytics/internal/device/DeviceInfo.java
android/net/apf/ApfFilter.java
com/samsung/bt/hfp/AtMessage.java
com/samsung/ble/BleAutoConnectService.java
com/samsung/bt/pbap/BluetoothPbapSimVcardManager.java
com/samsung/bt/pan/EnhancedTetheringManager.java
com/samsung/bt/data/BluetoothDataManager.java
com/samsung/context/sdk/samsunganalytics/internal/policy/Validation.java
com/samsung/bt/data/BluetoothCoreManager.java
com/samsung/bt/pan/DialogTetherError.java
com/samsung/bt/hfp/HeadsetBigdataManager.java
com/samsung/bt/hfp/ExtendedAtCmdProcess.java
com/samsung/bt/pan/DialogConnReqInactiveNap.java
com/samsung/bt/pan/DialogPanAuthorize.java
com/samsung/bt/btservice/BtServiceBroadcastReceiver.java
Https connection
       com/samsung/context/sdk/samsunganalytics/internal/policy/GetPolicyClient.java
com/samsung/context/sdk/samsunganalytics/internal/terms/RegisterTask.java
com/samsung/context/sdk/samsunganalytics/internal/sender/DLS/DLSAPIClient.java
Inter process communication
       com/samsung/context/sdk/samsunganalytics/internal/sender/DMA/DMABinder.java
android/net/util/VersionedBroadcastListener.java
com/sec/android/diagmonagent/log/provider/DiagMonUtil.java
com/samsung/ble/LeAppInfo.java
android/net/util/MultinetworkPolicyTracker.java
com/samsung/bt/pan/EnhancedTetheringManager.java
com/samsung/context/sdk/samsunganalytics/internal/Tracker.java
com/sec/android/diagmonagent/sa/IDMAInterface.java
com/sec/spp/push/dlc/api/IDlcService.java
com/samsung/bt/data/BluetoothCoreManager.java
com/samsung/bt/pan/DialogTetherError.java
com/samsung/bt/btservice/BluetoothPropertyMonitor.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/bt/hfp/HeadsetBigdataManager.java
com/samsung/bt/hfp/ExtendedAtCmdProcess.java
com/samsung/bt/pan/DialogConnReqInactiveNap.java
com/samsung/android/allshare/service/fileshare/iface/IFileShareServiceCallback.java
com/samsung/bt/btservice/BluetoothPropertyBuilder.java
com/samsung/context/sdk/samsunganalytics/internal/sender/DLC/DLCBinder.java
android/net/apf/ApfFilter.java
com/samsung/bt/hfp/AtMessage.java
com/samsung/android/allshare/service/fileshare/iface/IFileShareService.java
com/samsung/ble/BleAutoConnectService.java
com/samsung/bt/pageoffload/PageOffloadService.java
com/broadcom/fm/fmreceiver/FmNativehandler.java
com/samsung/bt/data/BluetoothDataManager.java
com/samsung/context/sdk/samsunganalytics/internal/policy/Validation.java
com/broadcom/bt/service/BluetoothSecMgrProxy.java
com/samsung/bt/pan/DialogPanAuthorize.java
com/broadcom/fm/fmreceiver/FmService.java
com/samsung/bt/btservice/BtServiceBroadcastReceiver.java
com/samsung/downloadabledb/BluetoothDownloadableDatabase.java
Java reflection
       com/samsung/android/scloud/oem/lib/ClientProvider.java
com/samsung/context/sdk/samsunganalytics/internal/policy/PolicyUtils.java
com/samsung/context/sdk/samsunganalytics/internal/policy/Validation.java
com/broadcom/bt/service/BluetoothSecMgrProxy.java
Local file i/o operations
       com/samsung/android/scloud/oem/lib/backup/BackupMetaManager.java
com/sec/android/diagmonagent/log/provider/newAbstractLogProvider.java
com/samsung/context/sdk/samsunganalytics/internal/Tracker.java
com/samsung/context/sdk/samsunganalytics/internal/setting/SettingReader.java
com/samsung/context/sdk/samsunganalytics/internal/policy/GetPolicyClient.java
com/samsung/context/sdk/samsunganalytics/internal/setting/RegisterClient.java
com/samsung/context/sdk/samsunganalytics/internal/util/Preferences.java
com/samsung/bt/pan/EnhancedTetheringManager.java
Message digest
       com/samsung/android/scloud/oem/lib/utils/FileTool.java
com/samsung/android/scloud/oem/lib/utils/HashUtil.java
com/samsung/context/sdk/samsunganalytics/internal/policy/Validation.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/android/scloud/oem/lib/utils/SCloudUtil.java
Query database of sms, contacts etc
       com/samsung/ble/LeDbManager.java
com/samsung/bt/btservice/BluetoothBackupRestore.java
com/samsung/bt/util/Hash.java
com/samsung/bt/hfp/AtMessage.java
com/samsung/bt/btservice/BtSamsungCloudBackupRestore.java
com/samsung/bt/pbap/BluetoothPbapSimVcardManager.java
com/samsung/downloadabledb/BluetoothDownloadableDatabase.java
Send sms
       com/samsung/bt/hfp/AtMessage.java
Sending broadcast
       com/samsung/bt/btservice/BluetoothPropertyBuilder.java
com/samsung/context/sdk/samsunganalytics/internal/sender/DLC/DLCBinder.java
com/samsung/ble/LeAppInfo.java
com/samsung/bt/hfp/AtMessage.java
com/samsung/ble/BleAutoConnectService.java
com/samsung/bt/data/BluetoothDataManager.java
com/samsung/context/sdk/samsunganalytics/internal/Tracker.java
com/sec/android/diagmonagent/log/provider/DiagMonSDK.java
com/samsung/bt/data/BluetoothCoreManager.java
com/samsung/bt/btservice/BtSmartSwitchBackupRestore.java
com/samsung/bt/hfp/HeadsetBigdataManager.java
com/samsung/bt/hfp/ExtendedAtCmdProcess.java
com/samsung/bt/pan/DialogConnReqInactiveNap.java
com/samsung/bt/pan/DialogPanAuthorize.java
com/samsung/downloadabledb/BluetoothDownloadableDatabase.java
Starting activity
       com/samsung/bt/pan/DialogConnReqInactiveNap.java
com/samsung/bt/btservice/BtServiceBroadcastReceiver.java
Starting service
       com/samsung/context/sdk/samsunganalytics/internal/sender/DMA/DMABinder.java
com/samsung/context/sdk/samsunganalytics/internal/sender/DLC/DLCBinder.java
Tcp socket
       android/net/netlink/NetlinkSocket.java
android/net/ip/RouterAdvertisementDaemon.java
android/net/ip/IpNeighborMonitor.java
android/net/apf/ApfFilter.java
android/net/dhcp/DhcpClient.java
android/net/util/InterfaceParams.java

Control flow graphs analysis

Information computed by Pithus.

The application probably lists running applications

The application probably mutes the microphone

The application probably gets the subscriber ID associated to the SIM card/ Should never be collected

The application probably scans the Wi-Fi network

The application probably makes OS calls