Malicious
2
/65

Threat

com.mwr.dz

drozer Agent

Analyzed on 2022-11-24T16:01:29.672376

1

permissions

6

activities

3

services

1

receivers

0

domains

File sums

MD5 6e6ba57a704c5a0895ac9a152d4cc399
SHA1 8d928d13ac153f7733aaa833f10e46ccd19d542b
SHA256 dd75b4a4e6c296cb0f95d86b40b4de62acc8043537bf5b983d3a76c569d85741
Size 0.6MB

APKiD

Information computed with APKiD.

/tmp/tmp2y2apoe2!classes.dex
anti_vm
  • Build.MANUFACTURER check
manipulator
  • dexmerge
compiler
  • dx (possible dexmerge)

SSdeep

Information computed with ssdeep.

APK file 12288:A23rj4SWMhvxOX+7uXwdPsMVv4J2D4OOSPAjCmLX6nXwz+pG:tnjxSXMFVv4J2PPZmOnXwh
Manifest 48:u7lFJvTBkpzjulyPlold8BvJyfCDNVGlZ0JbfYzlR3lS3Hpqs3uQ8IxKG4vO86St:s…
classes.dex 12288:2o7qJHU28tnKtEb+Q3+D5lK726ODCGUEb5t8jcPWFUNXpZgp3iJ7x8vrd6HbVbw…

Dexofuzzy

Information computed with Dexofuzzy.

APK file 768:HvB98Jv7dAatplYIel+tv/v/v/v/vcvvvGtVvx+4gaWnv/v/v/vmvvnINvBl1Ove:…
classes.dex 768:HvB98Jv7dAatplYIel+tv/v/v/v/vcvvvGtVvx+4gaWnv/v/v/vmvvnINvBl1Ove:…

APK details

Information computed with AndroGuard and Pithus.

Package com.mwr.dz
App name drozer Agent
Version name 2.3.4
Version code 5
SDK 7 - 18
UAID a8d7105d7856bd8f26532b81f00a00740955dbcb
Signature Signature V1
Frosting Not frosted

Certificate details

Information computed with AndroGuard.

MD5 77d341b60e111ffe781a0cebf13dc55d
SHA1 89b44e2e197847d62fed8219d682cc14fa4f9cdb
SHA256 049843d8c87111884267bebda4ba890a35d9b6790f396d6482789117e133a1ea
Issuer Common Name: Android Debug, Organization: Android, Country: US
Not before 2013-07-28T08:56:01+00:00
Not after 2043-07-21T08:56:01+00:00

File Analysis

Information computed with MobSF.

Findings Files
Hardcoded Keystore found. res/raw/agent.bks
res/raw/ca.bks

Manifest analysis

Information computed with MobSF.

High Debug Enabled For App[android:debuggable=true]
Debugging was enabled on the app which makes it easier for reverse engineers to hook a debugger to it. This allows dumping a stack trace and accessing debugging helper classes.
High Broadcast Receiver (.receivers.Receiver) 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.

Main Activity

Information computed with AndroGuard.

com.mwr.dz.activities.MainActivity

Activities

Information computed with AndroGuard.

com.mwr.dz.activities.AboutActivity
com.mwr.dz.activities.MainActivity
com.mwr.dz.activities.EndpointActivity
com.mwr.dz.activities.EndpointSettingsActivity
com.mwr.dz.activities.ServerActivity
com.mwr.dz.activities.SettingsActivity

Receivers

Information computed with AndroGuard.

com.mwr.dz.receivers.Receiver

Services

Information computed with AndroGuard.

com.mwr.dz.services.ClientService
com.mwr.dz.services.ServerService
com.mwr.dz.services.SessionService

Sample timeline

