6 Punkte von GN⁺ 2024-06-25 | 1 Kommentare | Auf WhatsApp teilen
  • Let's Encrypt hat sich seit Langem darüber besorgt gezeigt, dass große Teile von Betriebssystemen und Netzwerkinfrastruktur in unsicheren Sprachen wie C und C++ geschrieben sind
  • Die CA-Software ist zwar in dem speichersicheren Golang geschrieben, doch im OS-/Netzwerkbereich fehlt es weiterhin an Speichersicherheit, sodass regelmäßig Schwachstellen auftreten, die Patches erfordern
  • 2020 wurde das Prossimo-Projekt gestartet, mit dem Ziel, wichtige Software-Infrastruktur speichersicher zu machen

Wichtige Erfolge des Prossimo-Projekts

  • Es wurde in verschiedene Software-Komponenten investiert, darunter die TLS-Bibliothek Rustls, Hickory DNS, der Reverse Proxy River, sudo-rs, Rust-Unterstützung für den Linux-Kernel und ntpd-rs
  • Kürzlich wurde mit ntpd-rs die erste speichersichere Software aus Prossimo in der Infrastruktur von Let's Encrypt ausgerollt

Warum ntpd-rs wichtig ist

  • Die meisten Betriebssysteme verwenden das Network Time Protocol (NTP), um die genaue Zeit zu bestimmen
  • Zeitverwaltung ist eine wichtige Aufgabe des OS und interagiert mit dem Internet, daher ist die Sicherheit von NTP-Implementierungen entscheidend
  • Im April 2022 begann Prossimo mit der Arbeit an ntpd-rs, einer speichersicheren und sichereren NTP-Implementierung
  • Im April 2024 wurde ntpd-rs in der Staging-Umgebung von Let's Encrypt ausgerollt und wird inzwischen in der Produktionsumgebung eingesetzt

Zukünftige Pläne

  • In den kommenden Jahren plant Let's Encrypt, C- oder C++-Software in seiner Infrastruktur durch speichersichere Alternativen zu ersetzen
    • OpenSSL und seine Derivate durch Rustls ersetzen.
    • DNS-Software durch Hickory ersetzen.
    • Nginx durch River ersetzen.
    • sudo durch sudo-rs ersetzen.

Meinung von GN⁺

  • Die Bedeutung von Speichersicherheit: Software, die in speichersicheren Sprachen geschrieben ist, trägt erheblich dazu bei, Sicherheitslücken zu verringern.
  • Die Vorteile von Rust: Rust gewährleistet Speichersicherheit und bietet zugleich hohe Performance, was es für viele sicherheitskritische Softwareprojekte geeignet macht.
  • Die Rolle der Community: Open-Source-Projekte sind auf Beiträge der Community angewiesen, und Let's Encrypt ist hier keine Ausnahme.
  • Worauf bei der Einführung neuer Technologien zu achten ist: Bei der Einführung neuer Technologien müssen Kompatibilität mit bestehenden Systemen, Lernkurve und ähnliche Faktoren berücksichtigt werden.
  • Die Notwendigkeit stärkerer Sicherheit: Die Sicherheit der Internet-Infrastruktur zu verbessern, trägt zur Sicherheit des gesamten Internet-Ökosystems bei.

1 Kommentare

 
GN⁺ 2024-06-25
Hacker-News-Kommentare
  • Idee, NTPD in Rust zu implementieren: Interesse an der Idee, NTPD in Rust zu implementieren. Es werden Informationen zur Performance gesucht, insbesondere zur Leistung der Zeitsynchronisierung bei Netzwerkproblemen. Ein Vergleich mit Chrony wäre ebenfalls interessant.
  • Komplexität des NTP-Problems: NTP ist noch immer kein vollständig gelöstes Problem, und Performance ist wichtiger als Speichersicherheit. Chrony ist deutlich besser als das standardmäßig mit dem System gelieferte NTP und wird deshalb verwendet.
  • Meinung eines Rust-Enthusiasten: Aus Sicht eines Rust-Fans ist ntpd-rs nur dann erwägenswert, wenn es an die Performance von Chrony herankommt.
  • Diskussion über Speichersicherheit: Die starke Betonung von Speichersicherheit wirkt etwas seltsam. NTPD hat nur wenige Angriffsvektoren und läuft bereits gut ohne Speicherprobleme. Wichtiger wäre es, kritischere Komponenten in einer speichersicheren Sprache neu zu schreiben.
  • Frage zur JSON-Abhängigkeit: Es stellt sich die Frage, warum NTPD eine JSON-Abhängigkeit hat.
  • Vorschlag zur Neuschreibung von BGP: Als Nächstes wäre es sinnvoll, BGP in einer speichersicheren Sprache neu zu schreiben.
  • Nutzung von NTPsec: Es wird gefragt, ob überhaupt jemand NTPsec tatsächlich verwendet.
  • Probleme bei NTP-Servern: Das Problem bei NTP liegt nicht beim Client, sondern beim Server, der gefälschte UDP-Pakete verarbeiten muss. Es gibt Skepsis gegenüber der Möglichkeit, dass NTPD nur noch TCP verwendet. Der Betrieb eines öffentlichen Stratum-3-Servers wurde bereits vor zehn Jahren eingestellt.