Get Started with Corellium Café

Whether you're a seasoned professional or an aspiring ethical hacker, Corellium Cafe offers various vulnerabilities, including local storage weaknesses, network vulnerabilities, app misconfigurations, and even advanced attacks requiring runtime manipulation. With Corellium Cafe at your fingertips, get ready to dive deep into the exciting world of mobile app vulnerabilities and unlock new levels of expertise. Let's embark on a thrilling journey of learning and exploration together.

Setup and Configuration

You have now been provided with the Corellium Café APK file (Android Package Kit), which must be installed within a Corellium device. Let’s start with getting the device built and running and then installing the application.

From the Corellium main page (after login), select the “Create Device” button. Once selected, proceed with creating a “Generic Android” device.

For the Corellium Café application, ensure you create an Android device with a minimum of Android 12.

 Once your device is created and booted up, you can navigate to the “Apps” tab within the platform to install the provided Café APK.

Picture1-4

Drag the APK to the app's window (similar to above) or click the “Install App” button.

DISCLAIMER: While this application does try to replicate functionality, you see in public applications, DO NOT enter valid credit card details when navigating through the application. Always utilize spoofed information.

Content

01 Local Storage Vulnerabilities

Hardcoded Login Credentials

The Corellium Café application can log in or continue as a guest when launched. The login credentials for the application are hardcoded within the “Strings.xml” file.

Note: Logging in does not change the interface; this is used to show various vulnerabilities.

To solve this vulnerability, we will need to decompile the Android APK and find the “Strings.xml” file.

apktool d Corellium_Cafe.apk

Once the application is decompiled, navigate to the folder and follow the below path to find “Strings.xml”

corellium_Cafe/res/values/strings.xml

Picture2-4

Alternatively, if you have JADX installed, you can open the APK with JADX and navigate the above file path to see the same contents.

jadx-gui Corellium_Cafe.apk

Shared Preferences – Customer Data

In order to find the sensitive data within Shared Preferences and the next couple of vulnerabilities, you will have to navigate through the full application flow (add items to your cart and proceed through the checkout process).

Once you have done that, the first place to find sensitive data is within the Shared Preferences. Navigate to the following path (Application Data Directory)

/data/data/com.corellium.cafe/shared_prefs/

Within this directory, there is a file called “Customer Data.xml” which contains some personal information which was gathered during your coffee purchase (name, phone number, etc.)

Picture3-4

 

Database (Sensitive)

The Corellium Café application creates a database that contains sensitive values (Credit Card Data).

Navigate to the Android data directory and the databases folder within.

/data/data/com.corellium.cafe/databases/

Once you are in this directory, you will notice a database file, “Customer_Payment”

Picture4-4

Using a database viewer (DB Browser, etc) and downloading the database file locally, you can review the contents in plain text.

The “Customer_Payment” database will contain all credit card data used within the application since it was installed.

Picture5-4