GNU C Library resolv/res_send.c send_dg/send_vc MAX_PACKET Pufferüberlauf

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 7.7 | $0-$5k | 0.00 |
Zusammenfassung
Eine kritische Schwachstelle wurde in GNU C Library entdeckt. Dies betrifft die Funktion send_dg/send_vc der Datei resolv/res_send.c. Durch Manipulieren des Arguments MAX_PACKET mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden.
Eine eindeutige Identifikation der Schwachstelle wird mit CVE-2015-7547 vorgenommen. Der Angriff kann über das Netzwerk erfolgen. Zusätzlich gibt es einen verfügbaren Exploit.
Es ist ratsam, einen Patch zu implementieren, um dieses Problem zu beheben.
Details
In GNU C Library (Software Library) wurde eine kritische Schwachstelle entdeckt. Dabei geht es um die Funktion send_dg/send_vc der Datei resolv/res_send.c. Dank Manipulation des Arguments MAX_PACKET mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-119. Auswirken tut sich dies auf Vertraulichkeit, Integrität und Verfügbarkeit.
Am 01.05.2008 wurde der Fehler eingeführt. Die Schwachstelle wurde am 16.02.2016 durch Robert Holiday von Ciena als Bug 18665 in Form eines bestätigten Advisories (Mailing List) öffentlich gemacht. Das Advisory findet sich auf sourceware.org. Die Veröffentlichung passierte hierbei in Koordination mit GNU. Die Verwundbarkeit wird seit dem 29.09.2015 als CVE-2015-7547 geführt. Die Schwachstelle ist relativ beliebt, und dies trotz ihrer hohen Komplexität. Der Angriff kann über das Netzwerk angegangen werden. Um eine Ausnutzung durchzusetzen, muss keine spezifische Authentisierung umgesetzt werden. Es sind technische Details sowie ein öffentlicher Exploit zur Schwachstelle bekannt. Das Advisory weist darauf hin:
The use of AF_UNSPEC triggers the low-level resolver code to send out two parallel queries for A and AAAA. A mismanagement of the buffers used for those queries could result in the response writing beyond the alloca allocated buffer created by __res_nquery.Ein öffentlicher Exploit wurde durch Google Security Research in Python realisiert und direkt nach dem Advisory veröffentlicht. Der Exploit kann von securityfocus.com heruntergeladen werden. Er wird als proof-of-concept gehandelt. Mindestens 2847 Tage galt die Schwachstelle als nicht öffentlicher Zero-Day. Während dieser Zeit erzielte er wohl etwa $25k-$100k auf dem Schwarzmarkt. Für den Vulnerability Scanner Nessus wurde am 16.02.2016 ein Plugin mit der ID 88756 (Amazon Linux AMI : glibc (ALAS-2016-653)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann. Es wird der Family Amazon Linux Local Security Checks zugeordnet und im Kontext l ausgeführt. Der kommerzielle Vulnerability Scanner Qualys bietet das Plugin 390049 (Oracle VM Server for x86 Security Update for glibc (OVMSA-2017-0051)) zur Prüfung der Schwachstelle an.
Die Schwachstelle lässt sich durch das Einspielen des Patches 8479f23a lösen. Die Schwachstelle kann zusätzlich durch das Filtern von UDP DNS Packet Length > 512 Bytes / TCP Reply Length > 1024 Byte mittels Firewalling mitigiert werden. Als bestmögliche Massnahme wird das Installieren des jeweiligen Patches empfohlen. Das Erscheinen einer Gegenmassnahme geschah direkt nach der Veröffentlichung der Schwachstelle. GNU hat damit sofort gehandelt. Die Schwachstelle wird durch folgenden Code angegangen:
if (status == NSS_STATUS_SUCCESS
&& (status2 == NSS_STATUS_TRYAGAIN
&& *errnop == ERANGE && *h_errnop != NO_RECOVERY))
status = NSS_STATUS_TRYAGAIN; Angriffe können durch Snort ID 37730 erkannt werden. Weiterführend können Angriffe durch TippingPoint mittels dem Filter 23882 erkannt werden. Unter anderem wird der Fehler auch in den Datenbanken von Exploit-DB (39454), Tenable (88756), SecurityFocus (BID 83265†), SecurityTracker (ID 1035020†) und Vulnerability Center (SBV-56723†) dokumentiert. In deutscher Sprache berichtet unter anderem Heise zum Fall. Zusätzliche Informationen finden sich unter sourceware.org. Die Schwachstellen VDB-82595 und VDB-82661 sind ähnlich. Be aware that VulDB is the high quality source for vulnerability data.
Betroffen
- Multiple Cisco Devices (cisco-sa-20160218-glibc)
Produkt
Typ
Hersteller
Name
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.1VulDB Meta Temp Score: 7.7
VulDB Base Score: 8.1
VulDB Temp Score: 7.3
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍
NVD Base Score: 8.1
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-119
CAPEC: 🔍
ATT&CK: 🔍
Physisch: Nein
Lokal: Nein
Remote: Ja
Verfügbarkeit: 🔍
Zugang: öffentlich
Status: Proof-of-Concept
Autor: Google Security Research
Programmiersprache: 🔍
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Nessus ID: 88756
Nessus Name: Amazon Linux AMI : glibc (ALAS-2016-653)
Nessus Datei: 🔍
Nessus Risiko: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 100313
OpenVAS Name: Amazon Linux Local Check: alas-2016-653
OpenVAS Datei: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Exploit-DB: 🔍
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: PatchStatus: 🔍
Reaktionszeit: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Exploit Delay Time: 🔍
Patch: 8479f23a
Firewalling: 🔍
Snort ID: 37730
Snort Message: PROTOCOL-DNS glibc getaddrinfo A record stack buffer overflow attempt
Snort Klasse: 🔍
Suricata ID: 2022531
Suricata Klasse: 🔍
Suricata Message: 🔍
TippingPoint: 🔍
McAfee IPS: 🔍
McAfee IPS Version: 🔍
Fortigate IPS: 🔍
Timeline
01.05.2008 🔍29.09.2015 🔍
15.02.2016 🔍
15.02.2016 🔍
16.02.2016 🔍
16.02.2016 🔍
16.02.2016 🔍
16.02.2016 🔍
16.02.2016 🔍
16.02.2016 🔍
17.02.2016 🔍
18.02.2016 🔍
22.02.2016 🔍
27.01.2025 🔍
Quellen
Hersteller: gnu.orgAdvisory: Bug 18665
Person: Robert Holiday
Firma: Ciena
Status: Bestätigt
Bestätigung: 🔍
Koordiniert: 🔍
CVE: CVE-2015-7547 (🔍)
GCVE (CVE): GCVE-0-2015-7547
GCVE (VulDB): GCVE-100-80983
CERT: 🔍
SecurityFocus: 83265 - GNU glibc 'getaddrinfo()' Function Multiple Stack Buffer Overflow Vulnerabilities
SecurityTracker: 1035020
Vulnerability Center: 56723 - GNU glibc 2.9 - 2.22 Remote Code Execution due to a Stack-Based Buffer Overflow in the DNS Resolver in GetAddrInfo, Medium
Heise: 3107621
scip Labs: https://www.scip.ch/?labs.20161013
Diverses: 🔍
Siehe auch: 🔍
Eintrag
Erstellt: 16.02.2016 21:53Aktualisierung: 27.01.2025 06:27
Anpassungen: 16.02.2016 21:53 (106), 23.08.2018 08:22 (18), 08.07.2022 08:19 (3), 20.06.2024 11:22 (15), 27.01.2025 06:27 (1)
Komplett: 🔍
Cache ID: 216:2E8:103
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.