Die ungepatchte XRING-Lücke in Alibabas XQUIC-Bibliothek ermöglicht es entfernten Clients, HTTP/3-Server mit minimalem QPACK-Datenverkehr abzustürzen.
Der Sicherheitsforscher Sébastien Féry von FoxIO hat eine kritische Schwachstelle in XQUIC entdeckt, der Open-Source-QUIC- und HTTP/3-Bibliothek von Alibaba. Die als XRING bezeichnete Sicherheitslücke betrifft alle Versionen bis einschließlich der aktuellen Version v1.9.4. Ein entfernter, nicht authentifizierter Client kann den Serverprozess mit rund 260 Bytes an regulärem QPACK-Datenverkehr kontrolliert zum Absturz bringen. Betroffen sind alle Webserver, welche die Bibliothek integrieren, wie etwa der auf Nginx basierende Webserver Tengine, der für die Cloud-Infrastruktur und CDNs von Diensten wie Taobao und Alipay eingesetzt wird. Bislang existiert weder ein schließender Sicherheits-Patch noch eine offizielle CVE-Nummer für diesen Fehler. FoxIO hatte Alibaba bereits am 7. April 2026 über die Richtlinien des Projekts kontaktiert, blieb jedoch trotz mehrfacher Nachfragen bis zur Veröffentlichung im Juli ohne Rückmeldung.
Ganzzahlen-Unterlauf führt zu Pufferüberlauf in Alibaba
Der Fehler liegt in der Verarbeitung der Header-Komprimierung mittels QPACK. Zur Effizienzsteigerung nutzt HTTP/3 eine dynamische Tabelle, deren Bytes XQUIC in einem Ringpuffer im Arbeitsspeicher ablegt. Wenn ein Client eine Vergrößerung dieser Tabelle anfordert, wird ein neuer Puffer zugewiesen und die bestehenden Daten kopiert. Bei einer bestimmten Konstellation berechnet der Code die verbleibenden Daten fälschlicherweise anhand der Kapazität des neuen, größeren Puffers statt des alten Puffers.
Diese fehlerhafte Berechnung führt bei der Ermittlung der Kopierlänge zu einem Unterlauf eines vorzeichenlosen Ganzzahltyps (size_t). Die resultierende, extrem große Kopierlänge löst ein Schreiben außerhalb der Puffergrenzen aus, was in aktuellen Linux-Distributionen wie Ubuntu 26.04 durch Schutzmechanismen wie glibc-Fortify erkannt wird und den sofortigen Absturz des Serverprozesses zur Folge hat.
Einschränkung der dynamischen Tabelle als Übergangslösung
Da die für den Angriff genutzten Werte alle regulären Regeln des QPACK-Protokolls einhalten und keine missgebildeten Pakete erfordern, schlagen herkömmliche Sicherheitsfilter nicht an. Die Schwachstelle ist seit der ersten Veröffentlichung der Bibliothek im Januar 2022 vorhanden und ein Proof-of-Concept ist mittlerweile öffentlich einsehbar. Bis zur Veröffentlichung eines Software-Updates durch die Entwickler können Administratoren den Fehler über zwei alternative Übergangslösungen entschärfen:
- Den Wert des Parameters SETTINGS_QPACK_MAX_TABLE_CAPACITY auf 0 setzen, wodurch die dynamische Tabelle deaktiviert wird.
- Die Unterstützung für das HTTP/3-Protokoll auf den betroffenen Servern vollständig abschalten.
(red)