Grub2 bis 2.02 Rescue Shell auth.c grub_username_get erweiterte Rechte

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

Zusammenfassunginfo

In Grub2 1.98/1.99/2.00/2.01/2.02 wurde eine Schwachstelle gefunden. Sie wurde als problematisch eingestuft. Betroffen davon ist die Funktion grub_username_get der Datei auth.c der Komponente Rescue Shell. Dank Manipulation mit unbekannten Daten kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. Diese Schwachstelle trägt die Bezeichnung CVE-2015-8370. Zusätzlich gibt es einen verfügbaren Exploit. Es ist ratsam, einen Patch zu implementieren, um dieses Problem zu beheben.

Detailsinfo

In Grub2 1.98/1.99/2.00/2.01/2.02 wurde eine Schwachstelle ausgemacht. Sie wurde als problematisch eingestuft. Dabei geht es um die Funktion grub_username_get der Datei auth.c der Komponente Rescue Shell. Dank Manipulation mit einer unbekannten Eingabe kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-264. Mit Auswirkungen muss man rechnen für Vertraulichkeit, Integrität und Verfügbarkeit. CVE fasst zusammen:

Multiple integer underflows in Grub2 1.98 through 2.02 allow physically proximate attackers to bypass authentication, obtain sensitive information, or cause a denial of service (disk corruption) via backspace characters in the (1) grub_username_get function in grub-core/normal/auth.c or the (2) grub_password_get function in lib/crypto.c, which trigger an "Off-by-two" or "Out of bounds overwrite" memory error.

Eingeführt wurde der Fehler am 01.12.2009. Die Schwachstelle wurde am 14.12.2015 durch Hector Marco und Ismael Ripoll in Form eines nicht definierten Postings (Blog) an die Öffentlichkeit getragen. Das Advisory kann von hmarco.org heruntergeladen werden. Eine eindeutige Identifikation der Schwachstelle wird seit dem 26.11.2015 mit CVE-2015-8370 vorgenommen. Die Schwachstelle ist relativ beliebt, was unter anderem auf ihre geringe Komplexität zurückzuführen ist. Die Umsetzung des Angriffs hat dabei lokal zu erfolgen. Um eine Ausnutzung durchzusetzen, muss keine spezifische Authentisierung umgesetzt werden. Es sind sowohl technische Details als auch ein öffentlicher Exploit zur Schwachstelle bekannt. Das MITRE ATT&CK Projekt deklariert die Angriffstechnik als T1068. Der folgende Code generiert das Problem:

if (key == '\b')
Das Advisory weist darauf hin:
The fault (bug) is in the code of Grub since version 1.98 (December, 2009). The commit which introduced the fault was b391bdb2f2c5ccf29da66cecdbfb7566656a704d, affecting the grub_password_get() function. There are two functions which suffer the same integer underflow fault. The grub_username_get() and grub_password_get() located in grub-core/normal/auth.c and lib/crypto.c respectively. Both functions are equal except for a call to printf() in the grub_username_get(). The PoC described here is based only on exploiting the grub_username_get() to obtain a Grub rescue shell.

