Sztuczna inteligencja wykryła błąd, który mógł doprowadzić do wygenerowania 18 bilionów XRP. Nagroda wyniosła 250 000 dolarów.
Agent firmy Veria Labs wykrył występujący od dziesięciu lat błąd przepełnienia w rejestrze XRP. Naprawa zajęła trzy dni. Spór dotyczy wysokości nagrody.
Jedna transakcja. Około 18,45 biliona XRP, czyli 184-krotność całkowitej podaży tego tokenu wynoszącej 100 miliardów, wygenerowanych z niczego i gotowych do wydania w momencie zamknięcia rejestru. Właśnie to wykrył agent AI z Veria Labs w silniku płatności rejestru XRP Ledger, w kodzie działającym od 2015 roku.
Nikomu się to nie udało. W raporcie ujawniającym lukę, sporządzonym przez samą XRPL, stwierdzono, że „nie ma dowodów na to, że luka ta została wykorzystana w jakiejkolwiek sieci publicznej”. Firma RippleX załatała lukę w ciągu trzech dni od opublikowania raportu, a firma Veria otrzymała 250 000 dolarów – najwyższą kwotę przewidzianą w programie nagród za wykrycie błędów. Badacz łańcucha bloków ZachXBT uznał tę wypłatę za skromną, a dyskusja na ten temat trwa do dziś.
Dwa przepełnienia, jedna bardzo niekorzystna transakcja
Kiedy płatność wyczerpuje stos ofert w księdze zleceń po tej samej cenie, silnik sumuje kwotę, jaką kupujący jest winien. Suma ta była reprezentowana przez 64-bitową liczbę całkowitą z podpisem, bez kontroli na przepełnienie. Wystarczy wprowadzić wystarczająco dużo ogromnych ofert, a suma zawija się do bardzo małej wartości. Każdy właściciel oferty nadal otrzymuje pełną zapłatę. Kupujący jest obciążany zawiniętą kwotą. Różnica to zupełnie nowe XRP.
Rejestr posiada zabezpieczenie właśnie przed tym – niezmiennik, który odrzuca każdą transakcję powodującą powstanie XRP. Zmiany salda sumował w ten sam sposób, w tego samego rodzaju liczniku, więc zawał miał miejsce w ten sam sposób i system uznał to jedynie za zwykłe spalenie opłaty. W artykule Verii podano, że kod agregujący oferty pochodzi z listopada 2015 r., a niezmiennika z lutego 2017 r.
Schemat działania był niemal obraźliwie prosty: 256 ofert, z których każda dotyczyła około 72 miliardów XRP, a następnie jedna płatność, która je wszystkie pochłonęła. XRPL egzekwuje limit 100 miliardów na konto, więc wyemitowane monety musiały zostać rozdzielone między 256 portfeli. Według zespołu XRPL rzeczywisty koszt atakującego wyniósł kilkaset XRP w postaci zwrotnych rezerw plus opłaty. Nie mogło to również nastąpić przypadkowo, ponieważ żadna zwykła transakcja nawet nie zbliża się do punktu przepełnienia.
Cayden Liao, współzałożyciel firmy Veria odpowiedzialny za bezpieczeństwo, napisał na X, że każda z tych luk osobno zostałaby oceniona jako mało poważna i podejrzewa, że właśnie dlatego przez dekadę audytów nie udało się ich wykryć. Veria twierdzi, że później skierowała na ten sam kod narzędzia do ogólnego skanowania kodu, ale i one nie były w stanie go znaleźć.
Jak duża jest kwota 18 bilionów?
To zależy od tego, kto liczy. Veria wycenia łup na około 29 bilionów dolarów. Inne publikacje podają kwotę około 25 bilionów dolarów. Obie wartości są czysto teoretyczne, ponieważ nikt nie sprzedaje 18 bilionów tokenów na rynku, którego wartość najpierw spadłaby do zera. Veria przedstawia sprawę w sposób trzeźwy: zagrożona była cała kapitalizacja rynkowa XRP wynosząca 94 miliardy dolarów, czyli ponad 60-krotność kwoty 1,5 miliarda dolarów z Bybit – największego w historii włamania.
Trzy dni, brak głosowania
Przedstawiciel firmy Veria zgłosił błąd w poniedziałek, 21 września. Został on zgłoszony i potwierdzony 22 września, poprawka została wdrożona 23 września, a wersja xrpld 3.4.1 została udostępniona 25 września – ponad 80% domyślnych walidatorów UNL już z niej korzysta.
Zazwyczaj XRPL zmienia zasady transakcji poprzez poprawkę. Walidatorzy głosują, a następnie przez dwa tygodnie musi utrzymać się poparcie na poziomie ponad 80%. Jak wynika z raportu, w przypadku tej poprawki pominięto cały ten proces – po raz pierwszy od ponad dekady. Uzasadnienie: xrpld jest oprogramowaniem typu open source, więc wprowadzenie poprawki spowodowałoby nagłośnienie błędu przez wiele tygodni, podczas gdy nadal można by go wykorzystywać. Raport przyznaje, że wiązało się to z pewnym ryzykiem. W trakcie okresu aktualizacji serwery korzystające z różnych wersji mogłyby nie osiągnąć porozumienia w sprawie transakcji wykorzystującej lukę, a w najgorszym przypadku sieć mogłaby ulec zatrzymaniu. Zespół uznał, że zatrzymanie sieci jest lepszym rozwiązaniem niż publiczne emisje w czasie rzeczywistym.
Nie wszystkim spodobał się ten kompromis. Justin Bons z Cyber Capital napisał, że XRP przez dwa tygodnie działało na kodzie zamkniętym, ponieważ kod źródłowy wersji 3.4.1 pojawił się znacznie później niż pliki binarne. Inżynier RippleX, Mayukha Vadari, odpowiedział, że „sztuczna inteligencja zmieniła sytuację”: jeśli umieści się krytyczną poprawkę w rutynowej publicznej aktualizacji, zostanie ona niemal natychmiast poddana inżynierii odwrotnej.
Ta sama aktualizacja naprawiła oddzielny błąd w funkcji Batch, która nie została jeszcze uruchomiona. Ta poprawka oraz sama funkcja Batch zostały aktywowane w piątek, 9 października, a serwery korzystające ze starszych wersji nie mogą już dłużej pozostawać zsynchronizowane.
Walka o 250 000 dolarów
Dzień po opublikowaniu raportu ujawniającego fundacja XRP Ledger Foundation opublikowała wątek z wyjaśnieniami. Stwierdzono w nim, że nie powstały żadne tokeny XRP, a podaż pozostaje stała. Obiecano również formalną weryfikację, testy adversarialne z wykorzystaniem sztucznej inteligencji oraz ulepszony program nagród, bez podania konkretnej kwoty w dolarach.
Następnie głos zabrał ZachXBT. Dlaczego fundusz dysponujący miliardami płaci „białemu kapeluszowi” 250 000 dolarów za błąd umożliwiający nieograniczoną podaż? Jego odpowiedź: następnym razem atakujący może dążyć do „kwoty dziewięciocyfrowej zamiast zgłaszać to w dobrej wierze”. Serwis BlockTempo donosi, że kilka minut później dodał, twierdząc, że odkrycie zasługiwało na co najmniej siedmiocyfrową kwotę, i wskazując na Zcash. Posiadacze tokenów Zcash zatwierdzili kwotę 1,5 miliona dolarów dla Taylora Hornby’ego, który w maju odkrył błąd umożliwiający fałszowanie w systemie Orchard przy pomocy Claude’a Opusa 4.8: nagrodę w wysokości 750 000 dolarów oraz dotację społecznościową w wysokości 750 000 dolarów, które wciąż oczekują na weryfikację zgodności, jak podaje crypto.news.
Obrońcy XRP postrzegają to inaczej. 250 000 dolarów to opublikowany pułap programu, a Veria złożyła wniosek, otrzymała maksymalną kwotę i podziękowała zespołowi XRPL we własnym poście. Veria nazywa to nawet największą znaną jej wypłatą za błąd wykryty w całości przez agenta AI. BlockTempo donosi, że osoba określająca się jako współpracownik Fundacji, Vet, odpowiedziała, że zgadza się z strukturą zachęt. Szef działu inżynierii RippleX, J. Ayo Akinyele, powiedział, że zespół rozszerzy wspierane przez AI poszukiwanie błędów oraz formalną weryfikację.
Część, której nikt nie może naprawić
Veria nie postąpiła niewłaściwie, podobnie jak program, który wypłacił kwotę zgodną z ogłoszeniem. Problemem jest limit. 250 000 dolarów to około 0,0003% wartości rynkowej, która według Verii została narażona na ryzyko, a sama podstawowa nagroda w sieci Zcash była trzykrotnie wyższa.
Sztuczna inteligencja sprawia, że wykrywanie starych błędów staje się tańsze dla wszystkich. Veria wskazuje na letni wyciek z Coldcard, w wyniku którego skradziono 1 367 BTC poprzez pięcioletni błąd oprogramowania sprzętowego, który, jak podejrzewa Coinkite, został wykryty przy pomocy sztucznej inteligencji. Tym razem osoba, która wykryła błąd, złożyła zgłoszenie. Następny odkrywca może inaczej wycenić swoją decyzję, i właśnie o to chodzi ZachowiXBT – trudno zaprzeczyć tej arytmetyce.
W momencie pisania tego artykułu nie ogłoszono żadnego dofinansowania dla Verii ani nowego limitu nagrody.

Bonus od depozytu w wysokości 5% do 100 klejnotów

0% opłat za wpłaty i wypłaty skin.


11% bonus od depozytu + FreeSpin
DODATKOWY BONUS OD DEPOZYTU 10% + DARMOWE 2 SPINY NA KOLE
Darmowe etui i 100% bonus powitalny
5 darmowych skrzyń, codzienne gratisy i bonusy

3 darmowe skrzynki i bonus 5% dodawany do wszystkich depozytów gotówkowych.

+5% do depozytu


Komentarze