Prawie 200 000 XRP zostało wypompowanych z mostu Coreum XRPL 9 sierpnia po tym, jak atakujący najwyraźniej wykorzystał lukę w logice przekaźnika, a nie podatność w samym XRP Ledger.
Podsumowanie
- Prawie 200 000 XRP opuściło most Coreum w 94 podpisanych płatnościach podczas 97-minutowego ataku.
- Analiza blockchain wykazała, że 17 z 28 podpisów przekaźników autoryzowało każdą wypłatę XRP z mostu.
- Kod przekaźnika przetwarzał udane płatności z notami mostu bez uprzedniego weryfikowania adresu docelowego płatności.
- Dokumentacja XRPL potwierdza, że natywny XRP nie ma linii zaufania, co bezpośrednio przeczy wstępnemu wyjaśnieniu o ripplingu.
- Coreum nie opublikował oficjalnego raportu o incydencie do wtorku, podczas gdy most pozostawał wstrzymany.
Opublikowana 11 sierpnia analiza łańcucha wykazała, że 199 916,3 XRP opuściło konto mostu w 94 płatnościach w ciągu 97 minut.
Most posiadał około 200 410 XRP przed rozpoczęciem sekwencji o 19:16 UTC. Do 20:53 UTC jego saldo spadło do 493,5 XRP. Każda wychodząca płatność XRP nosiła autoryzację multisig samego mostu, z 17 podpisami z 28 kluczy przekaźników. Dowody nie wskazują, że te klucze zostały skradzione.

Przekaźniki mostu XRP pomyliły własne płatności z depozytami
Atak wydaje się celować w sposób, w jaki przekaźniki Coreum interpretowały transakcje. Atakujący najpierw przeniósł własny opakowany token Coreum mostu między portfelami pod swoją kontrolą, dołączając notę sformatowaną dla mostu. Te transakcje pojawiły się w historii konta mostu, ponieważ konto emituje opakowany token.
Publiczny kod przekaźnika sprawdza, czy płatność się powiodła, wyodrębnia odbiorcę Coreum z noty i odczytuje dostarczoną kwotę przed przesłaniem dowodu depozytu. Jednak opublikowany przepływ przetwarzania nie porównuje miejsca docelowego płatności z adresem mostu. To pozwoliło na interpretowanie transferów między portfelami z odpowiednią notą jako depozytów.
XRPL.to ustaliło, że 21 przekaźników poświadczyło pierwszą fantomową transakcję atakującego. Gdy wystarczająca ilość pasujących dowodów dotarła do kontraktu Coreum, system zaksięgował salda, które nie były poparte prawdziwymi depozytami. Atakujący następnie wykorzystał normalny proces wypłat mostu, skłaniając jego przekaźniki do autoryzacji prawdziwych płatności XRP.
Ten wzorzec przypomina szerszy problem bezpieczeństwa mostów omawiany w niedawnych raportach o bezpieczeństwie: systemy cross-chain mogą zawieść nawet wtedy, gdy ich bazowe blockchainy pozostają bezpieczne, jeśli mechanizm weryfikujący zdarzenia na innym łańcuchu akceptuje nieprawidłowe informacje.
Dane XRP Ledger przeczą teorii ripplingu
Wstępne ostrzeżenie obwiniało „rippling” i ustawienie DefaultRipple konta mostu. Późniejsza analiza transakcji odrzuciła to wyjaśnienie. Dokumentacja XRP Ledger stwierdza, że rippling dotyczy wyemitowanych aktywów przechowywanych za pośrednictwem linii zaufania. Natywny XRP nie używa tych linii zaufania.
Zapis transakcji zapewnia kolejne rozróżnienie. XRPL.to przypisało wszystkie 199 916,3 XRP usunięte z konta do płatności podpisanych przez sam most i nie znalazło żadnego XRP opuszczającego konto trasą ripplingu. Ustaliło również, że transakcje nie były płatnościami częściowymi.
Incydent nie wskazuje zatem obecnie na awarię konsensusu XRP Ledger. To rozróżnienie jest istotne po tym, jak deweloperzy niedawno wzmocnili przegląd oprogramowania XRPL i proponowanych funkcji, o czym pisaliśmy w poprzednim artykule o audycie oprogramowania. Incydent Coreum skupia się natomiast na oprogramowaniu łączącym dwie niezależne sieci.
Skradzione XRP przemieszcza się dalej, podczas gdy most pozostaje wstrzymany
Dwa początkowe portfele odbiorcze przekazały prawie całe XRP w ciągu kilku godzin. XRPL.to wyśledziło około 169 000 XRP na dwóch kontach pośredniczących utworzonych 28 czerwca, a kolejne około 34 000 XRP przesłano do trzech innych portfeli. Analiza nie zidentyfikowała atakującego.
Po 20:53 UTC 9 sierpnia żadne dalsze XRP nie opuściło mostu. Jego konto wykonało jedną dodatkową transakcję tokenem opakowanym wczesnym rankiem następnego dnia, po czym zamilkło, a kontrakt mostu został następnie zgłoszony jako wstrzymany. Coreum nie opublikowało oficjalnego raportu po incydencie, gdy 11 sierpnia opublikowano analizę.







