Zcash-Community erwägt neuartige Lösung zur Überprüfung von Token-Beständen nach jüngstem Smart-Contract-Fehler

Shielded Labs schlug ein neues Zcash-Netzwerk-Upgrade vor, das es jedem ermöglichen würde, zu überprüfen, ob der Vorrat an Privacy Coins nicht heimlich überhöht wurde, nachdem bekannt wurde, dass ein kürzlich behobener Fehler im Haupt-Shield-Pool des Netzwerks eine nicht nachweisbare Fälschung von $ZEC ermöglicht haben könnte.
Shielded Labs, eine gemeinnützige Organisation, die die Entwicklung von Zcash finanziert, der nach Marktwert etwa elftgrößten Kryptowährung, sagte in einem Blogbeitrag, dass die Schwachstelle seit ihrer Einführung im Mai 2022 im Orchard-Pool unentdeckt geblieben sei, bis sie diese Woche von Ingenieuren geschlossen wurde.
Laut CoinGecko-Daten hat $ZEC die Gewinne der Woche umgekehrt und ist in den letzten sieben Tagen um 16 % gesunken und in den letzten 24 Stunden um 25 % gefallen, als der Fehler ans Licht kam.
Laut Shielded-Supply-Trackern hält Orchard, der neueste und größte abgeschirmte Pool von Zcash, mehr als 4 Millionen ZEC, den Großteil der rund 30 % des Angebots, das sich in privaten Pools befindet.
Die Episode beleuchtet einen Kompromiss im Herzen von Privacy Coins. Dieselbe Kryptografie, die Salden verbirgt, macht es auch unmöglich, allein anhand der Kette nachzuweisen, ob ein Fehler missbraucht wurde. Shielded Labs sagte, es gebe keine Möglichkeit, kryptografisch festzustellen, ob jemand den Fehler vor der Behebung ausgenutzt habe, hielt eine vorherige Ausnutzung jedoch für unwahrscheinlich.
Wie der Fehler gefunden wurde
Der unabhängige Sicherheitsforscher Taylor Hornby entdeckte den Fehler am 29. Mai während einer von Shielded Labs in Auftrag gegebenen Prüfung und legte ihn noch am Abend den Ingenieuren des Zcash Open Development Lab (ZODL) offen, der Gruppe, die das Protokoll verwaltet.
Shielded Labs sagte, Hornby habe das Opus 4.8-Modell von Anthropic, das angeblich am 28. Mai veröffentlicht wurde, zusammen mit einem benutzerdefinierten KI-Tool verwendet, um einen funktionierenden Exploit zu schreiben, der in einer lokalen Testumgebung unbegrenzt gefälschte $ZEC generierte. Laut Shielded Labs hätte das gleiche Tool im Mainnet unbegrenzt und nicht nachweisbar gefälschtes $ZEC produziert.
Das Problem war ein Soliditätsfehler, was bedeutete, dass das Netzwerk dazu gebracht werden konnte, eine Transaktion zu akzeptieren, die es hätte ablehnen sollen. Der Ursprung liegt in einem unterbeschränkten Teil des Orchard-Schaltkreises, der es einem Angreifer ermöglichte, falsche Eingaben durch eine Elliptic-Curve-Prüfung weiterzuleiten und die Prüfung trotzdem zu bestehen, so Shielded Labs.
Shielded Labs beschrieb die Auswirkung als die Möglichkeit, innerhalb von Orchard unbegrenzte, nicht nachweisbare gefälschte $ZEC zu erstellen.
Die Gesamtversorgung bleibt erhalten
Die Zcash Foundation, die die Zebra-Software für den Betrieb des Netzwerks entwickelt, beschrieb das Risiko in einem am Mittwoch veröffentlichten Beitrag. Darin hieß es, die Ausbeutung hätte Doppelausgaben innerhalb von Orchard ermöglichen können, aber das Gesamtangebot an ZEC-Dollar, das durch die „Drehkreuz“-Buchhaltung des Netzwerks begrenzt ist, nicht erhöht. Das Drehkreuz begrenzt, wie viel Wert jeden Pool verlassen kann, auf den Betrag, der in ihn gelangt ist.
Die Stiftung sagte, das Drehkreuz habe bestätigt, dass der Gesamtvorrat intakt geblieben sei und dass es keine Hinweise auf eine unbefugte Wertschöpfung gebe. Beide Gruppen sind sich einig, dass der Fehler vor jeder bekannten Ausnutzung erkannt wurde und dass die Privatsphäre der Benutzer nicht beeinträchtigt wurde.
Wie der Fix eingeführt wurde
Nach einer privaten Abstimmung mit Bergleuten und Börsen, die am 31. Mai begann, veröffentlichten die Ingenieure einen Notfall-Soft Fork, der Orchard-Transaktionen deaktivierte. Es wurde am 2. Juni bei Block 3.363.426 aktiviert. Ein Hard-Fork-Upgrade namens NU6.2 habe Orchard dann am 3. Juni bei Block 3.364.600 mit einer korrigierten Schaltung wieder aktiviert, teilte die Stiftung mit. Es bezeichnete die Reaktion als das zweite sicherheitsorientierte Upgrade in der Geschichte von Zcash seit dem Start des Netzwerks im Jahr 2016. Der Fix wird in einer Sicherheitswarnung von Zebra nachverfolgt.
Die Übertragungen von Obstgärten wurden während des Fensters eingefroren, während transparente und Setzlingstransaktionen weiter liefen. Einige Block-Explorer zeigten danach kurzzeitig keine neuen Blöcke an, was die Verwirrung schürte, dass das Netzwerk ausgefallen sei.
Das vorgeschlagene Upgrade
Laut Shielded Labs schließt NU6.2 den Fehler, beweist aber nicht, dass die Orchard-Versorgung nie manipuliert wurde. Sein Vorschlag würde einen neuen geschützten Pool einrichten und alle Münzen, die Orchard verlassen, durch die Drehkreuzbuchhaltung leiten, sodass jeder überprüfen kann, dass keine gefälschten $ZEC vorhanden sind.
Wie jedes größere Upgrade bräuchte es die Unterstützung der Community und müsste vor der Aktivierung den Governance-Prozess von Zcash durchlaufen. Shielded Labs sagte, es plane, die Details nächste Woche zu veröffentlichen.
Die koordinierte Reaktion stieß auf Kritik. Einige Entwickler und Kommentatoren argumentierten, dass die vertrauliche Lösung, die auf einer kleinen Gruppe von Ingenieuren, Minern und Börsen beruhte, zeige, wie zentralisiert die Notfallreaktion des Netzwerks sein könne, und fragten sich, ob abgeschirmte Pools jemals vollständig geprüft werden könnten.