0/58

Threat

com.google.android.apps.carrier.carrierwifi

Google Wi-Fi Provisioner

Analyzed on 2022-06-04T14:36:12.970772

7

permissions

4

activities

4

services

2

receivers

4

domains

File sums

MD5 c1d105ae613471b7d78dc1a89936a509
SHA1 f5af720dd549120a5b3166313ff40d6a4fda92f5
SHA256 ecba156d14d88eeda4afe9b48cf452cae47bdc1da565423c31cfdfe14e107052
Size 2.03MB

APKiD

Information computed with APKiD.

/tmp/tmpzxpkx2s2
anti_disassembly
  • illegal class name
/tmp/tmpzxpkx2s2!classes.dex
anti_disassembly
  • illegal class name
anti_vm
  • Build.FINGERPRINT check
  • Build.HARDWARE check
  • Build.TAGS check
  • subscriber ID check
compiler
  • r8 without marker (suspicious)
/tmp/tmpzxpkx2s2!classes2.dex
compiler
  • r8 without marker (suspicious)

SSdeep

Information computed with ssdeep.

APK file 24576:J1TeJs1d1tRvxnH9EJy2wIJ3i7daBpvcbaM/V5bgBF7pIfG60oB0uErb:5bNvx4HJ3tF1Kgnpf6q
Manifest 192:qb8YZhv1Xjl1qoOeY3Ey43FDgAbTcCTTTdTD3TCT+3T+gT0ATkaT1THTOlTySZSJ:…
classes.dex 24576:h1TeJs1d1tRvxnH9EJy2wIJ3i7daBpvcT:hbNvx4HJ3tFe
classes2.dex 3072:SlAGOkctLG2NSe9l9su03TO7uDzojwM4v35Rllvo8bpwvALO88Lc:SYnLwOvb03T…

Dexofuzzy

Information computed with Dexofuzzy.

APK file 1536:QUhBqhhNpu5jlCzt/SUnLSwooCqjJZt16Vr3+WFSrrEgvTx46s:v+hdWjilSU+wo…
classes.dex 1536:QUhBqhhNpu5jlCzt/SUnLSwooCqjJZt16Vr3+WFSrrEgvTx4t:v+hdWjilSU+wou…
classes2.dex 96:JagDypoQQHQN27svWWWsXXXXGcg3qtGf8LEBcG6Hs7GVjI5jgIj:JNCXXXXGcg3qmc…

APK details

Information computed with AndroGuard and Pithus.

Package com.google.android.apps.carrier.carrierwifi
App name Google Wi-Fi Provisioner
Version name 1.2.345084952
Version code 10
SDK 29 - 30
UAID 2eb43307142bab2d44129101bdfb7575b58fbe3f
Signature Signature V1 Signature V2 Signature V3
Frosting Not frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown
  • 0xf05368c0: Unknown
  • 0x6dff800d: Source stamp V2 X509 cert
  • 0x42726577: Verity padding

Certificate details

Information computed with AndroGuard.

