شرکت امنیتی Dedaub کشف و یک آسیب پذیری مهم را در صرافی غیرمتمرکز اتریوم Uniswap فاش کرد. تیم پشت پروتکل این باگ را برطرف کرد و اجزای آسیبدیده با موفقیت مجدداً مستقر شدند - در غیر این صورت، مهاجم میتوانست تراکنشها را برای سرقت وجوه کاربر تعدیل کند.
Uniswap از خطر جلوگیری می کند و ویژگی های جدید را رفع می کند
به گفته این شرکت امنیتی، این آسیب پذیری ناخواسته با روتر جهانی اجرا شده است. این مؤلفه به کاربران Uniswap اجازه میدهد تا توکنهای ERC-20 و توکنهای غیرقابل تعویض را «در یک روتر swap واحد» معامله کنند.
به عبارت دیگر، کاربران Uniswap می توانند عملیات خود را بهینه کنند و چندین توکن و NFT را در یک تراکنش معامله کنند و در زمان و هزینه صرفه جویی کنند. این مؤلفه جدید همچنین به کاربران اجازه می دهد وجوه خود را به اشخاص ثالث منتقل کنند.
هنگامی که این آسیبپذیری در محل قرار میگرفت، کاربر میتوانست تراکنش را به شخص ثالث ارسال کند و شخص ثالث میتوانست به وجوه فرستنده دسترسی پیدا کند. دداب موارد زیر را توضیح داد:
(...) اگر کد شخص ثالث در هر نقطه ای از انتقال فراخوانی شود (که خود را به دلیل ترکیب پروتکل ها نشان می دهد)، کد می تواند دوباره وارد UniversalRouter شود و هر گونه نشانه ای را به طور موقت در قرارداد ادعا کند (...). مهاجم همچنین نیاز به پیاده سازی کد برای وارد کردن مجدد روتر (در حال اجرا) و جارو کردن تمام مقادیر توکن دارد. روتر ممکن است حاوی وجوه در اواسط تراکنش به دلیل سایر اقدامات و نقل و انتقالات در یک مبادله پیچیده باشد.
روتر جهانی وجوه فرستنده را در حین انجام تراکنش نگه می دارد. در حالی که این اتفاق میافتاد، سرمایهها آسیبپذیر بودند، و یک بازیگر بد میتوانست با فراخوانی دستورات خاصی مانند «ارسال» با «.TRANSFER» یا. ".جارو کردن."
این آسیبپذیری میتوانست به یک بازیگر بد اجازه دهد تا با استفاده از این دستور دوباره وارد تراکنش شود. هنگامی که مهاجم وارد می شد، می توانست «کل مقدار» را از کیف پول فرستنده خارج کند.
این شرکت امنیتی موارد زیر را در مورد "سناریوهای بی پایان" که در آن آسیب پذیری ممکن بود مورد سوء استفاده قرار گیرد اضافه کرد:
اگر کد نامعتبر در هر نقطه ای از انتقال فراخوانی شود، کد می تواند دوباره وارد UniversalRouter شود و هر توکنی را که قبلاً در قرارداد UniversalRouter وجود دارد ادعا کند. برای مثال، چنین توکنهایی میتوانند به این دلیل وجود داشته باشند که کاربر قصد دارد بعداً یک NFT بخرد، یا توکنها را به گیرنده دوم منتقل کند، یا به این دلیل که کاربر مقدار بیشتری از مقدار مورد نیاز را مبادله میکند و قصد دارد باقیمانده را در پایان برای خودش «جرو» کند. تماس UniversalRouter و سناریوهایی که در آنها ممکن است گیرنده نامعتبر نامیده شود (...) کم نیست.
اتریوم 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/