Cyber Security News

Android Zygote Injection Flaw Lets Attackers Execute Code & Gain Elevated Privileges

A significant vulnerability in the Android operating system, identified as CVE-2024-31317, has been discovered, allowing attackers to exploit the Zygote process for system-wide code execution and privilege escalation.

This flaw affects devices running Android 11 or older, highlighting a critical security risk in the Android ecosystem.

Background and Vulnerability Details

The Zygote process is a foundational component of Android, responsible for spawning new application and system-level processes.

It runs with system privileges, making it a prime target for attackers seeking elevated access.

Zygote Injection Flaw Zygote Injection Flaw
A high-level overview of the Android boot process

The vulnerability arises from how the System Server handles the hidden_api_blacklist_exemptions setting, which allows certain apps to bypass Android’s hidden API restrictions.

Specifically, the System Server does not properly escape newlines in this setting when passing it to Zygote, enabling attackers to inject arbitrary commands into the Zygote process.

Exploitation via ADB Shell

Attackers can exploit this vulnerability using the Android Debug Bridge (ADB) Shell, which possesses the necessary WRITE_SECURE_SETTINGS permission to modify the hidden_api_blacklist_exemptions setting.

Zygote Injection Flaw Zygote Injection Flaw
The vulnerable portion of the Android System Server source code.

By injecting malicious commands into this setting, attackers can execute arbitrary code with system-wide privileges.

A proof-of-concept exploit demonstrates how to escalate privileges from the shell user to the system user by injecting a payload that spawns a new process with elevated permissions.

According to the researchers, this process can be configured to execute commands such as launching a persistent shell, allowing attackers to maintain control over the device.

Exploiting this vulnerability can lead to severe consequences, including potential device bootloops if the exploit is not properly cleaned up.

To mitigate these risks, users can restore normal Zygote behavior by deleting the modified hidden_api_blacklist_exemptions setting via ADB Shell and then rebooting the device.

However, this action will also remove any injected payloads, requiring attackers to repeat the exploitation process to regain elevated access.

The discovery of this vulnerability underscores the importance of securing Android’s core processes and highlights the need for prompt patches to protect against such exploits.

Are you from SOC/DFIR Teams? – Analyse Malware Incidents & get live Access with ANY.RUN -> Start Now for Free.

Aman Mishra

Aman Mishra is a Security and privacy Reporter covering various data breach, cyber crime, malware, & vulnerability.

Recent Posts

BFDOOR Malware Targets Organizations to Establish Long-Term Persistence

The BPFDoor malware has emerged as a significant threat targeting domestic and international organizations, particularly…

3 hours ago

Uncovering the Security Risks of Data Exposure in AI-Powered Tools like Snowflake’s CORTEX

As artificial intelligence continues to reshape the technological landscape, tools like Snowflake’s CORTEX Search Service…

3 hours ago

UNC3944 Hackers Shift from SIM Swapping to Ransomware and Data Extortion

UNC3944, a financially-motivated threat actor also linked to the group known as Scattered Spider, has…

3 hours ago

Over 2,800 Hacked Websites Targeting MacOS Users with AMOS Stealer Malware

Cybersecurity researcher has uncovered a massive malware campaign targeting MacOS users through approximately 2,800 compromised…

3 hours ago

Hackers Bypass AI Filters from Microsoft, Nvidia, and Meta Using a Simple Emoji

Cybersecurity researchers have uncovered a critical flaw in the content moderation systems of AI models…

4 hours ago

Microsoft Alerts That Default Helm Charts May Expose Kubernetes Apps to Data Leaks

Microsoft’s cybersecurity research team has issued a stark warning about the risks of using default…

4 hours ago