15 Jahre alte Linux Kernel-Bugs im iSCSI-Subsystem ermöglichen root-Privilegien

Der nächste Sargnagel für „ich hänge alles ins Internet“. Sicherheitsforscher haben jetzt Linux Kernel-Bugs im iSCSI-Subsystem  aufgedeckt, die seit 15 Jahren bestehen und Angreifern das Erlangen von root-Privilegien ermöglichen. iSCSI wird von vielen Applicances genutzt, ohne schnelles Update ist’s nun Essig mit der Sicherheit.

Ich hatte es vorige Woche bereits kurz auf Twitter bei den Kollegen von Bleeping Computer gesehen, der nachfolgende Tweet bringt es komprimiert auf den Punkt.

Linux Kernel-Bug

Gestern bin ich dann aber nochmals von Blog-Leser Karl auf das Thema hingewiesen worden – diese nachfolgender Tweet.

Linux Kernel-Bugs im iSCSI-Subsystem

SCSI (Small Computer System Interface) und iSCSI

Zuerst ein kurzer Ausflug, es geht um das iSCSI, ein im Linux-Kernel genutztes Subsystem für den SCSI-Datentransport. SCSI (Small Computer System Interface) ist ein Standard für die Datenübertragung mit Peripheriegeräten. Gab es per physischem Kabel, um Festplatten, Brenner etc. einzubinden (ich hatte da lange eine solche Schnittstelle für einen Scanner und einen Brenner). SCSI wurde als Standard 1986 veröffentlicht und im Server-Bereich heftig eingesetzt. Meine Wege mit SCSI haben sich getrennt, als ich unter Windows XP oder Windows Vista keine Treiber mehr für die SCSI-Karte bekam und USB eh die erste Wahl war.

iSCSI (internet Small Computer System Interface) ist die Verwendung des SCSI-Protokolls über TCP und wird eingesetzt, um Peripherie über ein Netzwerk einzubinden.  Bei diesem Verfahren werden SCSI-Daten in TCP/IP-Pakete verpackt und über IP-Netze transportiert (Ports 860, 3260). iSCSI wird eingesetzt, um über eine virtuelle Punkt-zu-Punkt-Verbindung den Zugriff auf das Speichernetz zu ermöglichen, ohne dass eigene Speichergeräte aufgestellt werden müssen. In den verlinkten Wikipedia-Artikeln können bei Bedarf weitere Details nachgelesen werden.

Bug in iSCSI bei Linux

Bei der Analyse des in einigen Linux-Distributionen noch enthaltenen iSCSI-Subsystem des Linux-Kernels sind GRIMM-Sicherheitsforscher Adam Nichols gleich drei Schwachstellen aufgefallen. Diese Schwachstellen könnten es lokalen Angreifern mit einfachen Benutzerrechten ermöglichen, auf ungepatchten Linux-Systemen Root-Rechte zu erlangen. Vom Linux Kernel Heap Buffer Overflow, über ein Linux Kernel Pointer Leak in den Userspace bis zum Linux Kernel Out-of-Bounds Read ist alles vertreten.

Nichols hat das Ganze in diesem Blog-Beitrag und die technischen Details sowie die Linux-Kernel-Versionen, auf denen er getestet hat, dokumentiert. Diese Sicherheitslücken können nur lokal ausgenutzt werden, das heißt, dass potenzielle Angreifer sich Zugang zu Netzwerken mit anfälligen Geräten verschaffen müssen. Wenn aber alles am Internet hängt, ließen sich Sicherheitslücken oder alternative Angriffsvektoren verwenden, um sich root-Rechte auf den betreffenden Geräten zu verschaffen.

Alle drei oben erwähnten Schwachstellen sind in den Versionen 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 und 4.4.260 des Linux-Kernels gepatcht und die Patches wurden am 7. März 2021 im Mainline-Linux-Kernel integriert. Problem sind wohl Geräte, die nicht aktualisiert werden oder mit nicht mehr unterstützten Kernel-Versionen wie 3.x und 2.6.23 laufen, für die keine Patches veröffentlicht werden.

