0/59

Threat

dgca.verifier.app.android

Verifier App

Analyzed on 2022-06-28T16:46:54.536033

7

permissions

13

activities

4

services

8

receivers

10

domains

File sums

MD5 93f77529b7d12b90a2822f474f11e589
SHA1 be93704cc6c5a968dccc09c147a03f1d33b911da
SHA256 7322e90c3ab30293a8d6246f4548289e881fec296b83a3667786a5fa4b07d567
Size 11.91MB

APKiD

Information computed with APKiD.

/tmp/tmpyh3avjwk!classes.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MANUFACTURER check
compiler
  • r8
/tmp/tmpyh3avjwk!classes2.dex
compiler
  • r8
/tmp/tmpyh3avjwk!classes3.dex
anti_vm
  • Build.FINGERPRINT check
  • Build.MANUFACTURER check
  • Build.BOARD check
compiler
  • r8 without marker (suspicious)
/tmp/tmpyh3avjwk!classes4.dex
compiler
  • r8 without marker (suspicious)

SSdeep

Information computed with ssdeep.

APK file 196608:rDOIJkAVFpbOTMho7FHfCp/6kD6cgG1JQRl66V+E3IydIdV9l8cD0ylgQXy2rsF5:rDDJkCBGBfCV6Y12K7nRD08tX7rsiF8l
Manifest 384:D4/JrKTAdG/RxcKE6X1SbqUQtoTmR95ety5N7QkCpfz+TtrTFu0HQqxRs/l1HVD1:…
classes.dex 98304:O57hrK7fhM7toJDQNFmYYCXwK62aXle3XPnVTT:OJihOtTnTT
classes2.dex 6144:4P0pxDV4O+vNDu0tA714RyvKBa4n17JDdRerUZUmUdFG/U5Vf/YMT/0i5mBA1N7x…
classes3.dex 98304:FqHsSRY8uH40L2j1lyPS80C8jm1oEoe3f+9EI7wPCaa0:MMSRY8uH40L2j1l1LN…
classes4.dex 98304:4Dcd1L2kphzHX6+OVdeqafEfnFT2avDsSc52:421Lrjz6jVdnlzvDsi

Dexofuzzy

Information computed with Dexofuzzy.

APK file 12288:FQnme74gAue0yLNCxiJAQp3SEpipTD0Jnrf0YvpkwOAtMK0fLCQc7rEt5vkG56S…
classes.dex 6144:FQnmhQOW743umQKFue3kuNLNy5xirFAl8WnKRk9Yr3ST/JGmLJeivJYSJmPCI:FQ…
classes2.dex 384:/Uf55xO0Y8d1XIe4s9CYQSe8MCpwQljD1v4DTrpbVzQA9sTVehP4RT94ke4q/tSy:…
classes3.dex 6144:UqWZw3W0JnrNftkPOqdzGvvPZObwWoOcMMgYQ+Fzc1T2uTK:Q0Jnrf0YvpkwOM
classes4.dex 6144:BtkpKrkiCfbVxtn6ujOxKx5JPoT7OtofJnwuYfx4YN2YlSo9alG565Ht6v:BtMK0…

APK details

Information computed with AndroGuard and Pithus.

Package dgca.verifier.app.android
App name Verifier App
Version name 1.3.2-acc-hash
Version code 64
SDK 23 - 30
UAID 50bb555f352a06c7fe240947c6936358b885863b
Signature Signature V1 Signature V2
Frosting Not frosted
Blocks found within V2 signature:
  • 0x7109871a: Unknown
  • 0x504b4453: Dependency metadata
  • 0x42726577: Verity padding

Certificate details

Information computed with AndroGuard.

MD5 ff6276c2467df7f1159e6e477be92a8b
SHA1 44d5a8ed229268c6bccc50ed74fd14dacc763427
SHA256 477cf555b636125b7bdaf126b694f3b990fdc4f8ae5247fdd29296becd160053
Issuer Common Name: RAW MAIN, Organizational Unit: RAW, Organization: RAW, Locality: Guaynabo, State/Province: PR, Country: US
Not before 2020-04-24T01:50:10+00:00
Not after 2045-04-18T01:50:10+00:00

File Analysis

Information computed with MobSF.

