Prečo sú kryptomosty najzraniteľnejším bodom ekosystému Web3 (a ako sa to mení)
Kryptomosty prepájajú blockchainové siete, no ich architektúra z nich robí častý cieľ útokov, pri ktorých sa v posledných rokoch stratili miliardy dolárov. Zistite, prečo sú mosty zraniteľné, ktoré technológie zlepšujú bezpečnosť a čo si overiť pred prevodom prostriedkov.
Obsah:
Kryptomosty (angl. "bridges") umožňujú prenos aktív a dát medzi rôznymi blockchainovými sieťami, ktoré samy o sebe nedokážu "komunikovať" navzájom.
Bez nich by neexistovali prevody ETH na Solanu, wrapped BTC na Ethereume ani likvidita prúdiaca medzi desiatkami riešení Layer 2.
Práve táto úloha sprostredkovateľa však urobila z mostov jeden z častejších cieľov útokov v kryptopriestore. Dôvodom nie je náhoda, ale samotná architektúra, na ktorej sú postavené.
Prečo sú mosty štrukturálne zraniteľné
V jadre robí každý most jednu vec: zamkne (alebo spáli) aktívum na zdrojovom reťazci a vydá ekvivalentnú, "wrapped" verziu na cieľovom reťazci.
To znamená, že niekde musí existovať zmluva, tzv. vault, v ktorej sa nachádza celá zamknutá hodnota. Táto zmluva predstavuje jedinečný, koncentrovaný rizikový bod: zatiaľ čo dôsledky útoku na jednotlivú DeFi platformu sa zvyčajne obmedzujú na jej vlastných používateľov, dôsledky útoku na most sa môžu dotknúť všetkých, ktorí cez neho niekedy previedli prostriedky.
Druhým problémom je model dôvery. Väčšina mostov sa aj dnes spolieha na skupinu validátorov alebo multisig signatárov, ktorí potvrdzujú, že transakcia na zdrojovom reťazci sa naozaj uskutočnila, skôr ako schvália uvoľnenie prostriedkov na cieľovom reťazci.
Tento model je rýchly a lacný na implementáciu, no v konečnom dôsledku ide o dôveru voči obmedzenému počtu ľudí a ich súkromným kľúčom - a práve tieto kľúče sú najčastejším bodom kompromitácie, či už prostredníctvom krádeže, sociálneho inžinierstva, alebo phishingových útokov zameraných na jednotlivých signatárov.
Napokon, most musí zosúladiť zdrojový a cieľový reťazec: dva systémy, ktoré často majú úplne odlišnú logiku konsenzu, rýchlosť finality transakcií a spôsob zaznamenávania stavu.
Napríklad Bitcoin zaznamenáva prostriedky prostredníctvom modelu UTXO (jednotlivé "mince", ktoré sa minú), zatiaľ čo Ethereum alebo Solana používajú účtový model (stav sa aktualizuje v rámci účtu, podobne ako pri bankovom výpise).
Keď musí most preložiť udalosť z jedného systému do druhého, vývojársky tím musí tento rozdiel manuálne modelovať v kóde zmluvy - a práve pri tomto preklade, v logike, ktorá overuje, či je podpis alebo dôkaz skutočne platný, najčastejšie vznikajú jemné chyby, ktoré je ťažké odhaliť aj počas dôkladných auditov.
Rozsah problému
História to potvrdzuje číslami.
Vezmime si príklad mostu Ronin, ktorý v roku 2022 podporoval hru Axie Infinity: tento most na schválenie transakcií vyžadoval podpisy piatich z celkovo deviatich validátorov.
Predstavte si to ako trezor, ktorý sa otvorí len vtedy, ak päť z deviatich strážcov súčasne otočí svoj kľúč.
Útočníci spájaní so severokórejskou skupinou Lazarus neprelomili kryptografiu - namiesto toho falošnou pracovnou ponukou oklamali zamestnancov spoločnosti, ktorá kontrolovala štyri z deviatich kľúčov.
Piaty kľúč získali preto, lebo jedna DAO organizácia (decentralizovaná komunita, ktorá hlasuje o rozhodnutiach) predtým dočasne udelila mostu oprávnenie používať jej podpis - oprávnenie, ktoré nikdy nebolo odvolané.
Namiesto hackovania systému tak jednoducho zhromaždili dostatok "strážcov" - a vyplatili si 173 600 ETH a 25,5 milióna USDC.
V tom istom roku sa udiali ešte dva podobné útoky.
Most Wormhole prišiel o 320 miliónov dolárov po tom, čo sa podarilo sfalšovať podpis jedného z jeho "guardian" validátorov; zmluva falzifikát nerozpoznala a schválila výplatu.
Most Nomad prišiel o takmer 200 miliónov dolárov ešte neobvyklejším spôsobom: prvá osoba, ktorá objavila chybu umožňujúcu výber prostriedkov bez platného dôkazu, ju využila, a len čo sa to rozšírilo, stovky ďalších používateľov zopakovali rovnakú transakciu, čím most v priebehu niekoľkých hodín prišiel o významnú časť svojich prostriedkov.
Keď to všetko spočítame, obraz sa vyjasní. Podľa analytickej spoločnosti Chainalysis bolo len v období 2021-2023 z mostov ukradnutých viac ako 2,5 miliardy dolárov, zatiaľ čo širšie odhady stanovujú celkové straty mostov od roku 2021 doteraz na viac ako 2,8 miliardy dolárov.
Najzaujímavejšie na všetkých týchto číslach je opakujúci sa vzorec: takmer všetky veľké straty sa udiali na mostoch, ktoré sa pri potvrdzovaní platnosti transakcie spoliehajú na obmedzený počet ľudí alebo validátorov (tzv. mosty s nižšou úrovňou dôvery).
Mosty, ktoré namiesto ľudí využívajú kryptografické, matematické overovanie - o čom hovoríme podrobnejšie ďalej - zostali doteraz prakticky nedotknuté. Inými slovami, riziko rastie všade tam, kde bezpečnosť mostu závisí od konania jednotlivcov, a nie od kryptografického overenia.
Ako sa situácia mení
Odvetvie si z týchto útokov odnieslo jasné ponaučenie: dlhodobým riešením nie je silnejší multisig, ale úplné odstránenie ľudského prvku z procesu overovania.
Z toho vyplývajú tri smery vývoja, ktoré v súčasnosti formujú bezpečnejšiu generáciu mostov.
Overovanie light client a zero-knowledge
Namiesto dôvery voči skupine validátorov si cieľový reťazec sám overuje, čo sa udialo na zdrojovom reťazci, podobne ako keď si niekto sám preskúma dokumenty namiesto toho, aby veril cudziemu slovu, že sú v poriadku.
V pokročilejšom variante sa využíva dôkaz zero-knowledge: matematický záznam potvrdzujúci, že sa transakcia uskutočnila, bez toho, aby to musel ktokoľvek opätovne overovať prostredníctvom celej histórie reťazca.
Bezpečnosť mostu tak už nezávisí od toho, či sú validátori čestní, ale výlučne od toho, či je matematika správna.
Protokol IBC od Cosmos tento prístup využíva už roky a čoraz viac mostov na Ethereume prechádza na podobný model, hoci takáto infraštruktúra sa buduje ťažšie a pomalšie.
Natívne a kanonické mosty
Keď most aktívum "zabalí" (wrap), v skutočnosti vytvorí novú, syntetickú verziu tokenu, ktorá predstavuje originál zamknutý inde.
Napríklad wrapped BTC na Ethereume nie je skutočný Bitcoin, ale dlhopis, ktorý má hodnotu len takú, akú má zmluva, ktorá ho vydáva. Každá takáto zabalená verzia predstavuje ďalší bod, ktorý vyžaduje vlastnú úroveň zabezpečenia.
Preto čoraz viac projektov prechádza na iný prístup: namiesto balenia sa token spáli na jednom reťazci a identický, kanonický token sa vydá na druhom.
Presne to robí protokol Circle pre USDC. Výsledkom je menší počet rôznych "verzií" toho istého tokenu v obehu, čo zjednodušuje celý systém a znižuje počet komponentov, o ktoré je potrebné sa starať.
Distribuované siete validátorov
Namiesto toho, aby celá bezpečnosť mostu spočívala na jednej pevnej skupine validátorov, novšie architektúry kombinujú viacero nezávislých sietí, ktoré si navzájom overujú prácu, vďaka čomu každá ďalšia sieť zvyšuje celkovú spoľahlivosť systému.
K tomu čoraz častejšie pribúdajú ďalšie "brzdiace" mechanizmy: timelocky, ktoré oneskorujú väčšie výplaty s cieľom ponechať priestor na reakciu, automatické pauzy hneď, ako systém zaznamená niečo nezvyčajné, a poistenie, ktoré klientom nahrádza straty, ak by aj napriek tomu došlo k narušeniu.
Praktické odporúčania
Odkaz je jednoduchý: každý most je aktívnou súčasťou systému, nielen neutrálnou rúrou, cez ktorú aktíva len prechádzajú.
Každý most nesie vlastný rizikový profil v závislosti od toho, či sa spolieha na ľudí, alebo na kryptografiu.
Pred prevodom väčšej hodnoty cez akýkoľvek most sa oplatí overiť, aký model overovania používa, ako dlho funguje bez incidentov a či prešiel nezávislým auditom.
Bezpečnejšia budúcnosť interoperability Web3 sa buduje práve znižovaním počtu miest, kde je potrebné vkladať dôveru do ľudí - a čoraz viac na miestach, kde ju jednoducho nahrádza matematika.
