Google-Portierung bringt Sicherheitslücken ans Licht
Google‑Ingenieure haben die rund 3.000 Zeilen umfassende Grafikbibliothek giflib mithilfe des KI‑Modells Gemini in die Programmiersprache Rust übertragen. Im Zuge dieser Portierung stießen die Entwickler auf eine bislang unbekannte Zero‑Day‑Schwachstelle in der ursprünglichen C‑Codebasis. Die Arbeit führte zu einer vollständig funktionsgleichen Neufassung der Bibliothek, die zugleich Sicherheitsfragen neu aufwarf.
Funktionale Parität und Binärkompatibilität
Die neu geschriebene Rust‑Version erreicht laut Projektbericht eine bitgenaue Übereinstimmung im Rendering gegenüber der C‑Vorlage. Um den Austausch in bestehenden Systemen zu erleichtern, blieb die Implementierung ABI‑kompatibel, indem Symbole und Datenstrukturen der C‑Bibliothek beibehalten wurden. Das ermöglichte, die Rust‑Bibliothek direkt an Stelle der C‑Variante einzusetzen.
Intensive Tests, klarer Befund
Die Entwickler unterzogen die Neufassung umfangreichen Prüfungen: Mehr als 30 Millionen GIF‑Dateien wurden im Testlauf verarbeitet, außerdem lief ein sechstägiger Differential‑Fuzzing‑Durchlauf mit rund 200 Millionen Iterationen. Beide Prüfverfahren zeigten keine funktionalen Abweichungen zwischen der C‑ und der Rust‑Implementierung.
| Prüfgrösse | Ergebnis |
|---|---|
| GIF‑Dateien getestet | ~30.000.000 |
| Differential‑Fuzzing | ~200.000.000 Iterationen über 6 Tage |
Sicherheitsbefunde: alte Fehler wieder sichtbar
Während der Analyse trat ein Randfall bei der LZW‑Dekompression zutage, zudem fand das Team einen älteren Out‑of‑bounds‑Schreibfehler in der C‑Codebasis, der offenbar aus einem früheren internen Patch stammte. Kurz darauf meldete ein externer Forscher unabhängig den Heap‑Schreibfehler CVE‑2026‑26740 in der originalen C‑Bibliothek.
„Die von Google entwickelte Rust‑Fassung erwies sich gegenüber diesem Problem als strukturell immun.“
Die Portierung zeigt damit zwei Effekte: Einerseits erlaubt die speichersichere Sprache Rust strukturelle Schutzmechanismen gegen bestimmte Klassen von Speicherfehlern. Andererseits offenbarte der Portierungsprozess selbst Schwachstellen im historischen C‑Code, die zuvor unentdeckt geblieben waren.
Grenzen automatischer Übersetzung und notwendige Prüfung
Trotz der erfolgreichen Maschinenteilübersetzung war der Code nicht vollständig automatisch absicherbar. Unsichere Regeln bei Fremdfunktionsschnittstellen (FFI‑Zeigerregeln) erforderten eine manuelle Durchsicht durch Fachleute. Das Projekt unterstreicht damit, dass auch bei Einsatz moderner KI‑Modelle menschliche Expertise für Sicherheitsbewertungen unverzichtbar bleibt.
- Die Portierung zeigt, dass KI‑gestützte Übersetzung beträchtliche Fortschritte bringt.
- Manuelle Sicherheitsprüfung bleibt bei FFI und Speicherzugriffen notwendig.
- Speichersichere Sprachen wie Rust können strukturelle Vorteile gegen bestimmte Fehler bieten.
Für lokale Entwicklerinnen und Entwickler in Rust sowie Betriebe im Burgenland liefert der Fall zwei Lehren: Künftige Migrationen von weit verbreiteten Bibliotheken sollten automatisierte Tests mit umfangreichen Fuzzing‑Läufen kombinieren und kritische Teile durch Sicherheitsexpertinnen prüfen lassen. Gleichzeitig zeigt das Beispiel, wie eine Portierung nicht nur Funktionalität erhält, sondern bestehende Sicherheitslücken sichtbar machen kann.
Die Meldung stammt aus einem Bericht von infoq.com (27. September 2026) und weiteren Pressehinweisen; die hier dargestellten Daten und Testergebnisse beruhen auf den verfügbaren Projektangaben. Lokal in Rust dürften solche Entwicklungen vor allem für Software‑Dienstleister, Hochschulprojekte und sicherheitsorientierte IT‑Abteilungen von Interesse sein.