VPN: Wireguard landet nach großen Problemen neu in FreeBSD

Die geplante Implementierung von Wireguard in FreeBSD war so schlecht, dass nur noch massiver persönlicher Einsatz das Projekt retten konnte.

Artikel veröffentlicht am ,
Das Wireguard-Maskottchen ist ein Drache.
Das Wireguard-Maskottchen ist ein Drache. (Bild: Pixabay)

Die moderne VPN-Technologie Wireguard läuft nun auch offiziell mit Unterstützung der Wireguard-Community im Kernel des freien Betriebssystems FreeBSD. Die Integration umfasst auch einige Userland-Werkzeuge und die nun verfügbare Implementierung sollte im Großen und Ganzen korrekt funktionieren, wie der Wireguard-Gründer Jason Donenfeld auf der Mailingliste des Projekts ankündigt. Dafür musste der Code aber einmal völlig überarbeitet werden und Donenfeld kritisierte den bisherigen Ansatz extrem harsch.

Stellenmarkt
  1. Data Foundation Engineer (m/w/d)
    Volkswagen Financial Services AG, Braunschweig
  2. Software Engineer (w/m/d) SAP EHS
    Wacker Chemie AG, Burghausen
Detailsuche

Begonnen wurden die Arbeiten an dem Wireguard-Port für FreeBSD vor etwa einem Jahr durch Matthew Macy, der dies für das Unternehmen Netgate umgesetzt hat, das wiederum Hauptsponsor der Firewall-Distribution Pfsense ist. Die so entstandenen Arbeiten sind letztlich Ende November 2020 größtenteils in FreeBSD gelandet.

Laut Donenfeld scheiterten dessen Versuche jedoch, mit den dafür Verantwortlichen in Kontakt zu treten. Der Code des Ports ist letztlich dennoch in FreeBSD importiert worden und der zuständige Entwickler hat sich anderen Projekten zugewendet. Wohl nur durch Zufall ist Donenfeld dann vor Kurzem erneut auf den Port aufmerksam geworden.

C wie es nicht sein sollte

In der anschließenden Diskussion wurde dann wohl schnell klar, dass der bestehende Code grundsätzlich überarbeitet werden musste, was Donenfeld gemeinsam mit dem FreeBSD-Entwickler Kyle Evans sowie mit Matt Dunwoodie umsetzte, der für den OpenBSD-Port von Wireguard zuständig war.

Golem Karrierewelt
  1. Adobe Photoshop für Social Media Anwendungen: virtueller Zwei-Tage-Workshop
    14./15.12.2022, virtuell
  2. IT-Sicherheit für Webentwickler: virtueller Zwei-Tage-Workshop
    07./08.02.2023, Virtuell
Weitere IT-Trainings

Der zuvor in FreeBSD importierte Code war demnach von extrem schlechter Qualität. "Es gab wahllose Sleep-Aufrufe, um Race Conditions zu 'reparieren', Validierungsfunktionen, die nur True zurückgegeben haben, katastrophale kryptografische Schwachstellen, ganze Teile des Protokolls, die nicht implementiert wurden, Kernel-Panics, Umgehungen der Sicherheitsfunktionen, Überläufe, wahllose Printf-Anweisungen tief im Kryptocode, spektakulärste Buffer-Overflows und die ganze Litanei schrecklicher Dinge, die schief gehen, wenn die Leute nicht aufpassen, wenn sie C-Code schreiben".

Darüber hinaus hat der ursprüngliche Port auf FreeBSD einfach 40.000 Zeilen optimierten Kryptocode aus dem Linux-Kompatabilitätsmodul kopiert. Dieser sei aber nicht richtig integriert worden und mit einem Labyrinth aus Ifdef-Anweisungen verschränkt gewesen. Die drei beteiligten Entwickler haben den Code nun in gut einer Woche komplett überarbeitet und dabei im Prinzip wohl fast vollständig neu geschrieben. Lediglich die auch zuvor schon aus OpenBSD übernommenen Teile bleiben dabei unverändert.