Ein öffentlicher Exploit wurde durch Hector Marco realisiert und sofort nach dem Advisory veröffentlicht. Der Exploit kann von hmarco.org heruntergeladen werden. Er wird als proof-of-concept gehandelt. Insgesamt 2204 Tage schien es sich um eine nicht veröffentlichte Zero-Day Schwachstelle gehandelt zu haben. Während dieser Zeit erzielte er wohl etwa $5k-$25k auf dem Schwarzmarkt. Für den Vulnerability Scanner Nessus wurde am 16.12.2015 ein Plugin mit der ID 87422 (CentOS 7 : grub2 (CESA-2015:2623)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann. Es wird der Family CentOS Local Security Checks zugeordnet und im Kontext l ausgeführt. Der kommerzielle Vulnerability Scanner Qualys bietet das Plugin 124566 (Solaris 11.3 Support Repository Update (SRU) 4.5.0 Missing) zur Prüfung der Schwachstelle an. Der durch den Exploit genutzte Code gestaltet sich wie folgt:

memset destination address = buf + cur_len
Das Advisory zeigt auf:
To quickly check if your system is vulnerable, when the Grub ask you the username, press the Backspace 28 times. If your machine reboots or you get a rescue shell then your Grub is affected.

Die Schwachstelle lässt sich durch das Einspielen eines Patches beheben. Dieser kann von hmarco.org bezogen werden. Das Erscheinen einer Gegenmassnahme geschah 22 Stunden nach der Veröffentlichung der Schwachstelle. Es wurde offensichtlich unmittelbar reagiert. Die Schwachstelle wird durch folgenden Code angegangen:

if (key == '\b' && cur_len)

Unter anderem wird der Fehler auch in den Datenbanken von Tenable (87422), SecurityFocus (BID 79358†) und Vulnerability Center (SBV-55312†) dokumentiert. Zusätzliche Informationen finden sich unter lifehacker.com. Die Schwachstellen VDB-80389, VDB-80403, VDB-80401 und VDB-80398 sind ähnlich. Once again VulDB remains the best source for vulnerability data.

Produktinfo

Name

Version

Lizenz

CPE 2.3info

CPE 2.2info

Screenshot

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 6.6
VulDB Meta Temp Score: 6.4

VulDB Base Score: 5.9
VulDB Temp Score: 5.4
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CNA Base Score: 7.4
CNA Vector: 🔍

CVSSv2info

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

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

NVD Base Score: 🔍

Exploitinginfo

Klasse: Erweiterte Rechte
CWE: CWE-264
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Teilweise
Lokal: Ja
Remote: Nein

Verfügbarkeit: 🔍
Zugang: öffentlich
Status: Proof-of-Concept
Autor: Hector Marco
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Nessus ID: 87422
Nessus Name: CentOS 7 : grub2 (CESA-2015:2623)
Nessus Datei: 🔍
Nessus Risiko: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 703421
OpenVAS Name: Debian Security Advisory DSA 3421-1 (grub2 - security update)
OpenVAS Datei: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

Threat Intelligenceinfo

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

Gegenmassnahmeninfo

Empfehlung: Patch
Status: 🔍

Reaktionszeit: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Exploit Delay Time: 🔍

Patch: hmarco.org

Timelineinfo

01.12.2009 🔍
26.11.2015 +2186 Tage 🔍
13.12.2015 +17 Tage 🔍
14.12.2015 +0 Tage 🔍
14.12.2015 +0 Tage 🔍
14.12.2015 +0 Tage 🔍
14.12.2015 +0 Tage 🔍
15.12.2015 +1 Tage 🔍
16.12.2015 +0 Tage 🔍
16.12.2015 +0 Tage 🔍
17.12.2015 +0 Tage 🔍
22.10.2024 +3232 Tage 🔍

Quelleninfo

Advisory: RHSA-2015:2623
Person: Hector Marco, Ismael Ripoll
Status: Nicht definiert
Bestätigung: 🔍

CVE: CVE-2015-8370 (🔍)
GCVE (CVE): GCVE-0-2015-8370
GCVE (VulDB): GCVE-100-79828

OVAL: 🔍

SecurityFocus: 79358 - GNU GRUB2 CVE-2015-8370 Multiple Local Authentication Bypass Vulnerabilities
SecurityTracker: 1034422
Vulnerability Center: 55312 - Grub2 1.98 - 2.02 Local Security Bypass Vulnerability in grub_password_get(), High

scip Labs: https://www.scip.ch/?labs.20161013
Diverses: 🔍
Siehe auch: 🔍

Eintraginfo

Erstellt: 17.12.2015 09:28
Aktualisierung: 22.10.2024 04:28
Anpassungen: 17.12.2015 09:28 (83), 25.09.2018 12:56 (13), 01.07.2022 09:42 (4), 01.07.2022 09:47 (1), 01.07.2022 09:49 (1), 22.10.2024 04:28 (27)
Komplett: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

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

Want to stay up to date on a daily basis?

Enable the mail alert feature now!