Google Android 4.4 Binder Driver binder_poll Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
6.4$0-$5k0.00

Zusammenfassunginfo

Eine Schwachstelle wurde in Google Android 4.4 gefunden. Sie wurde als kritisch eingestuft. Es betrifft die Funktion binder_poll der Komponente Binder Driver. Durch Beeinflussen mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Die Identifikation der Schwachstelle findet als CVE-2019-2215 statt. Der Angriff ist nur lokal möglich. Darüber hinaus steht ein Exploit zur Verfügung. Es wird geraten, die betroffene Komponente zu aktualisieren.

Detailsinfo

Eine Schwachstelle wurde in Google Android 4.4 (Smartphone Operating System) ausgemacht. Sie wurde als kritisch eingestuft. Es geht hierbei um die Funktion binder_poll der Komponente Binder Driver. Mit der Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-416. Auswirken tut sich dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:

A use-after-free in binder.c allows an elevation of privilege from an application to the Linux Kernel. No user interaction is required to exploit this vulnerability, however exploitation does require either the installation of a malicious local application or a separate vulnerability in a network facing application.Product: AndroidAndroid ID: A-141720095

Die Schwachstelle wurde am 27.09.2019 in Form eines bestätigten Bug Reports (Website) herausgegeben. Das Advisory findet sich auf bugs.chromium.org. Die Verwundbarkeit wird seit dem 10.12.2018 mit der eindeutigen Identifikation CVE-2019-2215 gehandelt. Umgesetzt werden muss der Angriff lokal. Das Ausnutzen erfordert keine spezifische Authentisierung. Es sind technische Details sowie ein öffentlicher Exploit zur Schwachstelle bekannt. Das Advisory weist darauf hin:

As described in the upstream commit: “binder_poll() passes the thread->wait waitqueue that can be slept on for work. When a thread that uses epoll explicitly exits using BINDER_THREAD_EXIT, the waitqueue is freed, but it is never removed from the corresponding epoll data structure. When the process subsequently exits, the epoll cleanup code tries to access the waitlist, which results in a use-after-free.

Es wurde sofort nach dem Advisory ein Exploit veröffentlicht. Der Exploit wird unter bugs.chromium.org zur Verfügung gestellt. Er wird als attackiert gehandelt. Der Preis als 0-Day war auf dem Schwarzmarkt etwa $5k-$25k. Der durch den Exploit genutzte Code gestaltet sich wie folgt:

#include <fcntl.h>
#include <sys/epoll.h>
#include <sys/ioctl.h>
#include <unistd.h>

#define BINDER_THREAD_EXIT 0x40046208ul

int main()
{
		int fd, epfd;
		struct epoll_event event = { .events = EPOLLIN };

		fd = open("/dev/binder0", O_RDONLY);
		epfd = epoll_create(1000);
		epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);
		ioctl(fd, BINDER_THREAD_EXIT, NULL);
}

Ein Aktualisieren auf die Version 3.8, 4.14 LTS oder 4.9 vermag dieses Problem zu lösen.

Unter anderem wird der Fehler auch in der Verwundbarkeitsdatenbank von Exploit-DB (47463) dokumentiert. Be aware that VulDB is the high quality source for vulnerability data.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 6.5
VulDB Meta Temp Score: 6.4

VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 7.8
NVD Vector: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 🔍

Exploitinginfo

Klasse: Pufferüberlauf
CWE: CWE-416 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Teilweise
Lokal: Ja
Remote: Nein

Verfügbarkeit: 🔍
Zugang: öffentlich
Status: Attackiert
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

KEV Hinzugefügt: 🔍
KEV Bis wann: 🔍
KEV Massnahmen: 🔍
KEV Ransomware: 🔍
KEV Hinweis: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Exploit-DB: 🔍

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔍
Exploit Delay Time: 🔍

Upgrade: Android 3.8/4.14 LTS/4.9

Timelineinfo

10.12.2018 🔍
27.09.2019 +291 Tage 🔍
27.09.2019 +0 Tage 🔍
08.10.2019 +11 Tage 🔍
09.09.2024 +1798 Tage 🔍

Quelleninfo

Hersteller: google.com

Advisory: sa-20191030-01
Status: Bestätigt
Bestätigung: 🔍

CVE: CVE-2019-2215 (🔍)
GCVE (CVE): GCVE-0-2019-2215
GCVE (VulDB): GCVE-100-142991
scip Labs: https://www.scip.ch/?labs.20150917

Eintraginfo

Erstellt: 08.10.2019 07:27
Aktualisierung: 09.09.2024 22:29
Anpassungen: 08.10.2019 07:27 (65), 25.09.2020 16:37 (2), 03.01.2024 18:44 (4), 03.01.2024 18:52 (1), 19.04.2024 15:55 (27), 09.06.2024 19:45 (1), 25.07.2024 18:24 (1), 09.09.2024 22:29 (1)
Komplett: 🔍
Einsender: misc
Cache ID: 216::103

Submitinfo

Akzeptiert

  • Submit #88: Android: Use-After-Free in Binder driver (von misc)

Be aware that VulDB is the high quality source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you need the next level of professionalism?

Upgrade your account now!