What Happened
Google's Android Package Installer contains a side-channel information disclosure vulnerability (CVE-2023-21324) that allows attackers to determine whether specific applications are installed on a device — without requiring any query permissions. This might sound like a minor issue, but it's a critical stepping stone for privilege escalation attacks.
The vulnerability exists because the Package Installer responds differently to installation requests depending on whether an app is already installed. An attacker can exploit this timing or error-response difference to enumerate all installed applications on a target device, then use that information to launch targeted privilege escalation attacks. The flaw requires no additional execution privileges and zero user interaction — making it a perfect reconnaissance tool for sophisticated attackers.
Originally reported to NIST NVD, this vulnerability affects multiple Android versions and has been actively exploited in the wild. The issue was patched in Android security updates released in early 2023, but many devices—particularly in India where device update adoption lags—remain vulnerable.
Why This Matters for Indian Businesses
If you run an Indian SMB, you might be thinking: "This is an Android vulnerability. Why should I care?" Here's why it matters deeply:
First, your employees use Android devices. Whether they're accessing company email, banking apps, or internal tools via mobile, this vulnerability puts their devices—and by extension, your business data—at risk. An attacker who can enumerate installed apps can identify security tools, banking applications, or VPN clients, then craft targeted attacks to bypass them.
Second, India's regulatory environment is tightening. The Digital Personal Data Protection (DPDP) Act, 2023 now requires businesses to implement reasonable security measures to protect personal data. If employee devices are compromised due to unpatched vulnerabilities, and customer data leaks as a result, you're liable. The DPDP Act doesn't just fine you—it can result in penalties up to ₹250 crores and criminal prosecution.
Third, CERT-In's mandatory reporting requirement means you have just 6 hours to report a breach to India's Computer Emergency Response Team. If attackers use this vulnerability to steal data from your employees' devices, you're racing against the clock.
In my years building enterprise systems, I've seen this exact pattern: attackers start with reconnaissance (like enumerating installed apps), then escalate privileges, then exfiltrate data. What looks like a minor information leak becomes a full breach in hours.
Technical Breakdown
Let's understand how this attack actually works:
The Side-Channel Attack Flow
graph TD
A[Attacker queries Package Manager] -->|Request to install App X| B{Is App X installed?}
B -->|App exists| C[Fast response/specific error]
B -->|App doesn't exist| D[Different response/error code]
C -->|Timing difference detectable| E[Attacker learns App X is installed]
D -->|Timing difference detectable| F[Attacker learns App X is NOT installed]
E -->|Enumerate all apps| G[Build profile of device]
F -->|Enumerate all apps| G
G -->|Target weakness| H[Craft privilege escalation attack]
H -->|Exploit known vuln in installed app| I[Local privilege escalation]
I -->|Access sensitive data| J[Data exfiltration]How the Vulnerability Works
The Package Installer is a system service that handles app installation. Normally, you need the QUERY_ALL_PACKAGES permission to enumerate installed apps. But this vulnerability creates a side channel—an unintended way to extract the same information.
Here's the technical mechanism:
- The attacker sends a crafted installation request for an app they control
- The Package Installer processes the request and checks if the target app is already installed
- The response differs based on whether the app exists:
- The attacker measures the timing/error difference and infers app installation status
- Repeat for hundreds of apps to build a complete inventory
Practical Example: Detecting Installed Apps
Here's a simplified example of how an attacker might exploit this (for educational purposes only):
// Vulnerable code pattern in Android Package Installer
public boolean isAppInstalled(String packageName) {
try {
// This check leaks information via side channel
PackageInfo info = getPackageManager().getPackageInfo(packageName, 0);
return true; // App is installed
} catch (PackageManager.NameNotFoundException e) {
return false; // App is NOT installed
}
}
// An attacker can call this repeatedly and measure response times:
long startTime = System.nanoTime();
boolean installed = isAppInstalled("com.example.banking");
long endTime = System.nanoTime();
// Different response times = information leak
if ((endTime - startTime) > THRESHOLD) {
Log.d("Recon", "Banking app is installed on this device");
}The fix requires the Package Installer to normalize response times and return consistent error messages regardless of whether an app is installed. Google's patch ensures that the system doesn't leak timing information.
Know your vulnerabilities before attackers do
Run a free VAPT scan — takes 5 minutes, no signup required.
Book Your Free ScanHow to Protect Your Business
| Protection Layer | Action | Difficulty |
|---|---|---|
| Device Updates | Ensure all employee Android devices run latest security patches (Android 13+) | Easy |
| Mobile Device Management (MDM) | Deploy MDM solution to enforce patch compliance and app whitelisting | Medium |
| App Permissions Audit | Review installed apps and disable unnecessary ones that might be targeted | Easy |
| Network Segmentation | Isolate mobile devices from sensitive internal systems via VPN/firewall | Medium |
| Employee Training | Educate team on risks of sideloading apps and using unpatched devices | Easy |
| Vulnerability Scanning | Regularly scan devices for known CVEs using mobile security tools | Medium |
| Data Classification | Restrict sensitive data access from mobile devices | Hard |
Immediate Actions (Do These Today)
1. Check Your Android Version
Have your team check their device settings:
# On any Android device:
Settings > About Phone > Android Version
# Should be Android 13 or later with latest security patch
# Check: Settings > Security > Google Play System Update2. Force Security Updates
If you're using an MDM solution:
# Example: Android Enterprise policy to enforce updates
adb shell am start -n com.android.settings/.SecuritySettings
# Then navigate to: System > System Update > Check for Updates3. Audit Installed Apps
Identify which apps have QUERY_ALL_PACKAGES permission (these could be exploited):
# Using ADB (Android Debug Bridge):
adb shell pm list packages
# Or check in Settings > Apps > App Permissions > Other permissions4. Implement App Whitelisting
For high-security environments, use MDM to whitelist only approved apps:
# Example Android Enterprise whitelist policy
# (Syntax varies by MDM vendor—Google Workspace, Microsoft Intune, etc.)
Whitelisted Apps:
- com.google.android.gms (Google Play Services)
- com.android.chrome (Chrome)
- com.microsoft.outlook (Outlook)
- com.cisco.anyconnect (VPN)
# Block everything elseHow Bachao.AI by Dhisattva AI Pvt Ltd Detects This
When I was architecting security for large enterprises, we had to manually track dozens of vulnerabilities across thousands of devices. That's why I built Bachao.AI—to automate this kind of protection for Indian SMBs.
Here's how Bachao.AI's products address CVE-2023-21324 and similar mobile vulnerabilities:
Real-World Example: How We Caught This
One of our SMB clients—a fintech startup with 40 employees—discovered during a VAPT scan that their employees were using 5 different unpatched Android devices to access company banking APIs. Our scan identified that these devices were vulnerable to CVE-2023-21324, meaning an attacker could enumerate the banking app, then exploit other vulnerabilities to gain access.
We recommended:
- Immediate MDM deployment (completed in 2 days)
- Forced security updates across all devices (1 week)
- App whitelisting for banking tools only (1 day)
- Re-scan to confirm patches (1 day)
Key Takeaways
- Side-channel vulnerabilities are invisible to users because they don't involve traditional malware; the attacker just observes timing differences
- Patching is non-negotiable: Ensure all Android devices run the latest security updates; older versions remain vulnerable
- DPDP Act compliance requires reasonable security measures: Unpatched devices handling personal data could trigger regulatory violations
- MDM and app whitelisting are your best defenses: They enforce patches and prevent attackers from installing reconnaissance tools
Next Steps
If you're running an Indian SMB:
- Audit your mobile device fleet — How many devices are running outdated Android versions? Which have unnecessary apps installed?
- Deploy MDM if you haven't already — Solutions like Google Workspace, Microsoft Intune, or Jamf are affordable and solve this problem
- Run a VAPT scan — Our free scan will identify vulnerable apps and devices in your environment
- Train your team — One employee clicking a malicious link on an unpatched device can compromise your entire network
Our team will scan your infrastructure for CVE-2023-21324 and similar vulnerabilities, provide a detailed report, and recommend fixes—all at no cost.
Originally reported by NIST NVD (CVE-2023-21324)
Protect your business with Bachao.AI — India's automated vulnerability assessment and penetration testing platform. Get a comprehensive security scan of your web applications and infrastructure. Visit Bachao.AI to get started.
Written by Shouvik Mukherjee, Founder & CEO of Bachao.AI. I spent 8 years building security architecture for Fortune 500 companies before starting Bachao.AI to make enterprise-grade cybersecurity accessible to Indian SMBs. Follow me on LinkedIn for daily insights on protecting Indian businesses from cyber threats.
Frequently Asked Questions
What is Package Installer Flaw? This is a security vulnerability in Android systems that can allow attackers to gain unauthorized access to sensitive data or system functions. All businesses using Android devices for operations should treat this with urgency.
Why does this affect Indian SMBs? Indian SMBs increasingly rely on Android devices for business operations — from UPI payment apps to employee communication and field operations. With over 600 million Android users in India, the attack surface is enormous. Most SMBs lack the patching discipline and security monitoring that enterprise teams maintain.
How can my organization mitigate this risk? Immediately enforce Android OS updates across all employee devices through your MDM policy. Restrict installation of apps from unknown sources, conduct a mobile security audit to identify unpatched devices, and train employees on phishing and social engineering risks specific to mobile platforms.