MD5 9e4bb6da323c728be62cacfd6b9cf32b
SHA1 829124884e9eddf2efff682ea9722fbda18f877b
SHA256 63ce24d1e9a00eb276bd38afec96afbb76fdce1e9063478668f23a6eb2d692ad
Issuer Common Name: Android, Organizational Unit: Android, Organization: Google Inc., Locality: Mountain View, State/Province: California, Country: US
Not before 2019-05-08T17:38:09+00:00
Not after 2049-05-08T17:38:09+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. META-INF/services/com.google.protobuf.GeneratedExtensionRegistryLoader

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.
High Broadcast Receiver (com.google.android.apps.carrier.carrierwifi.CarrierWifiReceiver) 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 Activity (com.google.android.wsu.openroaming.SignUpActivity) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.NETWORK_SETTINGS [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 Activity (com.google.android.wsu.openroaming.ChooseAccountActivity) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.NETWORK_SETTINGS [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.wsu.openroaming.OpenRoamingReceiver) is not Protected. [android:exported=true]
A Broadcast Receiver is found to be shared with other apps on the device therefore leaving it accessible to any other application on the device.
High Service (com.google.android.wsu.service.WsuServiceImpl) is Protected by a permission, but the protection level of the permission should be checked.
Permission: android.permission.NETWORK_SETTINGS [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.

Activities

Information computed with AndroGuard.

com.google.android.wsu.openroaming.SignUpActivity
com.google.android.wsu.openroaming.ConnectActivity
com.google.android.wsu.openroaming.ChooseAccountActivity
com.google.android.gms.common.api.GoogleApiActivity

Receivers

Information computed with AndroGuard.

com.google.android.apps.carrier.carrierwifi.CarrierWifiReceiver
com.google.android.wsu.openroaming.OpenRoamingReceiver

Services

Information computed with AndroGuard.

com.google.android.apps.carrier.carrierwifi.UpdateService
com.google.android.apps.carrier.carrierwifi.MonitorService
com.google.android.wsu.openroaming.ProvisionService
com.google.android.wsu.service.WsuServiceImpl

Sample timeline

Oldest file found in APK Jan. 1, 2009, midnight
Latest file found in APK Jan. 1, 2009, midnight
Certificate valid not before May 8, 2019, 5:38 p.m.
First submission on VT Jan. 3, 2021, 8:08 p.m.
Last submission on VT Aug. 21, 2021, 3:33 p.m.
Upload on Pithus June 4, 2022, 2:36 p.m.
Certificate valid not after May 8, 2049, 5:38 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 ['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 does not encrypt files 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_HTTPS_EXT.1.2 The application implement HTTPS using TLS.
HTTPS Protocol
FCS_HTTPS_EXT.1.3 The application notify the user and not establish the connection or request application authorization to establish the connection if the peer certificate is deemed invalid.
HTTPS Protocol
FIA_X509_EXT.2.1 The application use X.509v3 certificates as defined by RFC 5280 to support authentication for HTTPS , TLS.
X.509 Certificate Authentication

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:
 defpackage/yc.java
defpackage/ba.java
defpackage/zg.java
defpackage/fr.java
defpackage/az.java
defpackage/bm.java
defpackage/za.java
defpackage/adx.java
defpackage/bf.java
defpackage/ir.java
defpackage/wf.java
defpackage/aae.java
defpackage/es.java
defpackage/zm.java
defpackage/ry.java
defpackage/iq.java
defpackage/db.java
defpackage/hs.java
defpackage/ajl.java
defpackage/jo.java
defpackage/zl.java
defpackage/aji.java
defpackage/zu.java
defpackage/eh.java
defpackage/aac.java
defpackage/nm.java
defpackage/ux.java
defpackage/vw.java
defpackage/adu.java
defpackage/adp.java
defpackage/abg.java
defpackage/wj.java
defpackage/pp.java
defpackage/ye.java
defpackage/adi.java
defpackage/adv.java
defpackage/zc.java
defpackage/yr.java
defpackage/dr.java
defpackage/yv.java
defpackage/acd.java
defpackage/awb.java
defpackage/dn.java
defpackage/xo.java
defpackage/lx.java
defpackage/zt.java
defpackage/ya.java
defpackage/op.java
defpackage/aea.java
defpackage/vd.java
defpackage/vv.java
defpackage/amh.java
defpackage/ame.java
defpackage/wk.java
defpackage/adw.java
Medium
CVSS:4.3
IP Address disclosure
MASVS: MSTG-CODE-2
CWE-200 Information Exposure
Files:
 defpackage/bor.java
defpackage/bnx.java
defpackage/bnc.java
defpackage/bok.java
defpackage/bnm.java
Info
CVSS:0
This App may have root detection capabilities.
MASVS: MSTG-RESILIENCE-1
Files:
 defpackage/aea.java
Medium
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:
 defpackage/og.java
j$/util/concurrent/ThreadLocalRandom.java
defpackage/azt.java
defpackage/azw.java
defpackage/bes.java
defpackage/or.java
defpackage/bgn.java
defpackage/azy.java
Medium
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:
 defpackage/aej.java
Pygal United States: 300

Map computed by Pithus.

Domains analysis

Information computed with MobSF.

US xmlpull.org 74.50.61.58
US github.com 140.82.121.3
schemas.android.com
US plus.google.com 142.250.186.46

URL analysis

Information computed with MobSF.

https://plus.google.com/
Defined in defpackage/zw.java
http://xmlpull.org/v1/doc/features.html#process-namespaces
Defined in defpackage/up.java
https://github.com/grpc/grpc-java/issues/5015
Defined in defpackage/bde.java
http://xmlpull.org/v1/doc/features.html#process-namespaces
Defined in defpackage/tn.java
http://schemas.android.com/apk/res/android
Defined in defpackage/dn.java

Permissions analysis

Information computed with MobSF.

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.ACCESS_WIFI_STATE view Wi-Fi status
Allows an application to view the information about the status of Wi-Fi.
Low android.permission.ACCESS_NETWORK_STATE view network status
Allows an application to view the status of all networks.
Low android.permission.INTERNET full Internet access
Allows an application to create network sockets.
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.
android.permission.READ_PRIVILEGED_PHONE_STATE Unknown permission
Unknown permission from android reference
android.permission.NETWORK_CARRIER_PROVISIONING Unknown permission
Unknown permission from android reference

Threat analysis

Information computed with Quark-Engine.

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

Behavior analysis

Information computed with MobSF.

Android notifications
       defpackage/vw.java
Base64 decode
       defpackage/dh.java
defpackage/adx.java
Base64 encode
       defpackage/st.java
defpackage/qg.java
Certificate handling
       defpackage/bgk.java
defpackage/bge.java
defpackage/bgu.java
defpackage/bgd.java
defpackage/bgn.java
Content provider
       defpackage/ux.java
Crypto
       defpackage/akr.java
defpackage/akt.java
defpackage/aks.java
Gps location
       defpackage/ho.java
defpackage/hy.java
Get sim serial number
       defpackage/sp.java
Get subscriber id
       defpackage/sp.java
Get system service
       defpackage/dh.java
defpackage/awb.java
defpackage/aeo.java
defpackage/sp.java
defpackage/jx.java
defpackage/vw.java
defpackage/us.java
defpackage/hs.java
defpackage/agg.java
defpackage/qa.java
defpackage/il.java
defpackage/awa.java
defpackage/tu.java
defpackage/wj.java
defpackage/gq.java
defpackage/hl.java
Inter process communication
       defpackage/ri.java
defpackage/bg.java
defpackage/ot.java
defpackage/on.java
defpackage/wl.java
defpackage/abv.java
defpackage/xe.java
defpackage/kc.java
defpackage/hn.java
defpackage/az.java
defpackage/ao.java
defpackage/agg.java
defpackage/sm.java
defpackage/aaq.java
defpackage/sb.java
defpackage/bm.java
defpackage/px.java
defpackage/za.java
defpackage/abi.java
defpackage/em.java
defpackage/yu.java
defpackage/rz.java
defpackage/jl.java
defpackage/pw.java
defpackage/uz.java
defpackage/hm.java
defpackage/aae.java
defpackage/zm.java
defpackage/agf.java
defpackage/ut.java
defpackage/aap.java
defpackage/ju.java
defpackage/db.java
defpackage/abz.java
defpackage/aag.java
defpackage/jo.java
defpackage/zl.java
defpackage/cx.java
defpackage/qa.java
defpackage/abw.java
defpackage/aaa.java
defpackage/uy.java
defpackage/sl.java
defpackage/ct.java
defpackage/qb.java
defpackage/aba.java
defpackage/gy.java
defpackage/aeh.java
defpackage/da.java
defpackage/ux.java
defpackage/vw.java
defpackage/vq.java
defpackage/awa.java
defpackage/wj.java
defpackage/sk.java
defpackage/aem.java
defpackage/ye.java
defpackage/sd.java
defpackage/zc.java
defpackage/vr.java
defpackage/aq.java
defpackage/ep.java
defpackage/abf.java
defpackage/ov.java
defpackage/vx.java
defpackage/yv.java
defpackage/acd.java
defpackage/awb.java
defpackage/aeo.java
defpackage/el.java
defpackage/dn.java
defpackage/og.java
defpackage/wh.java
defpackage/zw.java
defpackage/yy.java
defpackage/zt.java
defpackage/rj.java
defpackage/va.java
defpackage/zn.java
defpackage/or.java
defpackage/vg.java
defpackage/ou.java
defpackage/vd.java
defpackage/ho.java
defpackage/cv.java
defpackage/py.java
defpackage/hl.java
defpackage/iv.java
defpackage/vp.java
Java reflection
       defpackage/aow.java
defpackage/ans.java
defpackage/avq.java
defpackage/aqn.java
defpackage/ud.java
defpackage/ob.java
defpackage/fr.java
defpackage/mq.java
defpackage/apj.java
defpackage/ask.java
j$/util/DesugarCollections.java
defpackage/au.java
defpackage/bdf.java
defpackage/biu.java
defpackage/awc.java
defpackage/c.java
defpackage/azw.java
defpackage/iq.java
defpackage/aqo.java
defpackage/ju.java
defpackage/aiq.java
defpackage/hs.java
defpackage/bei.java
defpackage/hv.java
defpackage/cf.java
defpackage/bho.java
defpackage/aub.java
defpackage/aqj.java
defpackage/bhl.java
defpackage/aki.java
defpackage/apg.java
defpackage/us.java
defpackage/m.java
defpackage/amq.java
j$/util/concurrent/DesugarUnsafe.java
defpackage/zc.java
defpackage/bhn.java
defpackage/apa.java
defpackage/bhg.java
defpackage/aod.java
defpackage/aph.java
defpackage/bjd.java
defpackage/b.java
defpackage/bgr.java
defpackage/bhm.java
defpackage/alr.java
defpackage/amh.java
defpackage/aps.java
defpackage/mn.java
defpackage/afp.java
defpackage/avd.java
defpackage/aje.java
defpackage/ip.java
defpackage/anz.java
Local file i/o operations
       defpackage/aeh.java
defpackage/so.java
defpackage/us.java
defpackage/agg.java
defpackage/vm.java
Message digest
       defpackage/aku.java
defpackage/aej.java
defpackage/akw.java
Query database of sms, contacts etc
       defpackage/ade.java
defpackage/adi.java
Starting activity
       defpackage/aem.java
defpackage/jo.java
defpackage/zl.java
Starting service
       defpackage/zt.java
defpackage/abh.java
Tcp socket
       defpackage/bjh.java
defpackage/bfs.java
defpackage/axr.java
defpackage/bgd.java
defpackage/awy.java
defpackage/bbb.java
defpackage/bbo.java
defpackage/bho.java
defpackage/bed.java
defpackage/bgk.java
defpackage/avf.java
defpackage/bjg.java
defpackage/bgu.java
defpackage/bbi.java
defpackage/asw.java
defpackage/asr.java
defpackage/bfu.java
defpackage/asx.java
defpackage/bgn.java
defpackage/avg.java

Control flow graphs analysis

Information computed by Pithus.

The application probably dynamically loads code

The application probably gets the IMEI of the phone

The application probably gets the serial number of the SIM card

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

The application probably gets the location based on GPS and/or Wi-Fi

The application probably gets the network connections information

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

The application probably plays sound

The application probably gets memory and CPU information