Kernel: Fehler liefert fehlerhafte TCP/IP-Daten an Container aus

Die Auslagerung von Prozessen in verschiedene virtuelle Container von Docker, Kubernetes, Google Container Engine und Mesos führte dazu, dass TCP-Prüfsummen nicht richtig ausgewertet wurden. Twitter-Entwickler entdeckten den Bug, jetzt wird der Linux-Kernel gepatcht.

Artikel veröffentlicht am , Ferdinand Thommes
Kernel-Bug im Netzwerk-Stack geschlossen
Kernel-Bug im Netzwerk-Stack geschlossen (Bild: Flickr/CC-BY 2.0)

Ein Fehler im Kernel führt bei Containern dazu, dass TCP-Prüfsummen nicht ausgewertet werden, wenn sie virtuelle Netzwerkadapter für ihr Netzwerkrouting verwenden. Daraus resultiert, dass Anwendungen aus gänzlich unterschiedlichen Bereichen in bestimmten Situationen fehlerhafte Daten erhalten. Betroffen sind unter anderem Docker, Kubernetes, Google Container Engine und Mesos. Für Docker gilt das nur bei Verwendung von IPv6. Der Fehler existiert seit mindestens drei Jahren, jetzt wurde ein Patch in den Kernel aufgenommen.

Stellenmarkt
  1. Softwareentwickler (m/w/d) Schwerpunkt Regelungstechnik/DSP
    KOSTAL Automobil Elektrik GmbH & Co. KG, Dortmund
  2. Corporate Datenschutz-Manager (m/w/d)
    Dürr AG, Bietigheim-Bissingen
Detailsuche

Der Zusammenhang dieser Dienste mit einem Bug im Kernel wurde im November von Twitter-Entwicklern entdeckt. Sie waren gleichzeitig informiert worden, dass von ihnen betreute Applikationen Fehler meldeten, die eigentlich nicht möglich waren. Strings enthielten Zeichen, die dort nicht hingehörten, Pflichtfelder bleiben leer.

Der Zusammenhang dieser Fehler in verschiedenen Applikationen war aufgrund der verteilten Architektur von Twitters Infrastruktur zunächst unklar geblieben. Verschärft wurde das Problem dadurch, dass fehlerhafte Daten in verteilten Systemen lange nach dem ersten Auftreten weitere Fehler nach sich ziehen können, da sie in Caches, in Logs und auf Festplatten geschrieben werden.

Schwierige Fehlersuche

Erste Untersuchungen ergaben, dass in bestimmten Server-Racks gehäuft Fehler in TCP-Prüfsummen zu verzeichnen waren, bevor die Applikationen vermehrt sinnlose Fehler meldeten. Wurden diese Racks aus dem System genommen, arbeiteten die betroffenen Anwendungen einwandfrei. Da anfängliche Tests unter Linux keine eindeutige Lösung brachten, setzten die Entwickler ihre Testreihen unter Mesos fort, das bei Twitter Anwendungen und Dienste in Containern isoliert.

Golem Karrierewelt
  1. Airtable Grundlagen: virtueller Ein-Tages-Workshop
    17.02.2023, Virtuell
  2. Advanced Python – Fortgeschrittene Programmierthemen: virtueller Drei-Tage-Workshop
    23.-25.01.2023, Virtuell
Weitere IT-Trainings

Prompt wurden sie fündig. Obwohl die TCP-Prüfsummen als ungültig erkannt wurden, tauchten fehlerhafte Daten in den Anwendungen auf. Nachdem im virtuellen Adapter das Checksum-Offloading abgeschaltet war, wurden die fehlerhaften Daten erwartungsgemäß fallengelassen.

Aus dem Workaround wird ein Kernel-Patch

Damit war eine vorübergehende Lösung gefunden. Schnell war aber klar, dass es keine Fehlkonfiguration in Mesos war, sondern es sich um einen Fehler im Netzwerkstack des Kernels handelte, der schließlich im Veth-Modul gefunden wurde. Der daraus resultierende Kernel-Patch wurde mittlerweile in den Kernel aufgenommen und wird derzeit bei verschiedenen Distributionen bis zu Kernel 3.14 rückportiert.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Bundesarbeitsgericht
Arbeitgeber müssen Arbeitszeiten zwingend erfassen

Das vollständige Urteil des BAG zur Arbeitszeiterfassung liegt nun vor. Diese muss zwingend erfolgen, aber nicht unbedingt elektronisch.

Bundesarbeitsgericht: Arbeitgeber müssen Arbeitszeiten zwingend erfassen
Artikel
  1. Cyberkriminalität: Jeder vierte Jugendliche ist ein Internettroll
    Cyberkriminalität
    Jeder vierte Jugendliche ist ein Internettroll

    Einer Umfrage zufolge ist bedenkliches bis illegales Verhalten von Jugendlichen im Internet zur Normalität geworden. In Deutschland ist der Anteil sehr hoch.

  2. I am Jesus Christ angespielt: Der Jesus-Simulator lässt uns vom Glauben abfallen
    I am Jesus Christ angespielt
    Der Jesus-Simulator lässt uns vom Glauben abfallen

    Kein Scherz, keine geplante Gotteslästerung: In I am Jesus Christ treten wir als Heiland an. Golem.de hat den kostenlosen Prolog ausprobiert.
    Von Peter Steinlechner

  3. ChatGPT: Der geniale Bösewicht-Chatbot mit Stackoverflow-Bann
    ChatGPT
    Der geniale Bösewicht-Chatbot mit Stackoverflow-Bann

    ChatGPT scheint zu gut, um wahr zu sein. Der Chatbot wird von Nutzern an die (legalen) Grenzen getrieben.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • NBB: Samsung Odyssey G5 WQHD/165 Hz 203,89€ u. Odyssey G9 49"/DQHD/240Hz 849,90€ • ViewSonic VX3258 WQHD/144 Hz 229,90€ • Elgato Cam Link Pro 146,89€ • Mindstar: Alphacool Eiswolf 2 AiO 360 199€ • Alternate: Tt eSPORTS Ventus X Plus 31,98€ • 4x Philips Hue White Ambiance 49,99€ [Werbung]
    •  /