Findings Files
Certificate/Key files hardcoded inside the app. META-INF/services/kotlin.reflect.jvm.internal.impl.builtins.BuiltInsLoader
META-INF/services/java.security.Provider

Manifest analysis

Information computed with MobSF.

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.

Browsable activities

Information computed with MobSF.

dgca.verifier.app.android.ui.MainActivity

Hosts: open.my.app

Schemes: app://

Main Activity

Information computed with AndroGuard.

dgca.verifier.app.android.ui.MainActivity

Activities

Information computed with AndroGuard.

dgca.verifier.app.android.ui.MainActivity
dgca.verifier.app.android.dcc.ui.DccActivity
dgca.verifier.app.android.dcc.settings.DccSettingsActivity
com.google.android.gms.oss.licenses.OssLicensesMenuActivity
com.google.android.gms.oss.licenses.OssLicensesActivity
dgca.verifier.app.android.icao.ui.IcaoActivity
dgca.verifier.app.android.icao.ui.IcaoSettingsActivity
dgca.verifier.app.android.divoc.ui.DivocActivity
dgca.verifier.app.android.divoc.ui.DivocSettingsActivity
dgca.verifier.app.android.vc.ui.VcActivity
dgca.verifier.app.android.vc.ui.settings.VcSettingsActivity
com.journeyapps.barcodescanner.CaptureActivity
com.google.android.gms.common.api.GoogleApiActivity

Receivers

Information computed with AndroGuard.

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

Services

Information computed with AndroGuard.

androidx.work.impl.background.systemalarm.SystemAlarmService
androidx.work.impl.background.systemjob.SystemJobService
androidx.work.impl.foreground.SystemForegroundService
androidx.room.MultiInstanceInvalidationService

Sample timeline

Oldest file found in APK Jan. 1, 1981, 1:01 a.m.
Latest file found in APK Jan. 1, 1981, 1:01 a.m.
Certificate valid not before April 24, 2020, 1:50 a.m.
First submission on VT June 28, 2022, 4:44 p.m.
Last submission on VT June 28, 2022, 4:44 p.m.
Upload on Pithus June 28, 2022, 4:46 p.m.
Certificate valid not after April 18, 2045, 1:50 a.m.

NIAP analysis

Information computed with MobSF.

