XRP Ledger behebt jahrzehntealten Zahlungsfehler, der gefälschtes XRP hätte erzeugen können
Wichtige Erkenntnisse
- •Ein Ganzzahl-Überlauf in der Payment-Engine des XRP Ledger, der seit der Erstellung des Codes im Jahr 2015 vorhanden war, hätte einem Angreifer ermöglichen können, in einer einzigen Transaktion spendbares XRP weit über die Gesamtmenge des Tokens hinaus zu erzeugen.
- •Der Fehler, der im September von einem Forscher über das XRPL-Bug-Bounty-Programm gemeldet wurde, trat nur auf, wenn eine Zahlung Hunderte speziell präparierte Orderbook-Angebore verbrauchte, wodurch die geschuldete Summe auf einen vernachlässigbaren Wert überlief, während Verkäufer vollständig bezahlt wurden.
- •Die eingebaute Sicherheitsprüfung des Ledgers, die sicherstellen soll, dass keine Transaktion XRP erzeugt, beruhte auf derselben fehlerhaften Arithmetik und versagte stillschweigend neben dem verwundbaren Code.
- •Der Patch erschien in Version 3.4.1 am 25. September und wurde an diesem Tag von mehr als 80% der Trusted Validators übernommen – das erste Mal, dass eine transaktionsverarbeitende Änderung bewusst den zweiwöchigen Amendment-Abstimmungsprozess des Ledgers umging.
- •Die Betreiber fanden keine Hinweise auf eine Ausnutzung der Schwachstelle, und die Offenlegung erinnert an einen früheren Fälschungsschock im Zusammenhang mit einem Soundness-Fehler im Shielded Pool von Zcash.

Die Entwickler hinter dem XRP Ledger haben eine kritische Schwachstelle offengelegt und behoben, die einem Angreifer unbehandelt hätte ermöglichen können, XRP aus dem Nichts zu erzeugen – ein Fehler, der rund ein Jahrzehnt lang unentdeckt im Code des Netzwerks schlummerte.
In einer am Freitag veröffentlichten Offenlegung teilten die Betreiber des Ledgers mit, dass ein Forscher den Fehler im September über das XRPL-Bug-Bounty-Programm gemeldet hatte. Es handelte sich um einen Ganzzahl-Überlauf in der Payment-Engine, der Komponente der Software, die für die Verarbeitung von Zahlungen zuständig ist.
Der arithmetische Fehler trat nur unter ungewöhnlichen Bedingungen auf. Wenn eine einzelne Zahlung Hunderte speziell präparierte Angebote aus dem Orderbuch verbrauchte, überstieg die Summe der Schuld des Käufers den maximal speicherbaren Wert des Systems und „wickelte über“ (wrap-around) zu einer winzigen Zahl. Die Engine bezahlte jeden Verkäufer vollständig, berechnete dem Käufer jedoch fast nichts, wobei die Differenz neu geprägtem XRP entsprach, das niemals hätte existieren dürfen.
Das Problem wurde verschärft, weil die eingebaute Sicherheitsprüfung des Ledgers – die sicherstellen soll, dass keine Transaktion XRP erzeugt – auf derselben fehlerhaften Arithmetik basierte. Sie überlief identisch und erkannte nichts. Laut den Betreibern hätte ein Angreifer in einer einzigen Transaktion spendbares XRP weit über die Gesamtmenge des Tokens hinaus erzeugen und es anschließend verschieben, handeln oder an Börsen senden können. Diese Prüfung ist der Mechanismus, auf den sich das Ledger verlässt, um zu garantieren, dass keine Transaktion neues XRP erzeugen kann – und sie versagte stillschweigend neben genau dem Code, den sie überwachen sollte.
RippleX-Ingenieure bestätigten, dass der Fehler seit der Erstellung der aktuellen Payment-Engine im Jahr 2015 vorhanden war. Er blieb unbemerkt, weil keine gewöhnliche Zahlung auch nur nahe an den Auslösen des Überlaufs herankommt, und es gibt keine Hinweise darauf, dass er je ausgenutzt wurde, so das Team.
Der Fix erschien in Version 3.4.1 am 25. September, und mehr als 80% der Trusted Validators des Netzwerks liefen an diesem Tag bereits damit. Bemerkenswert ist, dass der Patch den üblichen Amendment-Prozess des Ledgers umging, der von Validatoren eine Abstimmung und zwei Wochen Wartezeit erfordert, bevor eine Änderung in Kraft tritt. Es war das erste Mal, dass eine transaktionsverarbeitende Änderung seit Einführung des Systems vor als einem Jahrzehnt bewusst auf diese Weise ausgerollt wurde. Die Betreiber begründeten die Abweichung mit dem Schweregrad, da die Veröffentlichung des Open-Source-Fixes den Fehler offengelegt hätte, während er noch wochenlang ausnutzbar geblieben wäre. Da die Schwachstelle nun öffentlich ist, haben alle Validatoren, die noch eine frühere Version einsetzen, sowohl den Grund als auch die Lösung zur Hand – ein Upgrade auf 3.4.1 entfernt die fehlerhafte Arithmetik aus der Zahlungsabwicklung dieses Knotens.
Die Offenlegung erinnert an den Fälschungsschock, der Zcash earlier dieses Jahres erschütterte, als die Privacy-Coin hastig einen Soundness-Fehler in ihrem Shielded Pool patchte, der gefälschte Münzen ermöglicht hätte. Dieser Vorfall ließ ZEC abstürzen, bevor das Ironwood-Upgrade des Netzwerks das Problem löste. Beide Vorfälle zielten auf dieselbe Art von Zusicherung ab: dass das Asset einer Blockchain nicht aus dem Nichts erzeugt werden kann, egal wie geschickt eine Transaktion konstruiert ist.
XRP kam unbeschadet durch die Woche nicht. Der Token wurde am Montag bei 1,38 $ gehandelt, 1,6% unter dem Stand von 24 Stunden – die schlechteste Performance unter den großen Kryptowährungen – und 9,4% unter dem Wert von vor sieben Tagen.