Охранителна фирма Дедауб открит и разкри критична уязвимост на популярната децентрализирана борса Uniswap на Ethereum. Екипът, който стои зад протокола, поправи грешката и засегнатите компоненти бяха успешно преразпределени – в противен случай нападателят може да смекчи транзакциите, за да открадне средствата на потребителя.
Uniswap избягва опасностите и коригира нови функции
Според охранителната фирма уязвимостта е неволно внедрена с универсалния рутер. Този компонент позволява на потребителите на Uniswap да търгуват ERC-20 токени и незаменими токени „в един суап рутер“.
С други думи, потребителите на Uniswap могат да оптимизират своите операции и да търгуват множество токени и NFT в една транзакция, спестявайки време и пари. Този нов компонент също позволява на потребителите да прехвърлят средства към трети страни.
Когато уязвимостта е била поставена, потребителят може да изпрати транзакция на трета страна и последната може да получи достъп до средствата на подателя. Дедауб обясни следното:
(…) ако кодът на трета страна бъде извикан във всеки момент от прехвърлянето (което се проявява поради състава на протоколите), кодът може да влезе отново в UniversalRouter и да изиска всички токени временно в договора (…). Нападателят също трябва да внедри код, за да влезе отново в рутера (извикване на изпълнение) и да изчисти всички количества токени. Рутерът може да съдържа средства по време на транзакция поради други действия и трансфери в сложен суап.
Универсалният рутер задържа средствата на подателя, докато транзакцията е завършена. Докато това се случи, средствата бяха уязвими и лош играч може да ги източи, като извика конкретни команди като „изпращане“ с „.TRANSFER“ или. ".SWEEP."
Уязвимостта може да е позволила на лош актьор да „въведе отново“ транзакция, използвайки тази команда. Веднъж влязъл вътре, нападателят може да е успял да „източи цялата сума“ от портфейла на подателя.
Фирмата за сигурност добави следното към „безкрайните сценарии“, където уязвимостта може да бъде използвана:
Ако ненадежден код бъде извикан в който и да е момент от прехвърлянето, кодът може да влезе отново в UniversalRouter и да поиска всички токени, които вече са в договора на UniversalRouter. Такива токени могат например да съществуват, защото потребителят възнамерява по-късно да закупи NFT или да прехвърли токени на втори получател, или защото потребителят разменя по-голяма сума от необходимото и възнамерява да „почисти“ остатъка към себе си в края на повикването на UniversalRouter. И няма недостиг на сценарии, при които може да бъде извикан ненадежден получател (…).
Ethereum DEX предоставя 3 милиона долара награда за грешки
През декември 2022 г. Uniswap пусна универсалния рутер като част от тяхната нова NFT съвместимост. По това време Uniswap Labs обяви програма за награда от 3 милиона долара. Dedaub получи тази сума за техния доклад за грешки в новия компонент.
Фирмата отпразнува наградата и факта, че лош актьор никога не е използвал уязвимостта. В допълнение, фирмата за сигурност беше „единственият доклад за грешка, по който Uniswap е предприел действия“.
2022 г. беше трудна година за крипто и рисковите активи, докато макроикономическите сили играеха срещу зараждащия се сектор. Потребителите се сблъскаха с препятствия освен спадащите цени, тъй като хакери и лоши актьори взеха милиарди от индустрията.
Данни от фирмата за анализи във веригата Chainalysis твърди че лошите актьори са получили над 26 милиарда долара в криптовалута само от 2017 до 2021 г. Остава да видим дали 2023 г. ще разшири или смекчи тази тенденция.
Към момента на писане, цената на UNI се търгува на $5.70 със странично движение на дневната графика.
Източник: https://newsbtc.com/news/uniswap/uniswap-saved-vulnerability-security-firm/