Google hat ein Pilotprojekt mit Gemini abgeschlossen, um weit verbreitete C-Bibliotheken in Rust neu zu schreiben – und das Experiment hat sich auf eine Weise ausgezahlt, die niemand geplant hatte. Kurz nachdem das Unternehmen seine Produktionssysteme auf eine KI-generierte, speichersichere Neufassung der GIF-Verarbeitungsbibliothek giflib umgestellt hatte, wurde im ursprünglichen C-Code eine neue Schwachstelle beim Heap-Schreiben außerhalb des zulässigen Bereichs mit der Bezeichnung CVE-2026-26740 aufgedeckt. Die Systeme von Google waren bereits immun.
Das Unternehmen hat eine Zero-Day-Schwachstelle effektiv durch Architektur und nicht durch Patches neutralisiert. Wie das Sicherheitstechnikteam von Google in einem Beitrag auf seinem Bug Hunters-Blog erklärte, hatte das Team bei der Umschreibung keine Kenntnis von der bevorstehenden Offenlegung – der Schutz war ein struktureller Nebeneffekt der Eliminierung von speicherunsicherem Code. Um mehr darüber zu erfahren, wie KI [KI-Forschung und -Technik] umgestaltet (https://aibuzzwire.news), folgen Sie AI Buzz Wire.
Warum Speichersicherheit jetzt wichtig ist
Laut eigenen Untersuchungen von Google sind Sicherheitslücken im Speicher für etwa 70 % der Schwachstellen in C- und C++-Codebasen verantwortlich. Bibliotheken von Drittanbietern stellen eine besondere Schwachstelle dar, da sie routinemäßig nicht vertrauenswürdige Daten analysieren. Gleichzeitig wird die Zeitspanne zwischen der Entdeckung von Schwachstellen und deren Einsatz als Waffe immer kleiner – Angreifer, die zunehmend selbst von KI unterstützt werden, agieren schneller als herkömmliche Patch-Zyklen.
Google befürwortet seit langem eine „Safe Coding“-Strategie, die speichersicheren Sprachen wie Rust Vorrang einräumt. Das ungelöste Problem ist die riesige installierte Basis an C- und C++-Abhängigkeiten, die nicht einfach gelöscht werden können. Der Pilot stellte eine direkte Frage: Kann ein LLM diese Abhängigkeiten schnell in Rust konvertieren, ohne dass etwas kaputt geht?
Das Ziel: giflib
Google hat sich für giflib entschieden, eine weit verbreitete GIF-Bildverarbeitungsbibliothek, die ursprünglich von Eric S. Raymond entwickelt wurde. Die Bibliothek bot ein ideales Komplexitätsprofil für einen ersten Versuch: etwa 3.000 Codezeilen, keine SIMD- oder Assembly-Optimierungen und eine stabile Codebasis. Entscheidend ist, dass giflib häufig nicht vertrauenswürdige Daten in Umgebungen ohne Sandbox verarbeitet – genau die Art von Angriffsfläche, über die sich Sicherheitsteams am meisten Sorgen machen.
Das Ziel war ehrgeizig: einen speichersicheren, ABI-kompatiblen Drop-in-Ersatz zu entwickeln, der in der gesamten Produktionsinfrastruktur von Google ohne Unterbrechung abhängiger Dienste bereitgestellt werden konnte. Die erste Übersetzung der Bibliothekslogik wurde mit LLM-Unterstützung schnell durchgeführt, aber das Team wies auf zwei Anforderungen hin, die sich als entscheidend erwiesen: sorgfältige Verwaltung der FFI-Grenze – Zeigerlebenszyklus und Rusts Besitzsemantik an der Schnittstelle mit vorhandenen C-Aufrufern – und das, was Google „die soziale Komponente der Sicherheit“ nennt, das menschliche Vertrauen, das erforderlich ist, um KI-generierte Umschreibungen in kritischen Diensten bereitzustellen.
Der Validierungshandschuh
Um das Vertrauen in die Produktion zu gewinnen, wurde die Rust-Implementierung ausführlichen Tests unterzogen:
- Regressionstests im Massenmaßstab: Validiert anhand eines Datensatzes von mehr als 30 Millionen GIFs aus der realen Welt und bestätigt, dass die Ergebnisse mit denen der ursprünglichen Implementierung identisch sind
- Differenzielles Fuzzing: Ein Original-gegen-Rust-Fuzzer lief über sechs Tage und mehr als 200 Millionen Iterationen ununterbrochen, ohne logische Abweichungen zu finden
- Gegnerische KI-Überprüfung: Spezielle LLM-Eingabeaufforderungen wurden verwendet, um nach subtilen Verhaltensunterschieden zwischen den beiden Codebasen zu suchen, die bei herkömmlichen Tests möglicherweise übersehen würden
Die Pipeline hat sich bereits vor der Inbetriebnahme bewährt. Es identifizierte einen Grenzfall im LZW-Decoder und – was noch bemerkenswerter ist – deckte eine bereits bestehende Schwachstelle beim Schreiben außerhalb der Grenzen auf, die durch einen Google-internen Legacy-Patch für die ursprüngliche C-Quelle eingeführt worden war, den das Team im Rust-Rewrite korrigierte.
Die Leistung hat nicht gelitten
Ein häufiger Einwand gegen speichersichere Sprachen sind die Kosten für die Überprüfung der Laufzeitgrenzen. Googles Überwachung seiner globalen Bildverarbeitungsdienste zeigte, dass die Rust-Implementierung im Vergleich zum C-Original leistungsneutral war – ein Ergebnis, das das Unternehmen nach eigenen Angaben wiederholt bei Rust-Migrationen beobachtet hat.
Es gab einen unerwarteten Bonus. Da die Rust-Bibliothek von Natur aus speichersicher ist, konnte Google auf das ressourcenintensive Sandboxing verzichten, das einige Produktionsdienste zuvor zur Isolierung der C-Bibliothek benötigten. Diese architektonische Vereinfachung führte zu einer erheblichen Reduzierung der Tail-Latenz bei Bilddecodierungsaufgaben.
Open Source – mit ehrlichen Vorbehalten
Google hat die Neufassung von Rust unter github.com/google/giflib-rs veröffentlicht und stellt seine Erkenntnisse der Community zur Verfügung. Das Unternehmen schreibt auch ergänzenden, von Menschen geleiteten Bemühungen, wie der manuellen Umschreibung von zlib in Rust durch die Trifecta Tech Foundation, erhebliche Leistungssteigerungen als Teil eines umfassenderen Lösungsökosystems zu.
Die Vorbehalte sind erwähnenswert. Umschreibungen erfordern große Mengen realer Daten oder starke bestehende Testsuiten, um die Verhaltensäquivalenz zu validieren, und die Abweichung von einem Upstream-Projekt durch den Wechsel der Sprachen verursacht echte Wartungskosten – insbesondere für Abhängigkeiten, die sich in der aktiven Entwicklung befinden. Mit anderen Worten: KI-gestützte Übersetzungen beschleunigen, ersetzen aber nicht das technische Urteilsvermögen.
Das größere Bild
Das Pilotprojekt ist einer der bisher deutlichsten Beweise dafür, dass LLMs strukturelle Sicherheitsverbesserungen in großem Maßstab und nicht nur Codevorschläge liefern können. Durch die Kombination der Geschwindigkeit der LLM-gesteuerten Übersetzung mit differenziellen Tests und der Überprüfung von Sicherheitsgrenzen durch menschliche Experten können laut Google ganze Klassen von Schwachstellen aus der Produktionsinfrastruktur entfernt werden – bevor irgendjemand weiß, welches konkrete CVE als nächstes kommt.
Quelle: Google Bug Hunters-Blog, „Scaling Memory Safety: AI-Assisted Rewrites of C/C++ Dependencies to Rust.“
---
Der KI einen Schritt voraus seinErhalten Sie die neuesten KI-Nachrichten, Analysen und Durchbrüche – alles an einem Ort.
Weitere KI-Neuigkeiten lesen →