Google Android 4.4 Binder Driver binder_poll Pufferüberlauf
| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 6.4 | $0-$5k | 0.00 |
Zusammenfassung
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.
Details
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-141720095Die 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.
Produkt
Typ
Hersteller
Name
Version
Lizenz
Webseite
- Hersteller: https://www.google.com/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 6.5VulDB 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: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍
NVD Base Score: 🔍
Exploiting
Klasse: PufferüberlaufCWE: 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-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Exploit-DB: 🔍
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔍
Exploit Delay Time: 🔍
Upgrade: Android 3.8/4.14 LTS/4.9
Timeline
10.12.2018 🔍27.09.2019 🔍
27.09.2019 🔍
08.10.2019 🔍
09.09.2024 🔍
Quellen
Hersteller: google.comAdvisory: 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
Eintrag
Erstellt: 08.10.2019 07:27Aktualisierung: 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
Submit
Akzeptiert
- Submit #88: Android: Use-After-Free in Binder driver (von misc)
Be aware that VulDB is the high quality source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.