Hlavní body
Ve světě Web3 neomezená oprávnění vytvářejí zranitelnosti a útočníci mohou využívat zranitelnosti smart kontraktů nebo sociálního inženýrství.
Pravidelně kontrolujte a odvolávejte nepotřebná oprávnění, abyste zabránili neoprávněnému přístupu k aktivům.
Chraňte své finance pomocí nástrojů jako je Binance Web3 peněženka a neustále sledujte rizika bezpečnosti Web3.
Jaké následky má ignorování jednorázového oprávnění v oblasti decentralizovaných financí? I když smart kontrakty mohou zjednodušit transakce, interakce s nimi přináší určité bezpečnostní riziko, zejména když uživatelé udělují třetím stranám neomezený přístup a řízení jejich financí. V předchozím blogu jsme diskutovali o rizicích oprávnění smart kontraktů a externích účtů (EOA). Tento článek se podrobněji zaměří na další rizika oprávnění a jak chránit aktiva před hrozbami, přičemž důraz bude kladen na Ethereum Virtual Machine (EVM) chain.
Úvod do rizik oprávnění EVM
Mnoho uživatelů se domnívá, že účast na známých nebo auditovaných projektech zaručuje bezpečnost jejich financí. Ale bez ohledu na to, jak pečlivě je projekt navržen, nemůže být absolutně imunní vůči hackerským útokům, zejména v decentralizovaných oblastech. Pokud je aplikace nebo platforma, které jste dříve důvěřovali, napadena, neomezená oprávnění umožní smart kontraktu neomezeně kontrolovat aktiva ve vaší peněžence, což zvyšuje riziko.
Uživatelé často udělují oprávnění smart kontraktům pro pohodlí a poté na ně zapomínají, což zvyšuje potenciální riziko. S časem se tato zapomenutá oprávnění stávají skrytými zranitelnostmi, které mohou útočníci kdykoliv využít. Jakmile je bezpečnost projektu ohrožena, hacker může přeskočit vás a přímo využít tato neomezená oprávnění k vyprázdnění vašich financí. Nedostatečné omezení nebo pravidelné odvolávání oprávnění je jako zapomenutí zamknout dveře a vystavuje vaše aktiva obrovskému riziku. Proto je v ekosystému Web3 zásadní důkladně spravovat oprávnění.
Možná byste chtěli vědět, jak je bezpečnost projektu ohrožena. Existují dva běžné přístupy: využití zranitelností v kódu smart kontraktu nebo manipulace s vývojáři prostřednictvím sociálního inženýrství. Oba mohou útočníkům otevřít dveře k přístupu k uživatelským financím bez oprávnění.
Využití zranitelností smart kontraktů
Smart kontrakty jsou pilířem blockchainu, podporují funkce jako vytváření tokenů, půjčování, staking a mosty. Nicméně, jakýkoliv software může mít zranitelnosti. Tyto zranitelnosti jsou hlavním cílem útočníků, zejména u populárních projektů s velkým uživatelským základem nebo množstvím financí.
Následují základní procesy těchto útoků.
Hledání vhodného cíle: Hackeři obvykle cílí na známé projekty, analyzují jejich smart kontrakty a hledají zranitelnosti, které lze využít. Vzhledem k transparentnosti blockchainu tento proces vyžaduje nejen dovednosti, ale také trpělivost, pečlivě hledat kódové chyby nebo logické nedostatky.
Nalezení zranitelnosti: Jakmile útočník objeví zranitelnost, může neautorizovaně přistupovat k projektové smlouvě. Poté je jejich cíl jasnější, a to vyprázdnit prostředky. To znamená vyprázdnit likviditní fondy a rezervy půjček nebo přímo využít uživatele, který interagoval s obětí smlouvy.
Ztráta prostředků: Pokud uživatel poskytne oběti smlouvy neomezená oprávnění, riziko se výrazně zvyšuje. Skrze taková oprávnění může smlouva neomezeně přistupovat k tokenům v uživatelské peněžence. Útočník může vykonávat funkce jako transferFrom() a několikrát vybrat zůstatek tokenu. Jakmile je neomezené oprávnění platné, také nově vložené prostředky ve stejné peněžence jsou vystaveny riziku.
Pokud se oprávnění neodvolají, mohou být stávající prostředky uživatele a budoucí vklady vystaveny krádeži. Neomezená oprávnění se na první pohled zdají být pohodlná, ale brzy se mohou stát vážnou zranitelností. Proto je nezbytné pravidelně kontrolovat a odvolávat nepotřebná nebo málo používaná oprávnění smart kontraktů. Věnovat čas znovu uděleným oprávněním je mnohem bezpečnější než riskovat ztrátu prostředků.
Sociální inženýrství
I když mohou existovat zranitelnosti smart kontraktů, lidské chyby často představují větší riziko. Útočníci cílí na vývojáře nebo vlastníky projektů, využívají jejich důvěru k získání přístupu k citlivým systémům. Jednou z běžných metod je podvod s malwarem, kdy nelegální subjekty přimějí jednotlivce stáhnout škodlivý software. Jakmile je nainstalován, takový software může ukrást soukromé klíče, přistupovat k peněženkám nebo manipulovat se smlouvami, čímž vyprázdní prostředky projektů a zůstatky uživatelů. Proto je sociální inženýrství vážnou hrozbou, která může ovlivnit celý ekosystém.
Skutečné případy
Zranitelnost při upgradu smart kontraktů: LI.FI protokol
Při upgradu smart kontraktů platformy LI.FI byla zjištěna zranitelnost, která útočníkům umožňuje bez řádného ověření volat jakoukoli smlouvu. Díky tomu mohli útočníci využít peněženky, které udělily LI.FI smlouvě neomezená oprávnění k tokenům, a vybírat prostředky bez dalšího povolení od uživatelů. Vzhledem k tomu, že zranitelnosti se mohou kdykoli objevit, uživatelé by měli být vždy obezřetní a pravidelně odvolávat oprávnění, aby zajistili bezpečnost svých prostředků.
Útok na více podepisovatelů: Radiant Capital
Zlovolní aktéři napadli zařízení tří více podepisovatelů a tím ovládli více podepisovací peněženku Radiant Capital. Díky tomuto přístupu převedli vlastnictví peněženky na sebe a nuceně aktualizovali smlouvu o fondě půjček. Díky této aktualizaci mohli vybírat všechny prostředky z fondu půjček a peněženek uživatelů, kteří udělili neomezená oprávnění. Proto uživatelé, kteří dosud neodvolali neomezená oprávnění, čelí riziku, zejména na konkrétním blockchainu.
Tento případ ukazuje, že neodvolání oprávnění po napadení projektu je velmi nebezpečné chování. Jak je znázorněno níže, uživatel Web3 peněženky udělil neomezená oprávnění napadené smlouvě o fondu půjček Radiant Capital. Toto 'neomezené' povolení znamená, že smlouva může neomezeně vybírat tokeny z uživatelské peněženky.
Pokud je oprávnění platné, může útočník opakovaně vybírat BUSC-USD z peněženky uživatele. Navíc, protože smlouva si ponechává oprávnění k výběru prostředků, existuje také riziko pro jakékoli nové prostředky vložené do peněženky. Tento případ varuje uživatele, aby v případě napadení projektu okamžitě zkontrolovali a odvolali příslušná oprávnění, aby ochránili své aktiva.
Sociální inženýrství: Monoswap
Útočník se vydával za rizikového investora a cíleně podváděl vývojáře Monoswap. Pozval vývojáře na videohovor, který měl údajně diskutovat o možnostech financování, a přiměl ho nainstalovat podvodnou verzi aplikace Kakaotalk. Netušil, že útočník tuto příležitost využil k instalaci botnetu na jeho kancelářském počítači, kterým mohl přistupovat k peněženkám a smlouvám souvisejícím s Monoswap.
Díky tomuto přístupu nelegální subjekty vybraly většinu stakovaných likviditních pozic, což způsobilo obrovské ztráty pro protokol a jeho uživatele. Tento incident ukazuje, že bychom měli vždy používat přísné bezpečnostní protokoly a ověřovat legitimitu aplikací nebo komunikačních kanálů před udělením přístupu k citlivým systémům.
Způsoby sebeochrany
V světě Web3 je klíčové být neustále ostražitý, abyste zajistili bezpečnost svých aktiv. I když neexistuje systém, který by zaručoval absolutní nulové riziko, aktivní opatření mohou výrazně snížit potenciální hrozby. Následující části představí způsoby sebeochrany:
Obezřetné udělování oprávnění
Snažte se nedávat neomezená oprávnění k tokenům, i když se jedná o projekty s dobrou reputací. Omezování oprávnění zvyšuje bezpečnost tím, že zajišťuje, že když dojde k napadení projektu, útočník nemůže využít toto oprávnění k odcizení vašich aktiv.
Pravidelně odvolávejte nepoužívaná oprávnění
Naučte se pravidelně kontrolovat a odvolávat oprávnění tokenů z nepoužívaných smluv. Jednoduchým krokem můžete snížit riziko, které představují škodlivé útoky nebo náhodné zranitelnosti pro vaše aktiva.
Provádějte důkladnou kontrolu
Před udělením oprávnění smlouvě si udělejte čas na její ověření pomocí renomovaných bezpečnostních nástrojů jako je honeypot.is. I když tyto nástroje nemohou zaručit absolutní bezpečnost, poskytují cenné poznatky o potenciálních rizicích, což je mnohem lepší než neprovádět žádnou kontrolu. Vytvořte si tyto návyky a s obezřetným přístupem vybudujte silnou ochranu proti potenciálním hrozbám, abyste mohli bezpečně plout světem Web3.
Používejte Binance Web3 peněženku
Chraňte svou peněženku pomocí Binance Web3 peněženky a dalších důvěryhodných nástrojů. Tato peněženka upřednostňuje bezpečnost uživatelů a je vybavena silnými funkcemi na zvládání běžných hrozeb Web3, včetně zneužití oprávnění.
Když dojde k napadení projektu, Binance Web3 peněženka rychle zasáhne, aby chránila uživatele. Systém okamžitě odešle bezpečnostní upozornění a notifikace v aplikaci, které uživatele vyzvou, aby odvolali riziková oprávnění nebo ochránili svá aktiva. Před úplným odvoláním rizikových oprávnění ke smart kontraktům systém neustále upozorňuje uživatele prostřednictvím vyskakovacích oken, aby zajistil, že uživatelé podniknou kroky k ochraně svých prostředků.
Tato proaktivní ochranná opatření pomáhají uživatelům být informováni a rychle reagovat, čímž snižují potenciální ztráty.
Buďte neustále informováni o novinkách
V neustále se vyvíjejícím světě DeFi je odborné znalosti nejlepší obranou. Můžete se dozvědět o nejnovějších bezpečnostních zprávách, vývoji projektů a nově vzniklých zranitelnostech prostřednictvím Binance Academy. Pro hlubší pochopení potenciálních hrozeb se podívejte na naši sérii odhalování podvodů. Tyto zdroje poskytují cenné poznatky, které vám pomohou identifikovat podvody a ochránit vás před novými riziky, takže vaše cesta ekosystémem bude bezpečná.
Závěr
Ve světě Web3 stačí udělat několik jednoduchých návyků, abyste výrazně zvýšili bezpečnost svých aktiv. Pravidelně kontrolujte svá oprávnění, používejte důvěryhodné nástroje jako je Binance Web3 peněženka a sledujte nejnovější informace prostřednictvím zdrojů jako je Binance Academy. Tyto malé kroky mohou efektivně chránit vaše finance a umožnit vám užívat si nekonečné možnosti, které decentralizované finance nabízejí.