🇸🇰 Ako lacno zaútočiť na Blockchain?

Ako lacno zaútočiť na Blockchain?

Keď sa hovorí o útoku na blockchain, najčastejšie sa spomína útok 51 %. Zvyčajne sa hovorí, že útočník musí získať nadvládu nad zdrojom, ktorý sa používa v danom konsenze siete. To by malo byť nákladné. Útočník však nemusí vždy priamo kúpiť zdroj. Čo ak sa zdroj dá získať napríklad prostredníctvom sociálneho inžinierstva alebo hacknutím viacerých počítačov?

Je to príliš drahé

Blockchainové siete sú zo svojej podstaty zraniteľné. Ich bezpečnosť je založená na predpoklade, že útok je mimoriadne nákladný, t. j. že útočník nebude ochotný vynaložiť na útok viac zdrojov ako poctiví účastníci.

Získanie dominancie v držaní drahého zdroja, t. j. mincí ADA v prípade Cardana alebo hash rate v prípade Bitcoinu, je stávkou na istotu. Tento útok je však skutočne extrémne drahý.

Dominantné postavenie v držbe zdrojov umožňuje útočníkovi predbehnúť zvyšok siete v produkcii blokov. Útočníkovi sa otvára veľa možností, ako dominantné postavenie zneužiť.

Minimálne náklady na 51 % útok na Cardano by v súčasnosti predstavovali 3 miliardy USD. Vypočítame len nominálnu trhovú hodnotu mincí ADA, ktoré by útočník musel vlastniť. Zvýšený dopyt, ktorý by zvýšil trhovú hodnotu mincí, nie je vo výpočte zahrnutý. Útok by teda mohol byť drahší, ale o jeho reálnej výške môžeme len špekulovať.

Náklady na 51 % útok na Bitcoin sú približne 2× vyššie. Trhová hodnota všetkých ASIS, ktoré sa používajú na ťažbu BTC, je zhruba 6 miliárd USD. V súčasnosti (počas medvedieho trhu) by náklady na energiu pri útoku trvajúcom jeden mesiac boli 1B USD.

Pre kontext, rozpočet USA na obranu na rok 2023 je 816B USD. Z hľadiska peňazí by USA potenciálne potrebovali približne 1 % svojho obranného rozpočtu a mali by dostatok prostriedkov na útok na akúkoľvek blockchainovú sieť.

Predpokladajme, že nikto nie je ochotný riskovať stratu miliárd dolárov v dôsledku útokov na blockchainové siete. Existujú však lacnejšie spôsoby, ako sa pokúsiť o útok na 51 % bez toho, aby sme museli vlastniť zdroje.

Ako získať decentralizované zdroje lacnejšie?

Útočník má iné možnosti, ako sa dostať k zdrojom. Môže sa pokúsiť presvedčiť delegátov, aby delegovali do ich poolov. Môže delegovať mince ADA alebo hash rate do poolu útočníkov bez podozrenia, že delegovaný výkon bude niekedy v budúcnosti zneužitý na útok. Alebo sa môže pokúsiť presvedčiť prevádzkovateľov poolov, aby spolupracovali pri útoku.

Tento typ útoku si vyžaduje sociálne inžinierstvo a nemusí byť úplne voľný. Útočník musí založiť pool (alebo niekoľko poolov) a nejakým spôsobom presvedčiť delegátov, aby mu delegovali právomoci. Aby útočník zvýšil atraktívnosť svojho nekalého podnikania, musí delegátom ponúknuť nejakú dodatočnú odmenu.

V prípade Cardano by útočník musel poskytnúť vyššie odmeny, než aké ponúka protokol. Musel by ponúknuť odmeny za stávkovanie + nejaké ďalšie tokeny alebo stablecoiny. Útočník by musel podplácať delegátov a dúfať, že získa dostatok vkladov.

Druhou možnosťou je mať nulové poplatky. To by v prípade Cardana útočníkovi veľmi nepomohlo, pretože už existujú pooly, ktoré majú nulový poplatok za maržu (prevádzkovatelia však dostávajú fixný poplatok, v súčasnosti 340 ADA za epochu). Delegáti delegujú do týchto bazénov napríklad preto, že chcú podporiť konkrétneho operátora za jeho prácu pre komunitu.

V ekosystéme Bitcoinu sú baníci nútení znižovať náklady. Existencia bazénov s nulovými poplatkami by bola atraktívna. A takéto pooly existujú. Dva dominantné pooly, Foundry USA (39 % podiel na hash rate) a AntPool (24 % podiel na hash rate), majú nulové poplatky. Ťažiari radi delegujú do týchto združení, pretože to zvyšuje ich zisky.