FCS_RBG_EXT.1.1 The application implement DRBG functionality for its cryptographic operations.
Random Bit Generation Services
FCS_STO_EXT.1.1 The application does not store any 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 ['NFC', 'camera', '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_CKM.1.1(1) The application generate asymmetric cryptographic keys not in accordance with FCS_CKM.1.1(1) using key generation algorithm RSA schemes and cryptographic key sizes of 1024-bit or lower.
Cryptographic Asymmetric Key Generation
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 in accordance with a specified cryptographic algorithm SHA-1/SHA-256/SHA-384/SHA-512 and message digest sizes 160/256/384/512 bits.
Cryptographic Operation - Hashing
FCS_COP.1.1(3) The application perform cryptographic signature services (generation and verification) in accordance with a specified cryptographic algorithm RSA schemes using cryptographic key sizes of 2048-bit or greater.
Cryptographic Operation - Signing
FCS_HTTPS_EXT.1.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 application validate a certificate path by ensuring the presence of the basicConstraints extension and that the CA flag is set to TRUE for all CA certificates', 'The certificate path must terminate with a trusted CA certificate', 'The application validate the revocation status of the certificate using the Online Certificate Status Protocol (OCSP) as specified in RFC 2560 or a Certificate Revocation List (CRL) as specified in RFC 5759 or an OCSP TLS Status Request Extension (i.e., OCSP stapling) as specified in RFC 6066'].
X.509 Certificate Validation
FIA_X509_EXT.1.2 The application treat a certificate as a CA certificate only if the basicConstraints extension is present and the CA flag is set to TRUE.
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
FIA_X509_EXT.2.2 When the application cannot establish a connection to determine the validity of a certificate, the application allow the administrator to choose whether to accept the certificate in these cases or accept the certificate ,or not accept the certificate.
X.509 Certificate Authentication
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.

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/github/fge/jsonschema/main/cli/Reporters.java
com/journeyapps/barcodescanner/camera/FitCenterStrategy.java
com/github/fge/jsonschema/main/cli/Main.java
com/github/fge/jsonschema/examples/Example4.java
com/github/fge/jsonschema/examples/Example7.java
com/journeyapps/barcodescanner/camera/CenterCropStrategy.java
COSE/ASN1.java
org/joda/time/tz/ZoneInfoCompiler.java
com/journeyapps/barcodescanner/CameraPreview.java
com/journeyapps/barcodescanner/camera/CameraInstance.java
com/journeyapps/barcodescanner/camera/CameraConfigurationUtils.java
org/joda/time/tz/DateTimeZoneBuilder.java
com/github/fge/jsonschema/examples/Example3.java
com/journeyapps/barcodescanner/CaptureManager.java
com/journeyapps/barcodescanner/camera/LegacyPreviewScalingStrategy.java
com/journeyapps/barcodescanner/camera/AutoFocusManager.java
timber/log/Timber.java
org/slf4j/helpers/Util.java
com/github/fge/jsonschema/examples/Example9.java
com/github/fge/jsonschema/examples/Example6.java
com/journeyapps/barcodescanner/camera/CameraManager.java
com/github/fge/jsonschema/examples/Example1.java
com/journeyapps/barcodescanner/DecoderThread.java
com/journeyapps/barcodescanner/camera/PreviewScalingStrategy.java
com/github/fge/jsonschema/examples/Example10.java
com/github/fge/jsonschema/examples/Example8.java
com/github/fge/jsonschema/examples/Example2.java
com/github/fge/jsonschema/examples/Example5.java
com/github/fge/jsonschema/core/report/ConsoleProcessingReport.java
Medium
CVSS:4.3
IP Address disclosure
MASVS: MSTG-CODE-2
CWE-200 Information Exposure
Files:
 net/i2p/crypto/eddsa/EdDSASecurityProvider.java
com/nimbusds/jose/jwk/Curve.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/sun/mail/util/MailSSLSocketFactory.java
dcc/app/revocation/di/RevocationNetworkModule.java
dgca/verifier/app/android/dcc/di/NetworkModule.java
dgca/verifier/app/android/vc/di/VcNetworkModule.java
High
CVSS:7.4
The App uses the encryption mode CBC with PKCS5/PKCS7 padding. This configuration is vulnerable to padding oracle attacks.
MASVS: MSTG-CRYPTO-3
CWE-649 Reliance on Obfuscation or Encryption of Security-Relevant Inputs without Integrity Checking
M5: Insufficient Cryptography
Files:
 com/nimbusds/jose/jca/JCASupport.java
com/nimbusds/jose/crypto/impl/AESCBC.java
Medium
CVSS:7.4
Files may contain hardcoded sensitive information like usernames, passwords, keys etc.
MASVS: MSTG-STORAGE-14
CWE-312 Cleartext Storage of Sensitive Information
M9: Reverse Engineering
Files:
 dgca/verifier/app/engine/DefaultCertLogicEngine.java
com/nimbusds/jose/jwk/JWKParameterNames.java
dgca/verifier/app/android/vc/data/remote/model/SignerCertificate.java
dgca/verifier/app/android/dcc/ui/verification/VerificationViewModelKt.java
com/github/fge/jsonschema/core/tree/BaseSchemaTree.java
dgca/verifier/app/android/dcc/settings/SelectCountryConstantsKt.java
dgca/verifier/app/android/dcc/settings/debug/mode/CountriesConstantsKt.java
dgca/verifier/app/android/protocolhandler/ProtocolHandlerConstantsKt.java
dgca/verifier/app/android/ui/MainActivityKt.java
dgca/verifier/app/android/dcc/data/local/model/Key.java
com/nimbusds/jose/HeaderParameterNames.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:
 j$/util/concurrent/ThreadLocalRandom.java
High
CVSS:7.4
Weak Encryption algorithm used
MASVS: MSTG-CRYPTO-4
CWE-327 Use of a Broken or Risky Cryptographic Algorithm
M5: Insufficient Cryptography
Files:
 com/sun/mail/auth/Ntlm.java
Medium
CVSS:5.5
App creates temp file. Sensitive information should never be written into a temp file.
MASVS: MSTG-STORAGE-2
CWE-276 Incorrect Default Permissions
M2: Insecure Data Storage
Files:
 com/journeyapps/barcodescanner/CaptureManager.java
Pygal Switzerland: 100 Germany: 300 Luxembourg: 100 United States: 400

Map computed by Pithus.

Domains analysis

Information computed with MobSF.

US apache.org 151.101.2.132
US json-schema.org 104.21.8.16
id.uvci.eu
US github.com 140.82.121.3
LU ec.europa.eu 147.67.34.30
DE dgca-verifier-service.cfapps.eu10.hana.ondemand.com 3.122.209.241
CH www.slf4j.org 83.173.251.158
US semver.org 185.199.110.153
DE my.site 3.64.163.50
DE journeyapps.com 13.225.78.127

URL analysis

Information computed with MobSF.

http://javax.xml.XMLConstants/feature/secure-processing
http://apache.org/xml/features/disallow-doctype-decl
http://apache.org/xml/features/nonvalidating/load-external-dtd
Defined in com/fasterxml/jackson/databind/ext/DOMDeserializer.java
http://javax.xml.XMLConstants/feature/secure-processing
http://apache.org/xml/features/disallow-doctype-decl
http://apache.org/xml/features/nonvalidating/load-external-dtd
Defined in com/fasterxml/jackson/databind/ext/DOMDeserializer.java
http://json-schema.org/draft-04/schema#
http://json-schema.org/draft-03/schema#
http://json-schema.org/draft-04/hyper-schema#
Defined in com/github/fge/jsonschema/SchemaVersion.java
http://json-schema.org/draft-04/schema#
http://json-schema.org/draft-03/schema#
http://json-schema.org/draft-04/hyper-schema#
Defined in com/github/fge/jsonschema/SchemaVersion.java
http://json-schema.org/draft-04/schema#
http://json-schema.org/draft-03/schema#
http://json-schema.org/draft-04/hyper-schema#
Defined in com/github/fge/jsonschema/SchemaVersion.java
http://my.site/schemas/fstab.json#
Defined in com/github/fge/jsonschema/examples/Example6.java
http://my.site/myschema#
Defined in com/github/fge/jsonschema/examples/Example9.java
http://my.site/myschema#
Defined in com/github/fge/jsonschema/examples/Example8.java
https://json-schema.org/draft/2020-12/schema
https://id.uvci.eu/DGC.combined-schema.json
https://semver.org/
https://ec.europa.eu/health/sites/health/files/ehealth/docs/vaccination-proof_interoperability-guidelines_en.pdf
Defined in dgca/verifier/app/decoder/JsonSchemaKt.java
https://json-schema.org/draft/2020-12/schema
https://id.uvci.eu/DGC.combined-schema.json
https://semver.org/
https://ec.europa.eu/health/sites/health/files/ehealth/docs/vaccination-proof_interoperability-guidelines_en.pdf
Defined in dgca/verifier/app/decoder/JsonSchemaKt.java
https://json-schema.org/draft/2020-12/schema
https://id.uvci.eu/DGC.combined-schema.json
https://semver.org/
https://ec.europa.eu/health/sites/health/files/ehealth/docs/vaccination-proof_interoperability-guidelines_en.pdf
Defined in dgca/verifier/app/decoder/JsonSchemaKt.java
https://json-schema.org/draft/2020-12/schema
https://id.uvci.eu/DGC.combined-schema.json
https://semver.org/
https://ec.europa.eu/health/sites/health/files/ehealth/docs/vaccination-proof_interoperability-guidelines_en.pdf
Defined in dgca/verifier/app/decoder/JsonSchemaKt.java
https://dgca-verifier-service.cfapps.eu10.hana.ondemand.com/
Defined in dgca/verifier/app/android/dcc/di/NetworkModuleKt.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
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
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
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
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
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
Defined in org/slf4j/LoggerFactory.java
http://www.slf4j.org/codes.html#no_static_mdc_binder
http://www.slf4j.org/codes.html#null_MDCA
Defined in org/slf4j/MDC.java
http://www.slf4j.org/codes.html#no_static_mdc_binder
http://www.slf4j.org/codes.html#null_MDCA
Defined in org/slf4j/MDC.java
https://journeyapps.com/
https://github.com/journeyapps/zxing-android-embedded
Defined in Android String Resource
https://journeyapps.com/
https://github.com/journeyapps/zxing-android-embedded
Defined in Android String Resource

Permissions analysis

Information computed with MobSF.

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.
Low android.permission.INTERNET full Internet access
Allows an application to create network sockets.
Low android.permission.NFC control Near-Field Communication
Allows an application to communicate with Near-Field Communication (NFC) tags, cards and readers.
Low android.permission.WAKE_LOCK prevent phone from sleeping
Allows an application to prevent the phone from going to sleep.
Low android.permission.ACCESS_NETWORK_STATE view network status
Allows an application to view the status of all networks.
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.FOREGROUND_SERVICE Allows a regular application to use Service.startForeground.

Threat analysis

Information computed with Quark-Engine.

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%
Connect to a URL and receive input stream from the server
Confidence:
100%
Method reflection
Confidence:
100%
Load class from given class name
Confidence:
100%
Retrieve data from broadcast
Confidence:
100%
Get declared method from given method name
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%
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%
Get last known location of the device
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%
Get the time of current location
Confidence:
100%
Initialize class object dynamically
Confidence:
100%
Connect to a URL and set request method
Confidence:
100%
Get specific method from other Dex files
Confidence:
80%
Start another application from current application
Confidence:
80%
Read data and put it into a buffer stream
Confidence:
80%
Read file and put it into a stream
Confidence:
80%
Read file from assets directory
Confidence:
80%
Get calendar information
Confidence:
80%
Get resource file from res/raw directory

Behavior analysis

Information computed with MobSF.

Base64 decode
       dgca/verifier/app/decoder/UtilKt.java
dgca/verifier/app/android/dcc/security/SecurityKeyWrapper.java
dcc/app/revocation/domain/UtilKt.java
dgca/verifier/app/decoder/ExtensionsKt.java
Base64 encode
       dgca/verifier/app/decoder/UtilKt.java
dgca/verifier/app/android/dcc/security/SecurityKeyWrapper.java
dcc/app/revocation/domain/UtilKt.java
dgca/verifier/app/decoder/ExtensionsKt.java
Certificate handling
       com/sun/mail/util/MailSSLSocketFactory.java
com/nimbusds/jose/util/DefaultResourceRetriever.java
com/sun/mail/util/SocketFetcher.java
Crypto
       com/nimbusds/jose/crypto/impl/AESKW.java
com/nimbusds/jose/crypto/impl/AESCBC.java
com/nimbusds/jose/crypto/impl/DirectCryptoProvider.java
com/nimbusds/jose/crypto/impl/HMAC.java
com/nimbusds/jose/crypto/DirectEncrypter.java
com/nimbusds/jose/crypto/impl/XC20P.java
com/sun/mail/auth/Ntlm.java
com/nimbusds/jose/crypto/impl/RSA_OAEP_SHA2.java
com/nimbusds/jose/crypto/impl/ECDH.java
com/nimbusds/jose/crypto/ECDH1PUEncrypter.java
com/nimbusds/jose/jwk/OctetSequenceKey.java
com/nimbusds/jose/crypto/RSADecrypter.java
com/nimbusds/jose/crypto/impl/ECDH1PUCryptoProvider.java
okio/Buffer.java
com/nimbusds/jose/crypto/factories/DefaultJWSVerifierFactory.java
com/nimbusds/jose/crypto/impl/ConcatKDF.java
okio/ByteString.java
okio/HashingSource.java
com/nimbusds/jose/crypto/ECDHEncrypter.java
dgca/verifier/app/android/dcc/security/SecurityKeyWrapper.java
com/nimbusds/jose/crypto/impl/RSA_OAEP.java
com/nimbusds/jose/crypto/PasswordBasedEncrypter.java
okio/HashingSink.java
com/nimbusds/jose/crypto/MACSigner.java
com/nimbusds/jose/crypto/impl/AESGCM.java
com/nimbusds/jose/crypto/impl/AESCryptoProvider.java
com/nimbusds/jose/crypto/impl/ECDH1PU.java
com/nimbusds/jose/crypto/factories/DefaultJWEDecrypterFactory.java
com/nimbusds/jose/crypto/impl/CipherHelper.java
com/nimbusds/jose/jwk/SecretJWK.java
COSE/Recipient.java
com/nimbusds/jose/crypto/RSAEncrypter.java
com/nimbusds/jose/crypto/impl/CompositeKey.java
com/nimbusds/jose/crypto/ECDH1PUX25519Encrypter.java
dgca/verifier/app/android/dcc/security/DefaultKeyStoreCryptor.java
COSE/MacCommon.java
com/nimbusds/jose/crypto/DirectDecrypter.java
com/nimbusds/jose/crypto/MACVerifier.java
com/nimbusds/jose/crypto/impl/LegacyConcatKDF.java
com/nimbusds/jose/crypto/impl/MACProvider.java
com/nimbusds/jose/crypto/AESDecrypter.java
okio/SegmentedByteString.java
com/nimbusds/jose/crypto/impl/AESGCMKW.java
com/nimbusds/jose/crypto/AESEncrypter.java
com/nimbusds/jose/crypto/impl/ContentCryptoProvider.java
com/nimbusds/jose/crypto/impl/PBKDF2.java
com/nimbusds/jose/crypto/impl/LegacyAESGCM.java
com/nimbusds/jose/proc/JWSVerificationKeySelector.java
com/nimbusds/jose/crypto/impl/RSA1_5.java
com/nimbusds/jose/jca/JCASupport.java
com/nimbusds/jose/util/KeyUtils.java
com/nimbusds/jose/proc/JWEDecryptionKeySelector.java
com/nimbusds/jose/crypto/impl/ECDHCryptoProvider.java
COSE/EncryptCommon.java
com/nimbusds/jose/jwk/source/ImmutableSecret.java
Get system service
       dagger/hilt/android/internal/managers/ViewComponentManager.java
dgca/verifier/app/android/inputrecognizer/nfc/NfcFragment.java
com/journeyapps/barcodescanner/RotationListener.java
com/journeyapps/barcodescanner/CameraPreview.java
Http connection
       com/nimbusds/jose/util/DefaultResourceRetriever.java
Https connection
       com/nimbusds/jose/util/DefaultResourceRetriever.java
Inter process communication
       dgca/verifier/app/android/inputrecognizer/InputRecognizerFragmentKt.java
hilt_aggregated_deps/_dgca_verifier_app_android_inputrecognizer_intent_IntentFragment_GeneratedInjector.java
dagger/hilt/android/internal/lifecycle/DefaultViewModelFactories.java
dgca/verifier/app/android/ui/settings/SettingsFragment.java
dgca/verifier/app/android/ui/MainFragmentDirections.java
dgca/verifier/app/android/dcc/DccProcessor.java
dgca/verifier/app/android/vc/VcProcessor.java
dgca/verifier/app/android/dcc/settings/DccSettingsFragment.java
dgca/verifier/app/android/ui/DgcaApplication_HiltComponents.java
dgca/verifier/app/android/ui/DaggerDgcaApplication_HiltComponents_SingletonC.java
dgca/verifier/app/android/databinding/FragmentIntentBinding.java
dgca/verifier/app/android/ProtocolHandler.java
dgca/verifier/app/android/inputrecognizer/intent/IntentFragmentDirections.java
j$/time/format/DateTimeFormatter.java
dgca/verifier/app/android/icao/IcaoProcessor.java
dgca/verifier/app/android/divoc/ui/DivocActivity.java
dgca/verifier/app/android/inputrecognizer/intent/IntentFragment_GeneratedInjector.java
dgca/verifier/app/android/protocolhandler/ProtocolHandlerViewModel.java
com/journeyapps/barcodescanner/DecoratedBarcodeView.java
dgca/verifier/app/android/dcc/ui/verification/detailed/DetailedVerificationResultDialogFragment.java
com/app/shc/ShcProcessor.java
dgca/verifier/app/android/icao/ui/IcaoActivity.java
dgca/verifier/app/android/vc/ui/VcActivity.java
dgca/verifier/app/android/inputrecognizer/nfc/NfcFragment.java
dgca/verifier/app/android/inputrecognizer/InputRecognizerFragment.java
dgca/verifier/app/android/protocolhandler/ProtocolHandlerDialogFragment.java
dgca/verifier/app/android/divoc/DivocProcessor.java
com/journeyapps/barcodescanner/CaptureManager.java
dgca/verifier/app/android/ui/settings/SettingsAdapter.java
dgca/verifier/app/android/inputrecognizer/intent/IntentFragmentArgs.java
dgca/verifier/app/android/protocolhandler/ProtocolHandlerViewModel$init$1.java
com/journeyapps/barcodescanner/CaptureActivity.java
dgca/verifier/app/android/dcc/ui/DccActivity.java
dgca/verifier/app/android/inputrecognizer/intent/Hilt_IntentFragment.java
dgca/verifier/app/android/ui/MainActivity.java
dgca/verifier/app/android/inputrecognizer/intent/IntentFragment.java
dgca/verifier/app/android/DefaultProtocolHandler.java
Java reflection
       com/fasterxml/jackson/databind/ext/Java7Handlers.java
com/fasterxml/jackson/databind/deser/impl/FieldProperty.java
org/slf4j/helpers/SubstituteLogger.java
com/nimbusds/jose/shaded/asm/DynamicClassLoader.java
com/fasterxml/jackson/databind/introspect/AnnotatedField.java
com/jayway/jsonpath/spi/mapper/JakartaMappingProvider.java
com/fasterxml/jackson/databind/deser/impl/SetterlessProperty.java
com/fasterxml/jackson/databind/introspect/AnnotatedFieldCollector.java
com/fasterxml/jackson/databind/deser/std/StdKeyDeserializer.java
com/fasterxml/jackson/databind/deser/impl/MethodProperty.java
com/nimbusds/jose/shaded/asm/FieldFilter.java
j$/util/DesugarCollections.java
net/minidev/json/JSONUtil.java
com/nimbusds/jose/shaded/asm/BasicFiledFilter.java
retrofit2/RequestFactory.java
com/fasterxml/jackson/databind/type/TypeFactory.java
retrofit2/Utils.java
com/sun/mail/util/SocketFetcher.java
net/minidev/asm/DynamicClassLoader.java
com/fasterxml/jackson/databind/introspect/VirtualAnnotatedMember.java
org/objectweb/asm/Type.java
com/fasterxml/jackson/databind/ext/Java7Support.java
joptsimple/internal/Reflection.java
okio/ByteString.java
com/fasterxml/jackson/databind/introspect/MemberKey.java
com/fasterxml/jackson/databind/introspect/AnnotatedMethodCollector.java
com/nimbusds/jose/shaded/asm/BeansAccessBuilder.java
com/fasterxml/jackson/databind/util/ClassUtil.java
com/fasterxml/jackson/databind/introspect/JacksonAnnotationIntrospector.java
com/nimbusds/jose/shaded/ow2asm/ClassWriter.java
javax/mail/Session.java
com/nimbusds/jose/shaded/asm/ASMUtil.java
com/fasterxml/jackson/databind/ser/BeanPropertyWriter.java
net/minidev/asm/BasicFiledFilter.java
com/fasterxml/jackson/databind/introspect/VisibilityChecker.java
com/nimbusds/jose/shaded/json/JSONUtil.java
com/fasterxml/jackson/databind/jdk14/JDK14Util.java
retrofit2/KotlinExtensions.java
org/joda/time/DateTimeZone.java
net/minidev/asm/FieldFilter.java
retrofit2/ParameterHandler.java
com/fasterxml/jackson/databind/introspect/AnnotatedCreatorCollector.java
org/objectweb/asm/ClassWriter.java
com/fasterxml/jackson/databind/introspect/BasicBeanDescription.java
net/minidev/asm/Accessor.java
com/nimbusds/jose/shaded/ow2asm/Type.java
com/nimbusds/jose/shaded/asm/Accessor.java
com/fasterxml/jackson/databind/introspect/AnnotatedMethod.java
com/fasterxml/jackson/databind/BeanDescription.java
j$/util/concurrent/DesugarUnsafe.java
net/minidev/asm/ASMUtil.java
com/jayway/jsonpath/spi/mapper/GsonMappingProvider.java
com/upokecenter/cbor/PropertyMap.java
retrofit2/Retrofit.java
retrofit2/Invocation.java
j$/time/zone/ZoneRulesProvider.java
retrofit2/Platform.java
com/sun/mail/util/MimeUtil.java
retrofit2/HttpServiceMethod.java
net/minidev/json/reader/BeansWriter.java
com/fasterxml/jackson/databind/ext/OptionalHandlerFactory.java
joptsimple/internal/MethodInvokingValueConverter.java
com/fasterxml/jackson/core/util/VersionUtil.java
net/minidev/asm/BeansAccessBuilder.java
com/fasterxml/jackson/databind/introspect/AnnotatedMethodMap.java
retrofit2/ServiceMethod.java
com/fasterxml/jackson/databind/deser/std/StdKeyDeserializers.java
com/fasterxml/jackson/databind/introspect/MethodGenericTypeResolver.java
com/nimbusds/jose/shaded/json/reader/BeansWriter.java
Local file i/o operations
       dgca/verifier/app/android/dcc/data/local/PreferencesImpl.java
dcc/app/revocation/data/LongPreference.java
dcc/app/revocation/di/RevocationNetworkModule.java
com/journeyapps/barcodescanner/CaptureManager.java
dgca/verifier/app/android/vc/data/local/VcPreferencesImpl.java
dgca/verifier/app/android/vc/di/VcNetworkModule.java
dcc/app/revocation/data/StringPreference.java
dgca/verifier/app/android/dcc/data/local/LongPreference.java
dgca/verifier/app/android/dcc/data/local/StringSetPreference.java
dgca/verifier/app/android/dcc/ui/verification/detailed/DetailedVerificationResultDialogFragment.java
dgca/verifier/app/android/vc/data/local/StringPreference.java
dgca/verifier/app/android/dcc/di/NetworkModule.java
dgca/verifier/app/android/vc/data/local/LongPreference.java
dcc/app/revocation/data/RevocationPreferencesImpl.java
dgca/verifier/app/android/dcc/data/local/StringPreference.java
Message digest
       com/nimbusds/jose/crypto/impl/ConcatKDF.java
net/i2p/crypto/eddsa/spec/EdDSAPrivateKeySpec.java
okio/ByteString.java
okio/HashingSource.java
dgca/verifier/app/android/dcc/utils/ExtenssionsKt.java
dcc/app/revocation/domain/UtilKt.java
net/i2p/crypto/eddsa/spec/EdDSAParameterSpec.java
dgca/verifier/app/decoder/ExtensionsKt.java
dgca/verifier/app/android/dcc/data/VerifierRepositoryImpl.java
com/nimbusds/jose/jwk/ThumbprintUtils.java
com/nimbusds/jose/jwk/RSAKey.java
okio/HashingSink.java
dcc/app/revocation/validation/bloom/BloomFilterImpl.java
okio/Buffer.java
com/nimbusds/jose/crypto/impl/LegacyConcatKDF.java
net/i2p/crypto/eddsa/EdDSAEngine.java
com/nimbusds/jose/jwk/ECKey.java
com/nimbusds/jose/util/X509CertUtils.java
okio/SegmentedByteString.java
Starting activity
       dgca/verifier/app/android/inputrecognizer/InputRecognizerFragmentKt.java
dgca/verifier/app/android/ui/settings/SettingsFragment.java
dgca/verifier/app/android/dcc/ui/verification/detailed/DetailedVerificationResultDialogFragment.java
dgca/verifier/app/android/dcc/settings/DccSettingsFragment.java
Tcp socket
       dgca/verifier/app/android/dcc/data/BaseRepository$execute$2.java
okio/SocketAsyncTimeout.java
okio/Okio__JvmOkioKt.java
com/sun/mail/util/MailSSLSocketFactory.java
dgca/verifier/app/android/vc/network/GeneralErrorHandlerImpl.java
dcc/app/revocation/data/GeneralErrorHandlerImpl.java
okio/DeprecatedOkio.java
com/sun/mail/util/SocketFetcher.java
okio/Okio.java
com/sun/mail/util/WriteTimeoutSocket.java

Control flow graphs analysis

Information computed by Pithus.

The application probably uses cryptography

The application probably plays sound

The application probably starts another application

The application probably creates an accessibility service