Skip to content

MASTG-TEST-0221: Broken Symmetric Encryption Algorithms

Overview

To test for the use of broken encryption algorithms in Android apps, we need to focus on methods from cryptographic frameworks and libraries that are used to perform encryption and decryption operations.

Some broken symmetric encryption algorithms include:

Android also provides additional guidance on broken cryptographic algorithms.

Steps

  1. Use Reverse Engineering Android Apps to reverse engineer the app.
  2. Use Static Analysis on Android to look for the relevant APIs.

Observation

The output should contain a list of locations where insecure symmetric encryption algorithms are used.

Evaluation

The test case fails if you can find insecure or deprecated encryption algorithms being used.

Further Validation Required:

Inspect each reported code location using Reviewing Decompiled Java Code to determine whether the algorithm is used in a security-relevant context to protect sensitive data.

Best Practices

MASTG-BEST-0009: Use Secure Encryption Algorithms

Demos

MASTG-DEMO-0022: Uses of Broken Symmetric Encryption Algorithms in Cipher with semgrep