Ievads
Eklipses uzbrukums ir relatīvi vienkāršs uzbrukums, ko ļaunprātīgs dalībnieks var izmantot, lai traucētu mezglus tīklā. Kā nosaukums varētu liecināt, uzbrukuma mērķis ir apgrūtināt dalībnieka skatījumu uz peer-to-peer tīklu, lai radītu vispārēju traucējumu vai sagatavotos sarežģītākiem uzbrukumiem.
Eklipses uzbrukumi var izklausīties līdzīgi, virspusēji, kā Sybil uzbrukumi. Lai gan tiem ir noteiktas līdzības – ļaunprātīgais dalībnieks pārpludina tīklu ar viltus kolēģiem – to galvenais mērķis galu galā ir atšķirīgs. Eklipses uzbrukums vēršas pret vienu mezglu (kā skaidrots vēlākajā sadaļā), savukārt Sybil uzbrukums ir tīkla līmeņa uzbrukums, kas paredzēts, lai manipulētu ar protokola reputācijas sistēmu.
Koncepts tiek apspriests plaši 2015. gada dokumentā Eklipses uzbrukumi uz Bitcoin peer-to-peer tīkla, kurā Bostonas universitātes un Ebreju universitātes pētnieki ziņo par saviem atklājumiem, veicot eklipses uzbrukumus, kā arī par iespējamajiem pretpasākumiem to apkarošanai.
Kā darbojas eklipses uzbrukums
Bitcoin ieguvējiem ir nepieciešama specializēta iekārta, lai ģenerētu jaunus blokus, bet neiegūstošie (vai pilni) mezgli ir viegli palaidami uz minimālas aprēķinu jaudas. Tas veicina Bitcoin decentralizāciju, jo ikviens var izveidot mezglu uz zemas specifikācijas ierīces. Programmatūra uztur darījumu datubāzi, ko tā sinhronizē ar saviem tuvākajiem kolēģiem, lai paliktu saskaņā ar tīklu.
Daudziem mezgliem ierobežojošs faktors ir joslas platums. Lai gan programmatūru darbojas milzīgs ierīču skaits, vidējā ierīce nespēj tieši savienoties ar daudziem no tiem, ņemot vērā Bitcoin programmatūrā noteiktos ierobežojumus (kas atļauj ne vairāk kā 125 savienojumus).
Eklipses uzbrukumā ļaunprātīgais dalībnieks nodrošinās, ka visi mērķa savienojumi tiek veikti uz uzbrucēja kontrolētajiem mezgliem. Entitāte vispirms pārpludinās mērķi ar savām IP adresēm, kurām upuris, visticamāk, savienosies pēc programmatūras restartēšanas. Restartēšanu var piespiest (t.i., ar DDoS uzbrukumu mērķim), vai uzbrucējs var vienkārši gaidīt, līdz tā notiks.
Kad tas ir noticis, nevainīgais upuris ir ļaunprātīgo mezglu žēlastībā – bez plašāka tīkla skatījuma, viņam var tikt sniegti nepareizi dati no uzbrucēja.
Eklipses uzbrukuma sekas
Ja uzbrucējs tērē resursus, lai alienētu kolēģi no tīkla, viņam visticamāk ir iemesls to darīt. Ir daži secīgi uzbrukumi, kurus var vieglāk uzsākt, kad mezgls ir nosmacis.
0-apstiprinājumu dubultie izdevumi
Ja indivīds pieņem darījumu bez apstiprinājumiem, viņš ir pakļauts dubultiem izdevumiem. Darījums var būt izplatīts, bet, līdz tas ir iekļauts blokā (un tādējādi piesaistīts blokķēdei), sūtītājs var viegli izveidot jaunu darījumu, kas tērē tos pašus līdzekļus citur. Ja jaunais darījums ir ar augstāku maksu, ieguvējs, iespējams, iekļaus to pirms oriģinālā, spēkā neņemot iepriekšējo.
Dažas uzņēmējdarbības un indivīdi pieņem šos 0-apstiprinājumu darījumus. Apsveriet tirgotāju Bobu, kurš pārdod augstākās klases transportlīdzekļus. Viņš nezina, ka Alise ir eklipsējusi viņa mezglu, un nekādā veidā nenojauš, kad viņa veic pasūtījumu par luksusa sporta automašīnu. Viņa izveido darījumu, kuru Bobs pēc tam izplata tīklā. Apmierināts, ka maksājums ir ceļā, viņš nodod atslēgas automašīnai, un Alise aizbrauc.
Protams, darījums netika izplatīts tīklā – Bobs to vienkārši nodoja Alises ļaunprātīgajiem mezgliem, kuri to neizplatīs godīgiem mezgliem. Kamēr šis darījums karājas nenoteiktībā, Alise tērē tos pašus līdzekļus (īstā) tīklā, vai nu citai pusei, vai adresē, kas pieder viņai. Pat ja sākotnējais darījums ar Bobu galu galā tiek redzēts, tas tiks noraidīts, jo monētas jau ir iztērētas.
N-apstiprinājumu dubultie izdevumi
N-apstiprinājumu dubultie izdevumi ir līdzīgi 0-apstiprinājumu gadījumam, bet prasa vairāk sagatavošanas. Daudzi uzņēmumi dod priekšroku gaidīt noteiktu apstiprinājumu skaitu, pirms atzīt maksājumu par derīgu. Lai apietu to, uzbrucējam jāeklipse abi ieguvēji un tirgotājs. Kad uzbrucējs ir izveidojis pasūtījumu ar tirgotāju, viņš izplata darījumu (eklipsētajiem) ieguvējiem. Darījums tiek apstiprināts un iekļauts blokķēdē – bet šī blokķēde nav tā ķēde, ko novēro lielākā daļa tīkla, jo ieguvējs ir atvienots.
No turienes uzbrucējs nodod šo blokķēdes versiju tirgotājam, kurš izlaida preces, uzskatot, ka darījums ir apstiprināts. Kad eklipsētie mezgli atkal pievienojas faktiskajam tīklam, blokķēde, ko viņi kļūdaini uzskata par derīgu, tiek orfeinēta no tās, ar kuru pārējais tīkls ir strādājis (tam ir dažas līdzības ar 51% uzbrukumu).
Konkurējošo ieguvēju vājināšana
Eklipsēts mezgls turpinās darboties, neapzinoties, ka tas ir atdalīts no tīkla. Ieguvēji turpinās iegūt blokus saskaņā ar protokola noteikumiem, bet pievienotie bloki tiks noraidīti, kad tie sinhronizēsies ar godīgiem kolēģiem.
Teorētiski, liela mēroga eklipses uzbrukums pret galvenajiem ieguvējiem varētu tikt izmantots, lai atvieglotu 51% uzbrukumu. Šobrīd izmaksas, lai pārņemtu lielāko daļu Bitcoin ieguves jaudas, ir vienkārši pārāk augstas pat visresursīgākajiem uzbrucējiem – pie ~80TH/s, entitātei būtu nepieciešams vairāk nekā 40TH/s, lai mēģinātu šādu manevru.
Hipotētiskā scenārijā, kur šī ieguves jauda tiek sadalīta starp 10 pusēm (tādā veidā, ka katra pieder 8TH/s), uzbrucējs var ievērojami samazināt prasības 51% uzbrukumam, atvienojot šīs puses no tīkla. Ja pieci tiek eklipsēti, 40TH/s tiek noņemti no sacensībām, lai atrastu nākamo bloku, un tagad uzbrucējam ir nepieciešams iegūt nedaudz vairāk par 20TH/s, lai pārņemtu kontroli.
Citi sabotāžas pasākumi, ko var sasniegt, eklipsējot mērķus, ietver mezglu manipulāciju pašizsistēmas ieguvei vai sacensību organizēšanu starp ieguvējiem, lai atrastu nākamo bloku.
Ma zināšana
Ar pietiekamu IP adresu skaitu uzbrucējs var eklipsēt jebkuru mezglu. Visvienkāršākais veids, kā novērst to notikšanu, ir operatora uzdevums bloķēt ienākošas savienojumus un veikt tikai izejošus savienojumus ar konkrētiem mezgliem (piemēram, ar tiem, kas ir iekļauti baltajā sarakstā no citiem kolēģiem). Tomēr, kā norāda pētījuma dokumentā, šī pieeja nedarbojas lielā mērogā – ja visi dalībnieki pieņem šos pasākumus, jauni mezgli nevarēs pievienoties tīklam.
Autori piedāvā virkni uzlabojumu Bitcoin programmatūrai, no kuriem daži ir integrēti kopš dokumenta iznākšanas. Tie padara eklipses uzbrukumus dārgākus, veicot nelielas izmaiņas kodā, piemēram, nejaušu jauno savienojumu izvēli un lielāku jaudu adresēm.
Noslēdzošās domas
Eklipses uzbrukumi tiek veikti pie peer-to-peer tīkla līmeņa. Izmantojot tos kā patstāvīgu uzbrukumu, tie var būt diezgan apgrūtinoši. To patiesā efektivitāte ir saistīta ar citu uzbrukumu potenciēšanu, kas ietekmē mērķus finansiāli vai piedāvā uzbrucējam priekšrocības ieguves frontē.
Dabā vēl nav bijušas nopietnas sekas, kas izriet no eklipses uzbrukuma, bet draudi joprojām pastāv, neskatoties uz pretpasākumiem, kas ir integrēti tīklā. Tāpat kā lielākajai daļai uzbrukumu vektoru, kas pastāv Bitcoin un citās kriptovalūtās, spēcīgākā aizsardzība būs tā, kas padara finansiāli neizdevīgu ļaunprātīgām pusēm mēģināt tos veikt.