Certificate valid not before July 28, 2013, 8:56 a.m.
Oldest file found in APK March 12, 2015, 12:19 p.m.
Latest file found in APK March 12, 2015, 12:20 p.m.
First submission on VT March 28, 2015, 8:19 a.m.
Last submission on VT Oct. 21, 2022, 9:05 p.m.
Upload on Pithus Nov. 24, 2022, 4:01 p.m.
Certificate valid not after July 21, 2043, 8:56 a.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_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.2 The application implement HTTPS using TLS.
HTTPS Protocol
FCS_HTTPS_EXT.1.3 The application notify the user and not establish the connection or request application authorization to establish the connection if the peer certificate is deemed invalid.
HTTPS Protocol
FIA_X509_EXT.1.1 The application invoked platform-provided functionality to validate certificates in accordance with the following rules: ['The certificate path must terminate with a trusted CA certificate'].
X.509 Certificate Validation
FIA_X509_EXT.2.1 The application use X.509v3 certificates as defined by RFC 5280 to support authentication for HTTPS , TLS.
X.509 Certificate Authentication

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/mwr/jdiesel/api/links/Server.java
com/mwr/dz/models/EndpointManager.java
com/mwr/dz/services/ServerService.java
com/mwr/jdiesel/api/transport/SocketTransport.java
com/mwr/jdiesel/api/links/Link.java
com/mwr/dz/Agent.java
com/mwr/dz/services/ClientService.java
com/mwr/jdiesel/connection/AbstractConnection.java
com/mwr/jdiesel/api/connectors/Endpoint.java
com/mwr/dz/service_connectors/ClientServiceConnection.java
Medium
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/mwr/dz/models/EndpointManager.java
Medium
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/mwr/jdiesel/util/Verify.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:
 com/mwr/jdiesel/api/connectors/Server.java
com/mwr/jdiesel/api/connectors/Endpoint.java

Permissions analysis

Information computed with MobSF.

Low android.permission.INTERNET full Internet access
Allows an application to create network sockets.

Threat analysis

Information computed with Quark-Engine.

Confidence:
100%
Run shell script programmably
Confidence:
100%
Method reflection
Confidence:
100%
Retrieve data from broadcast
Confidence:
100%
Read sensitive data(SMS, CALLLOG, etc)
Confidence:
100%
Monitor the broadcast action events (BOOT_COMPLETED)
Confidence:
100%
Method reflection
Confidence:
80%
Executes the specified string Linux command

Behavior analysis

Information computed with MobSF.

Android notifications
       com/mwr/common/android/app/NotifyingService.java
Execute os command
       com/mwr/jdiesel/util/Shell.java
Get system service
       com/mwr/common/android/app/NotifyingService.java
Inter process communication
       com/mwr/dz/activities/SettingsActivity.java
com/mwr/dz/service_connectors/ServerServiceConnection.java
com/mwr/dz/receivers/Receiver.java
com/mwr/dz/service_connectors/SessionServiceConnection.java
com/mwr/dz/services/ServerService.java
com/mwr/dz/services/ClientService.java
com/mwr/dz/activities/EndpointActivity.java
com/mwr/dz/services/SessionService.java
com/mwr/dz/activities/EndpointSettingsActivity.java
com/mwr/common/android/app/NotifyingService.java
com/mwr/dz/service_connectors/ClientServiceConnection.java
com/mwr/dz/services/ConnectorService.java
com/mwr/dz/activities/MainActivity.java
Java reflection
       com/mwr/jdiesel/reflection/Reflector.java
Loading native code (shared library)
       com/mwr/jdiesel/util/Strings.java
Local file i/o operations
       com/mwr/dz/service_connectors/ServerServiceConnection.java
com/mwr/dz/Agent.java
com/mwr/dz/models/ServerSettings.java
Message digest
       com/mwr/jdiesel/util/Verify.java
com/mwr/common/tls/X509Fingerprint.java
Starting activity
       com/mwr/dz/activities/SettingsActivity.java
com/mwr/dz/activities/MainActivity.java
Starting service
       com/mwr/dz/service_connectors/ServerServiceConnection.java
com/mwr/dz/receivers/Receiver.java
com/mwr/dz/service_connectors/SessionServiceConnection.java
com/mwr/dz/services/ServerService.java
com/mwr/dz/services/ClientService.java
com/mwr/dz/service_connectors/ClientServiceConnection.java
com/mwr/dz/services/SessionService.java
Tcp server socket
       com/mwr/jdiesel/api/links/Server.java
com/mwr/jdiesel/api/connectors/ServerSocketFactory.java
Tcp socket
       com/mwr/jdiesel/api/links/Server.java
com/mwr/jdiesel/api/links/Client.java
com/mwr/jdiesel/api/transport/SocketTransport.java
com/mwr/jdiesel/api/connectors/EndpointSocketFactory.java
com/mwr/jdiesel/connection/AbstractConnection.java

Control flow graphs analysis

Information computed by Pithus.

The application probably opens socket

The application probably dynamically loads code

The application probably executes OS commands