Tweet byl autorem smazán.
Ale my jsme všechno uložili 🙂.
22. srpna byla zaznamenána krádež žetonů a NFT v hodnotě téměř 1 milion dolarů. Uživatel podepsal transakci, která vypadala jako běžný swap na Uniswapu. Nebyly zde žádné zjevné známky nebezpečí: rozhraní zobrazovalo standardní, očekávanou operaci. Místo výměny však proběhla skrytá akce. Peněženka získala dočasná "upgradovaná" práva podle standardu EIP-7702, a to stačilo k tomu, aby byla všechna aktiva jedním tahem převedena na účty podvodníků.
Tento článek byl přeložen z originálu. Přečtěte si původní verzi od našeho korespondenta zde.
Tento případ se stal prvním hlasitým signálem, že nové standardy Etherea, vyvinuté pro pohodlí a efektivitu, se mohou proměnit v nástroje pro phishing.
EIP-7702 je návrh na vylepšení Etherea, který změnil samotnou povahu interakce se sítí. Ethereum mělo tradičně dva typy účtů. Prvním byl účet ve vlastnictví externích subjektů (EOA), běžná peněženka, která jednoduše podepisovala transakce pomocí soukromého klíče. Druhým byl smluvní účet, který obsahuje kód a může provádět složité scénáře.
Zavedení EIP-7702 umožnilo tyto dva modely sloučit. Běžná peněženka získala schopnost chovat se dočasně jako chytrý kontrakt, což znamená, že v rámci jedné transakce může provést několik akcí najednou. Pro uživatele to vypadá jako zjednodušená verze tzv. abstrakce účtu: není třeba podepisovat každou akci zvlášť a platit za desítky transakcí. Jediným potvrzením lze dokončit celý scénář.
Zobrazit příspěvek na X Načítání...
V klasickém modelu EOA byly akce omezeny na jednoduché převody nebo volání funkcí v chytrém kontraktu. V případě EIP-7702 peněženka načte dočasný kód, který běží pouze po dobu trvání jedné transakce. Tento kód může obsahovat posloupnost různých instrukcí: například nejprve provést výměnu na decentralizované burze, poté odeslat část tokenů na jinou adresu a současně komunikovat s protokolem likvidity.
Po dokončení transakce dočasný kód zmizí a účet se vrátí do normálního stavu. Tento přístup skutečně řeší mnoho problémů a usnadňuje a zlevňuje operace DeFi. Ale právě tato flexibilita se stala základem pro nové útoky.
Hlavním důvodem je, že transakce podle EIP-7702 technicky vypadají jako běžná aktualizace kódu. Rozhraní peněženky dostává pouze obecnou informaci: uživatel podepisuje transakci obsahující initCode a tento kód bude proveden v rámci bloku. Samy o sobě tyto údaje nenesou zřejmý signál nebezpečí. Peněženka nedokáže rozpoznat, že kód skrývá příkaz "převeď všechny tokeny".
Další komplikací je, že standard je stále nový a většina klientů a peněženek zatím logice EIP-7702 nerozumí. V případě klasických transakcí může peněženka jasně ukázat "posíláte 2 ETH na adresu X". V případě 7702 však vidí pouze obecnou sadu instrukcí, které budou provedeny v reálném čase na virtuálním stroji. Vysvětlit to uživateli by vyžadovalo komplexní integraci a vlastně i vestavěný analyzátor kódu - něco, co v běžných peněženkách zatím neexistuje.
Zobrazit příspěvek na X Načítání...
Výsledkem je, že uživatel vidí pouze "obvyklou výměnu" nebo "schválení", zatímco skutečná logika transakce zůstává skryta. Tato propast mezi technickou složitostí a vizuální reprezentací vytváří ideální pole pro zneužití.
EIP-7702 se neobjevil z ničeho nic. Ethereum již dlouho směřuje k abstrakci účtů, kde mizí hranice mezi peněženkou a inteligentním kontraktem. Dřívější kroky, zejména EIP-4337, přesunuly zpracování transakcí do speciálních "svazků".
Novým návrhem se stala jednodušší, ale radikálnější varianta, kdy se logika provádí přímo v uživatelském účtu bez dalších vrstev. Tím se transakce staly efektivnějšími, ale zároveň se otevřely nové možnosti pro útoky.
Krádež 1 milionu dolarů ilustruje paradox vývoje Etherea. Každé nové vylepšení otevírá dveře pohodlí a flexibilitě, ale zároveň vytváří novou úroveň nebezpečí. Vývojáři předpokládali transakce s více operacemi a levnější scénáře DeFi, ale v praxi se ukázalo, že prvním rozšířeným případem použití je sofistikovaný phishing.
EIP-7702 otevřel pro Ethereum novou éru, kdy se z běžné peněženky může na několik sekund stát chytrý kontrakt. Je to krok směrem k univerzálnímu modelu účtu, ale také připomínka, že inovace s sebou vždy nese riziko. Tam, kde vývojáři vidí efektivitu, podvodníci vidí způsob, jak jediným podpisem odčerpat miliony.