Open Source im professionellen Einsatz

Linux Kernel: Datenleak im Netzwerkcode

 Eine Sicherheitslücke im Linux Kernel hat zur Folge, dass ein lokaler Angreifer an sensitive Systeminformation gelangen kann. Die Schwachstelle wurde in dem SCTP-Netzwerk-Programmcode gefunden. Hier kann es zu einer Out-of-Bound-Lese-Operation kommen. Damit wird dann Systemspeicher eingelesen und an den Userspace zurückgeliefert. Die Programmierfehler sind in den »inet_diag_msg_sctpaddrs_fill()«-, »inet_diag_msg_sctpladdrs_fill()«- und »sctp_get_sctp_info()«-Funkti«onen (»net/sctp/sctp_diag.c«-Datei) enthalten.

Der Fehler tritt auf, wenn diese Funktionen die sockaddr-Datenstruktur füllen. Insgesamt können so bis zu 100 Bytes Kernelspeicher in den Userspace gelangen. Praktisch tritt diese Situation immer dann auf, wenn Netlink-Requests des Typs INET_DIAG_LOCALS oder INET_DIAG_PEERS für einen SCTP-Socket verarbeitet werden. Das ist beispielsweise der Fall, wenn das ss-Tool (Teil von iproute2) mit der »-Si« oder »-Sm« Option aufgerufen wird. Ein nun im Kernel eingespielter Patch korrigiert diese Schwachstelle durch bessere Kontrollen bei »memcpy()«-Speicheroperationen.

comments powered by Disqus

Ausgabe 10/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.