Dieser Beitrag wurde unter Linux, Sicherheit abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

9 Antworten zu 15 Jahre alte Linux Kernel-Bugs im iSCSI-Subsystem ermöglichen root-Privilegien

  1. Sebastian sagt:

    Ich stehe der allgemeinen Cloudifizierung auch kritisch bis ablehnend gegenüber, aber der Verweis darauf in diesem Artikel scheint mir doch etwas sehr konstruiert.

    iSCSI ist nicht als Protokoll für’s Internet designt worden und ich kann mir auch nicht vorstellen, dass es in nennenswertem Umfang so genutzt wird. Schwankende Latenzen mag iSCSI nicht so gerne, diese sind aber auf WAN-Strecken unvermeidbar.
    Selbst im LAN wird es als best practise angesehen, iSCSI über dedizierte VLANs oder sogar getrennte physische Netze abzubilden.

  2. 1ST1 sagt:

    Und da spotten die Linux-Fans über Exchange? (Und schlagen sentmail als Alternative vor?!?!) Mein lieber Herr Gesangsverein, DAS iSCSI-Ding hier stand jetzt nun 15 Jahre offen! In einem Programmcode, der öffentlich einsehbar ist, weil eben Open-Source. Die Linuxer hier im Blog und auch drüben bei Heise sollten mal bei Windows-Sicherheitsthemen ganz ganz still sein und sich um ihre eigene Bude kümmern!

    • Bolko sagt:

      Die Linux-Alternative zu Exchange ist grammm.

    • TmoWizard sagt:

      Was nicht bekannt ist kann auch nicht ausgenutzt werden! Das gilt nicht nur für uns Linuxer, sondern natürlich für alle Betriebssysteme.

      Übrigens kam ich ursprünglich vom Atari TT030 mit MultiTOS über Windows von 1.03 bis 7 SP1 hin zu Linux, Fehler und Lücken gab und gibt es überall! Ich bin mir relativ sicher, daß ich auch heute noch ein Windows 7 fast so gut abdichten kann wie mein aktuelles Linux hier.

      Jedes System hat seine Fehler und Berechtigungen, sogar ein angefressener Apfel! ;-)

      Mike, TmoWizard

  3. Bolko sagt:

    Man kann auch mit dem „kaputten“ Kernel weiterhin alles ins Internet hängen, denn diese Sicherheitslücken sind nicht von außen angreifbar (also nicht remote), sondern nur von einem „local attacker“.

    openSUSE Tumbleweed bzw GeckoLinux Rolling haben bereits den gefixten Kernel 5.11.4.

    Manjaro ist noch auf Kernel 5.10.19

    Ich habe auch noch eine „Adaptec 2940“ SCSI-Controllerkarte und einen SCSI-Scanner. Beides funktioniert immer noch unter Windows 7.

    • 1ST1 sagt:

      Jo, dann schicke ich dir eine Email mit Datei Namens wichtige_rechnung.sh und du klickst die an und schwuppdiwuppkartoffelsupp haben wir den lokalen Angreifer.

      Oder es ist wichtige_rechnung.odt mit Makro drin, mit dde-Aufruf des bösen Kommandos, und abgediepostwiedielutzie

      • chw9999 sagt:

        Das ist kein Windows! Eine bestimmte Extension ist nicht immer hinreichend, um eine Ausführung eines Scripts zu erzwingen. Ich habe es gerade probiert, ich bekomme die Möglichkeit, das Script per Editor zu öffnen oder zu speichern. Mehr nicht.

  4. nook sagt:

    GB: „Problem sind wohl Geräte, die nicht aktualisiert werden oder mit nicht mehr unterstützten Kernel-Versionen wie 3.x und 2.6.23 laufen, für die keine Patches veröffentlicht werden.“

    Nicht aktualisierte Geräte, OK. Bei Linux Usern aber eher unwahrscheinlich.

    Kernel 2.6.23 veröffentlicht 9. Okt. 2007
    Kernel 3.0 veröffentlicht 22. Juli 2011
    Museum?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert