GNU C Library 2.19 spawn_faction_addopen.c xc_cpupool_getinfo erweiterte Rechte

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 7.9 | $0-$5k | 0.00 |
Zusammenfassung
Eine Schwachstelle wurde in GNU C Library 2.19 gefunden. Sie wurde als problematisch eingestuft. Es ist betroffen die Funktion xc_cpupool_getinfo der Datei posix/spawn_faction_addopen.c. Durch Manipulieren mit unbekannten Daten kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden.
Diese Verwundbarkeit ist als CVE-2014-4043 gelistet. Ferner existiert ein Exploit.
Ein Upgrade der betroffenen Komponente wird empfohlen.
Details
Es wurde eine Schwachstelle in GNU C Library 2.19 (Software Library) ausgemacht. Sie wurde als kritisch eingestuft. Es geht dabei um die Funktion xc_cpupool_getinfo der Datei posix/spawn_faction_addopen.c. Mit der Manipulation mit einer unbekannten Eingabe kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-94 vorgenommen. Die Auswirkungen sind bekannt für Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:
The posix_spawn_file_actions_addopen function in glibc before 2.20 does not copy its path argument in accordance with the POSIX specification, which allows context-dependent attackers to trigger use-after-free vulnerabilities.Am 07.02.2014 wurde der Fehler eingeführt. Die Schwachstelle wurde am 11.06.2014 durch David Reid, Alex Gaynor und and Glyph Lefkowitz als Bug 17048 in Form eines bestätigten Bug Reports (Bugzilla) publiziert. Das Advisory findet sich auf sourceware.org. Die Herausgabe passierte in Zusammenarbeit mit GNU. Die Identifikation der Schwachstelle wird seit dem 12.06.2014 mit CVE-2014-4043 vorgenommen. Der Angriff muss lokal erfolgen. Das Ausnutzen erfordert eine einfache Authentisierung. Es sind technische Details sowie ein öffentlicher Exploit zur Schwachstelle bekannt. Diese Schwachstelle wird durch das MITRE ATT&CK als Angriffstechnik T1059 bezeichnet.
Ein öffentlicher Exploit wurde durch Alex Gaynor in ANSI C umgesetzt und sofort nach dem Advisory veröffentlicht. Der Exploit kann von sourceware.org heruntergeladen werden. Er wird als proof-of-concept gehandelt. Vor einer Veröffentlichung handelte es sich 124 Tage um eine Zero-Day Schwachstelle. Während dieser Zeit erzielte er wohl etwa $0-$5k auf dem Schwarzmarkt. Für den Vulnerability Scanner Nessus wurde am 20.07.2014 ein Plugin mit der ID 76604 (SuSE 11.3 Security Update : glibc (SAT Patch Number 9477)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann. Es wird der Family SuSE Local Security Checks zugeordnet. Der kommerzielle Vulnerability Scanner Qualys bietet das Plugin 195576 (Ubuntu Security Notification for Eglibc Vulnerabilities (USN-2306-1)) zur Prüfung der Schwachstelle an. Der durch den Exploit genutzte Code gestaltet sich wie folgt:
int main() {
int res;
posix_spawn_file_actions_t fa;
posix_spawn_file_actions_init(&fa);
char *orig_path = "/tmp/afddsa";
char *path = malloc(strlen(orig_path) + 1);
strcpy(path, orig_path);
path[strlen(orig_path)] = '\0';
res = posix_spawn_file_actions_addopen(
&fa, 1, path, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR);
assert(res == 0);
memset(path, 0, strlen(orig_path));
free(path);
char *argv[] = {"/bin/echo", NULL};
pid_t pid;
res = posix_spawn(
&pid,
"/bin/echo",
&fa,
NULL,
argv,
environ
);
assert(res == 0);
int status;
wait4(pid, &status, 0, NULL);
printf("%d\n", WEXITSTATUS(status));
}Ein Aktualisieren auf die Version 2.20 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen eines Patches lösen. Dieser kann von sourceware.org bezogen werden. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen. Die Schwachstelle wird durch folgenden Code angegangen:
#include <string.h>
Unter anderem wird der Fehler auch in den Datenbanken von X-Force (93784), Tenable (76604), SecurityFocus (BID 68006†), Secunia (SA58697†) und Vulnerability Center (SBV-45742†) dokumentiert. Weitere Informationen werden unter seclists.org bereitgestellt. Die Einträge VDB-67049 und VDB-67286 sind sehr ähnlich. Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
Lizenz
Webseite
- Hersteller: https://www.gnu.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 8.8VulDB Meta Temp Score: 7.9
VulDB Base Score: 8.8
VulDB Temp Score: 7.9
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍
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: Erweiterte RechteCWE: CWE-94 / CWE-74 / CWE-707
CAPEC: 🔍
ATT&CK: 🔍
Physisch: Teilweise
Lokal: Ja
Remote: Ja
Verfügbarkeit: 🔍
Zugang: öffentlich
Status: Proof-of-Concept
Autor: Alex Gaynor
Programmiersprache: 🔍
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Nessus ID: 76604
Nessus Name: SuSE 11.3 Security Update : glibc (SAT Patch Number 9477)
Nessus Datei: 🔍
Nessus Risiko: 🔍
Nessus Family: 🔍
Nessus Port: 🔍
OpenVAS ID: 703169
OpenVAS Name: Debian Security Advisory DSA 3169-1 (eglibc - security update)
OpenVAS Datei: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔍
Exploit Delay Time: 🔍
Upgrade: C Library 2.20
Patch: sourceware.org
Timeline
07.02.2014 🔍11.06.2014 🔍
11.06.2014 🔍
11.06.2014 🔍
12.06.2014 🔍
13.06.2014 🔍
13.06.2014 🔍
13.06.2014 🔍
20.07.2014 🔍
11.08.2014 🔍
06.10.2014 🔍
22.06.2021 🔍
Quellen
Hersteller: gnu.orgAdvisory: Bug 17048
Person: David Reid, Alex Gaynor, and Glyph Lefkowitz
Status: Bestätigt
Bestätigung: 🔍
Koordiniert: 🔍
CVE: CVE-2014-4043 (🔍)
GCVE (CVE): GCVE-0-2014-4043
GCVE (VulDB): GCVE-100-13587
OVAL: 🔍
X-Force: 93784 - GNU C Library posix_spawn_file_actions_addopen code execution, High Risk
SecurityFocus: 68006 - GNU glibc 'xc_cpupool_getinfo()' Function Use After Free Memory Corruption Vulnerability
Secunia: 58697 - GNU C Library "posix_spawn_file_actions_addopen()" Denial of Service Vulnerabili, Less Critical
Vulnerability Center: 45742 - GNU C Library Remote Code Execution due to a Use After Free Error in \x27posix_spawn_file_actions_addopen\x27, High
scip Labs: https://www.scip.ch/?labs.20161013
Diverses: 🔍
Siehe auch: 🔍
Eintrag
Erstellt: 13.06.2014 15:04Aktualisierung: 22.06.2021 20:43
Anpassungen: 13.06.2014 15:04 (94), 04.06.2017 10:36 (7), 22.06.2021 20:43 (3)
Komplett: 🔍
Cache ID: 216:DE0:103
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.