Tuesday, December 17, 2024
HomeAndroidAndroid Application Penetration Testing - Part 1

Android Application Penetration Testing – Part 1

Published on

SIEM as a Service

Android security testing is more often used by security industries to test the vulnerabilities in Android applications.

After web applications, the more concern area is mobile application penetration test Let’s start with some basics.

Also, we recommend you take the best Android Hacking and Penetration Testing Course online to enhance your Android hacking skills.

- Advertisement - SIEM as a Service

The basic architecture for Android device

Linux kernel

For hardware, we always required drivers as software so that that hardware can smoothly work.

We choose the Linux kernel because it has Security features like

  • A user-based permissions model
  • Process isolation
  • The extensible mechanism for secure IPC
  • The ability to remove unnecessary and potentially insecure parts of the kernel

The hardware Abstraction Layer just gives Applications direct access to the Hardware resources.

Bluetooth, audio, and radio are examples

Android Application Penetration Testing

On top of the Hardware Abstraction Layer sits a layer that contains some of the most important and

Useful libraries are as follows:

  • Surface Manager: This manages the windows and screens
  • Media Framework: This allows the use of various types of codecs for the playback and recording of different media
  • SQLite: This is a lighter version of SQL used for database management
  • WebKit: This is the browser rendering engine
  • OpenGL: This is used to render 2D and 3D contents on the screen properly the libraries in Android are written in C and C++

Dalvik Virtual Machine which is specifically designed by Android Open Source Project to execute applications written for Android. Each app running on the Android Device has its own Dalvik Virtual Machine.

Android Runtime (ART) is an alternative to Dalvik Virtual Machine which has been released with Android 4.4 as an experimental release, in Android Lollipop (5.0) it will completely replace Dalvik Virtual Machine.

A major change in ART is because of the ahead-of-time (AOT) Compilation and Garbage Collection.

In Ahead-of-time(AOT) Compilation, Android apps will be compiled when a

In Ahead-of-time(AOT) Compilation, Android apps will be compiled when a user installs them on their device whereas in the Dalvik used Just-in-time(JIT) compilation in which bytecode is compiled when the user runs the app.

Moving to the last one, these are common. From Android Version 4.4, there is also the availability of another runtime called Android Runtime (ART), and the user is free to switch between the DVM and the ART Runtime environments

Application Framework

The Application Framework layer provides many higher-level services to applications in the form of Java classes.

Application developers are allowed to make use of these services in their applications.

Android Application Penetration Testing

The Android framework includes the following key services

Activity Manager– application lifecycle and stack are controlled by the activity manager

Content Provider

The content provider component supplies data from one application to others on request.

You can store the data in the file system, an SQLite database, on the web, or any other persistent storage location your app can access.

Through the content provider, other apps can query or even modify the data (if the content provider allows it).

Content Provider is useful in cases when an app wants to share data with another app.

Resource Manager – Provides access to non-code embedded resources such as strings, color settings, and user interface layouts.

Notifications Manager – Allows applications to display alerts and notifications to the user.

View System – An extensible set of views used to create application user interfaces.

Package Manager – The system by which applications are able to find out information about other applications currently installed on the device.

Telephony Manager – Provides information to the application about the telephony services available on the device such as status and subscriber information.

Location Manager – Provides access to the location services allowing an application to receive updates about location changes.

Applications

Located at the top of the Android software stack are the applications.

These comprise both the native applications provided with the particular Android implementation (for example web browser and email applications) and the third-party applications installed by the user after purchasing the device.

Typical applications include Camera, Alarm, Clock, Calculator, Contacts, Calendar, Media Player, and so forth.

Gurubaran
Gurubaran
Gurubaran is a co-founder of Cyber Security News and GBHackers On Security. He has 10+ years of experience as a Security Consultant, Editor, and Analyst in cybersecurity, technology, and communications.

Latest articles

The Rise of AI-Generated Professional Headshots

It’s clear that a person’s reputation is increasingly influenced by their online presence, which...

Hackers Abuse Google Ads To Attacking Graphic Design Professionals

Researchers identified a threat actor leveraging Google Search ads to target graphic design professionals,...

Hackers Using New IoT/OT Malware IOCONTROL To Control IP Cameras, Routers, PLCs, HMIs And Firewalls

Recent cyberattacks targeting critical infrastructure, including fuel management systems and water treatment facilities in...

Hackers Exploiting Apache Struts2 Vulnerability to Upload Malicious Payloads

Hackers have begun exploiting a newly discovered vulnerability in Apache Struts2, a widely used...

API Security Webinar

72 Hours to Audit-Ready API Security

APIs present a unique challenge in this landscape, as risk assessment and mitigation are often hindered by incomplete API inventories and insufficient documentation.

Join Vivek Gopalan, VP of Products at Indusface, in this insightful webinar as he unveils a practical framework for discovering, assessing, and addressing open API vulnerabilities within just 72 hours.

Discussion points

API Discovery: Techniques to identify and map your public APIs comprehensively.
Vulnerability Scanning: Best practices for API vulnerability analysis and penetration testing.
Clean Reporting: Steps to generate a clean, audit-ready vulnerability report within 72 hours.

More like this

Hackers Abuse Google Ads To Attacking Graphic Design Professionals

Researchers identified a threat actor leveraging Google Search ads to target graphic design professionals,...

Antidot Malware Attacking Employees Android Devices To Inject Malicious Payloads

Researchers discovered a new variant of the AntiDot banking trojan targeting Android mobile devices...

New Chinese Surveillance Tool Attack Android Users Since 2017

Wuhan Chinasoft Token Information Technology Co., Ltd. developed EagleMsgSpy, a surveillance tool operational since...