Unabhängig von dieser Diskussion hat das Pfsense-Projekt bereits Mitte Januar eine Vorschau auf Wireguard in Pfsense 2.5 veröffentlicht, die noch auf dem alten FreeBSD-Code basiert, den Donenfeld und seine Mitstreiter nun ersetzt haben. Der Code ist dann letztlich auch mit Pfsense Plus 21.02 und mit Pfsense CE 2.5 Mitte Februar stabil veröffentlicht worden. Ob das Pfsense-Team nun seinen Code gegen den neuen FreeBSD-Code austauscht, ist derzeit noch nicht bekannt.

Aufgrund der vergleichsweise überstürzten Aktion wird der nun neue Wireguard-Code wohl nicht schon wie ursprünglich geplant mit dem kommenden FreeBSD 13 aktiviert, das in wenigen Wochen erscheinen soll. Laut Donenfeld ist jedoch eine stabile Veröffentlichung mit dem nachfolgenden FreeBSD 13.1 wahrscheinlich. Bis dahin sollen auch noch einige weitere Integrationen in den FreeBSD-Code umgesetzt werden. Hinzu kommen soll außerdem noch ein unabhängig installierbares Modul, dass als Backport sogar noch in FreeBSD 12 genutzt werden kann.

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


Stefan Eßer 18. Mär 2021

Das hat das FreeBSD-Projekt auch so gesehen und deshalb den gesamten Code wieder aus dem...

Stefan Eßer 18. Mär 2021

Nein, absolut kein Zufall. Warum ist das seltsam? Der ist doch nicht der Einzige, der...

waterwalker 16. Mär 2021

Die Firma ist sehr "seriös" schau mal auf den Wikipedia Artikel und lies dir durch, was...



Aktuell auf der Startseite von Golem.de
El-Ali-Meteorit
Forscher entdecken zwei neue Minerale in einem Meteoriten

In einer Probe aus einem in Somalia niedergegangenen Meteoriten wurden zwei Mineralien entdeckt, die auf der Erde so bisher nicht gefunden wurden.

El-Ali-Meteorit: Forscher entdecken zwei neue Minerale in einem Meteoriten
Artikel
  1. Kraftfahrt-Bundesamt: Elektrischer Corsa sollte zur Abgasuntersuchung
    Kraftfahrt-Bundesamt
    Elektrischer Corsa sollte zur Abgasuntersuchung

    Das Kraftfahrt-Bundesamt ruft den Opel Corsa samt der Elektro-Variante zurück, weil ein Softwarefehler im Auto eine Messung verhindert.

  2. Recruiting: Personalauswahl mit KI kann Unternehmen schaden
    Recruiting
    Personalauswahl mit KI kann Unternehmen schaden

    Software ist objektiv und kennt keine Vorurteile, das macht Künstliche Intelligenz interessant für die Personalauswahl. Ist KI also besser als Personaler? Die Bewerber sind skeptisch und die Wissenschaft liefert keinen Beweis dafür.
    Ein Bericht von Peter Ilg

  3. Gerichtsurteil: MDR darf Facebook-Kommentare ohne Sendungsbezug löschen
    Gerichtsurteil
    MDR darf Facebook-Kommentare ohne Sendungsbezug löschen

    Öffentlich-rechtliche Sender begehen keine Zensur, wenn sie nicht strafbare Kommentare auf Facebook löschen. Manchmal sind sie eher dazu verpflichtet.

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 • PS5 bestellbar • Tiefstpreise: Crucial SSD 4TB 319€, Palit RTX 4080 1.499€, HTC Vive Pro 2 659€ • Alternate: Team Group SSD 512GB 29,99€, AOC Curved 27" 240 Hz 199,90€ • Samsung Cyber Week • Top-TVs (2022) LG & Samsung über 40% günstiger • AOC Curved 34" WQHD 389€ [Werbung]
    •  /