Útočník by sa mohol pokúsiť konkurovať týmto poolom tým, že baníkom ponúkne niečo navyše, napríklad pravidelné vernostné odmeny. Samozrejme, mohlo by to byť drahé a stále existuje riziko, že útočník nezíska dostatok delegovanej hash rate.

Tento typ útoku je možný, ale má jednu veľkú nevýhodu. Vlastníci zdrojov môžu delegáciu kedykoľvek zmeniť, čím sa útočník oslabí. V prípade Bitcoinu sa zmena delegácie prejaví takmer okamžite. V prípade Cardana sa zmena prejaví s oneskorením (Cardano akceptuje zmeny v distribúcii podielov prostredníctvom snímok, ktoré robí každých 5 dní), takže spôsobené škody môžu byť vyššie. Okrem toho sa útočník môže pokúsiť cenzurovať transakcie, ktoré menia delegáciu.

Myslím si, že tento útok je len teoretický a v reálnom svete sotva uskutočniteľný. Rôznorodosť delegátov je pomerne vysoká a mnohí z nich budú konzervatívni alebo podozrievaví voči príliš atraktívnym ponukám. Útočník by mohol získať možno 10 %, možno 20 %, ale potom by sa mnohí členovia komunity zľakli a začali by delegátov upozorňovať na možné riziko.

Útočník by sa mohol pokúsiť o Sybilov útok, t. j. spustiť viacero bazénov (alebo byť viacerými MPO v Cardane). Tento útok by bol sofistikovanejší, ale stále ťažký, pretože pre nových prevádzkovateľov bazénov je ťažké získať delegátov.

Čo teda presvedčiť prevádzkovateľov poolov, aby spolupracovali na útoku?

Prevádzkovatelia poolov sú ekonomicky motivovaní k poctivému podnikaniu, ale útočník sa ich môže pokúsiť podplatiť, aby spolupracovali na útoku. Výšku úplatku je ťažké odhadnúť a každá osoba má inú hranicu, za ktorou je ochotná ekosystém zradiť. Povedzme, že úplatok v hodnote stonásobku ročnej odmeny (zisku za prevádzkovanie poolu) by presvedčil značný počet prevádzkovateľov.

V ekosystéme Cardano by útočník musel presvedčiť niekoľko desiatok prevádzkovateľov (v závislosti od ich podielu). Povedzme 50 operátorov. Každému by musel dať povedzme 5 miliónov USD. Útočník by na takýto útok vynaložil rádovo stovky miliónov USD, čo je menej, ako keby musel kúpiť mince ADA.

Otázkou je, či je možné nájsť a kontaktovať všetkých prevádzkovateľov poolov a zabezpečiť, aby ponuku neprezradili verejnosti. Čím viac ľudí je potrebné kontaktovať, tým je útok zložitejší. Vysoká decentralizácia je dobrou prevenciou tohto typu útoku.

V prípade Bitcoinu by útočník musel na svoju stranu získať aspoň jedného dominantného prevádzkovateľa poolu alebo oboch (spolu majú viac ako 62 % hash rate). Ich pooly majú nulové poplatky, takže nevieme, prečo podnikajú a aký je ich skutočný zisk. Dali by sa dominantní prevádzkovatelia poolov v sieti Bitcoin podplatiť rovnako lacno ako prevádzkovatelia v sieti Cardano, keď majú taký veľký podiel na trhu? Nevieme, ale pravdepodobne by si pýtali vyšší úplatok.

Krádež zdrojov

Ak nie je možné oklamať ľudí prostredníctvom sociálneho inžinierstva, čo tak ukradnúť im zdroje?

To môže byť pre útočníka najlacnejšia možnosť útoku, ale na druhej strane je z hľadiska uskutočniteľnosti náročná.

Mince ADA možno ukradnúť z centralizovaných búrz. Prípadne je možné podplatiť generálneho riaditeľa burzy, aby umožnil krádež. Týmto spôsobom môže útočník získať niekoľko percent (možno až niekoľko desiatok percent) mincí ADA z celkového obehu. Pre burzu veľký hack vždy znamená stratu reputácie, takže úplatok by musel byť veľmi vysoký. Nabúranie sa do burzy je lacná možnosť, ale vyžaduje si veľmi skúseného hackera alebo zasväteného pracovníka burzy.

Je možné pokúsiť sa ukradnúť mince ADA z peňaženiek stakerov a prevádzkovateľov bazénov, ale ak používajú hardvérové peňaženky (nevyhnutné bezpečnostné opatrenie pre prevádzkovateľov bazénov), je to takmer nemožné. Hacker teda musí zaútočiť na veľký počet osôb. Je možné týmto spôsobom ukradnúť povedzme 10 % mincí ADA? Zdá sa mi to nepravdepodobné.

Dá sa ukradnúť miera hashovania? Dočasne pravdepodobne áno, ale nie natrvalo ako mince ADA. Hacker by sa pravdepodobne mohol vlámať do počítačov ťažobnej spoločnosti a presmerovať hash rate do iného poolu. Zamestnanci spoločnosti by však pravdepodobne dokázali útok čoskoro odvrátiť vďaka svojej fyzickej prítomnosti.

Je však možné si predstaviť, že takýto útok by bol vykonaný na niekoľko ťažobných spoločností súčasne a na strane útočníka by bolo možné dočasne získať väčšie množstvo hash rate.

V prípade Bitcoinu sú slabým miestom 2 dominantné pooly. Ak by bolo možné ovplyvniť ich činnosť (krátkodobé vyradenie alebo zneužitie prideľovania práce baníkom), útočník by mohol dočasne získať kontrolu nad sieťou. Baníci nemusia byť schopní reagovať na útok okamžite a môže trvať určitý čas, kým zistia, čo sa vlastne deje.

Môžu byť ASIC baníci zabavení alebo ukradnutí? Je takmer nemožné ukradnúť veľké množstvo ASIC minerov v takom množstve, aby získali významnú kontrolu nad sieťou. Konfiškácia je však možná. V histórii Bitcoinu sa už stalo, že vláda zhabala veľký počet ASIC minerov. Vláda ich však nepoužila na útok na Bitcoin alebo na podnikanie, ale nechala ich zničiť.

Na baníkov možno zaútočiť politicky. Napríklad zavedením vysokej dane zo spotreby elektrickej energie na ťažbu BTC. O zavedení takejto dane sa uvažovalo v USA.

Keďže PoW využíva fyzický zdroj a ťažba je do veľkej miery centralizovaná, je ľahké nájsť miesta, kde sa ťažba uskutočňuje. Ťažobné spoločnosti sú väčšinou registrované na úradoch danej krajiny. Veľkých ťažiarov možno ľahko nájsť, na rozdiel od stakerov, ktorí môžu zostať v anonymite.

Ak by chcel útočník použiť hrubú silu na získanie kontroly nad sieťou, mohol by začať fyzicky ničiť veľké ťažobné haly. Tým sa však dopúšťa trestného činu a nemyslím si, že by toho bol niekto schopný. Anonymita ťažby a skutočnosť, že mince sú len virtuálne, je z tohto pohľadu výhodou. Pokiaľ ide o ponúkanie úplatkov za spoluprácu (alebo vynucovanie spolupráce vydieraním), útočník si medzi baníkmi ľahko nájde vhodných kandidátov.

Ak útočník ukradne mince ADA, má navždy podiel v sieti Cardano. Hash rate je ťažšie (takmer nemožné) ukradnúť, ale je možné ho dočasne presmerovať alebo odrezať ťažiarov od poolu. Na druhej strane, nájsť stakera (ako aj SPO) môže byť zložité. Útočník môže ťažiarov ľahko vystopovať.

Záver

Aká je najlepšia obrana proti opísaným vektorom útoku? Odpoveďou je takmer vždy vysoká decentralizácia a absencia akumulácie zdrojov na jednom mieste. Decentralizácia spočíva v absencii jediného bodu zlyhania v sieti. V praxi však často dochádza k centralizácii a tie bývajú pre útočníkov medovými hrncami. Zložitosť útoku sa zvyšuje s počtom aktérov, ktorých treba oklamať alebo presvedčiť, aby spolupracovali. Postupná centralizácia, ku ktorej dochádza takmer pri všetkých blockchainoch, oslabí bezpečnosť.

Každá existujúca blockchainová sieť má slabé miesta. Útočník má čas, môže kombinovať rôzne formy útokov a čakať na vhodný okamih na útok. Napríklad na dne medvedieho trhu, keď je trhová kapitalizácia projektov spravidla najnižšia a útoky sú zvyčajne lacnejšie.

Nemyslím si, že tieto typy útokov uvidíme v praxi v takom rozsahu, ktorý by ohrozil siete. Spoločenský a ekonomický význam blockchainov ešte nie je dostatočne vysoký na to, aby sa niekto pokúsil o útok s dostatočne veľkým kapitálom. Vlády nemusia útočiť na blockchain prostredníctvom drahého zdroja, ale (lacno) prostredníctvom ľudí, ktorí sa podieľajú na prevádzke siete. Som optimista a myslím si, že vlády budú akceptovať existenciu technológie blockchain a nebudú na ňu útočiť.


Pôvodný článok: How to Attack Blockchain Cheaply? | Cardano Explorer (cexplorer.io)

1 Like