آموزش ارز دیجیتال

حمله ساندویچی چیست؟

ظهور کلاهبرداری در قراردادهای هوشمند همیشه یک نگرانی با توجه به ضعف کد DeFi بوده است. این مشکل منجر به حملات مختلفی مانند کلاهبرداری های Flash Loan، Rug Pull و غیره می شود حمله ساندویچی خواهد بود می دانیم که حوزه مالی غیرمتمرکز فرصت های زیادی را در اختیار ما قرار می دهد، اما می توان آن را بستری برای انواع حملات نیز در نظر گرفت. در این مقاله به حمله ساندویچی، مفهوم و طراحی این حمله، عوامل موثر بر آن، دو سناریوی احتمالی برای این نوع حمله و نحوه جلوگیری از آنها می پردازیم.

مقدمه ای بر حمله ساندویچی

مقدمه ای بر حمله ساندویچی

اگر در مورد حمله ساندویچی چیزی نشنیده اید، نگران نباشید زیرا این یک حمله معمولی نیست و بسیاری از افراد در مورد کلاهبرداری Rug Pull اطلاعات بیشتری دارند. این نوع حمله می تواند موقعیت های خاصی را در دامنه DeFi ایجاد کند و به اندازه ای مهم است که Vitalik Buterin در سال 2018 در مورد آن به ما هشدار داد. در مورد ویژگی های حملات مختلف، باید درک کاملی از مفهوم حمله و احتمال وقوع آن داشت. وقوع آن و البته پیامدهای آن. یک حمله ساندویچ، به ویژه هنگامی که پروتکل ها و پلتفرم های DeFi را هدف قرار می دهد، می تواند عواقب قابل توجهی داشته باشد.

بررسی مفهوم طراحی ساندویچ

اساساً می‌توانیم حمله ساندویچ را به عنوان یک حمله رو به جلو در نظر بگیریم که ابتدا پروتکل‌ها و سرویس‌های Defi را هدف قرار می‌دهد. در این حمله، تاجر مهاجم به دنبال یک تراکنش معلق در شبکه مورد نظر خود، برای مثال شبکه اتریوم می‌گردد. حمله ساندویچی زمانی رخ می دهد که مهاجم یک سفارش را قبل از معامله اصلی و یک سفارش را بعد از آن قرار دهد. در واقع مهاجم سفارش های قبلی و بعدی خود را همزمان ثبت می کند و تراکنش اصلی در انتظار وسط این دو سفارش یا چیزی به نام «ساندویچ» قرار می گیرد.

هدف از ثبت این دو سفارش و حول و حوش معامله جاری دستکاری قیمت دارایی های مختلف است. به عنوان مثال، هنگام مبادله LINK و ETH، ابتدا مهاجم می خواهد دارایی مبادله شده توسط کاربر را خریداری کند، زیرا می داند که قیمت اتر در حال افزایش است. بنابراین او ETH را با قیمت کمتری خریداری می کند، بنابراین قربانی این حمله باید ETH را با قیمت بالاتر خریداری کند. پس از این فرآیند، مهاجم اتر را با قیمت بالاتری می فروشد.

عوامل موثر بر حمله ساندویچی

عوامل موثر بر حمله ساندویچی

روش حمله ساندویچ انجام این نوع حمله را آسان می کند. در واقع، می‌توانیم این حمله را بسیار ساده و ممکن بدانیم. حتی اگر سود ناچیزی از این روش به دست بیاید، می توان با چندین بار تکرار این روش، در کار خود به موفقیتی بدون عواقب دست یافت. با وجود تمام این تفاسیر، یک تاجر بدخواه باید به اندازه کافی برای انجام یک حمله ساندویچی آماده باشد. عوامل زیادی در فضای غیرمتمرکز مالی یا DeFi وجود دارد که بر شانس موفقیت این نوع حمله تأثیر می گذارد.

بیشتر حملات ساندویچی از طریق سازندگان خودکار بازار یا راه حل های AMM انجام می شود. نمونه هایی از این بازارها عبارتند از Uniswap، Pancakeswap، Sushiswap و غیره. به لطف الگوریتم های قیمت گذاری این پلتفرم ها، نقدینگی همیشه تقاضای بالایی دارد و معاملات به صورت مستمر انجام می شود. با این حال، ما نمی توانیم تغییرات قیمتی را که هنگام تغییر حجم و نقدینگی رخ می دهد، فراموش کنیم.

یک ساندویچ تراکنش به کاربر اصلی اجازه می دهد تا مقدار کمتری اتریوم دریافت کند. از آنجایی که مجرم با موفقیت دستور خرید را با قیمت تعیین شده اجرا می کند، تراکنش بعدی قیمت بالاتری خواهد داشت. این فرآیند معمولاً باعث افزایش قیمت اتریوم می شود و به مهاجم این امکان را می دهد که با پر کردن رزروهای سفارش به جلو و عقب و افزایش غیرواقعی قیمت، سود خوبی کسب کند.

دو سناریو ممکن در یک حمله ساندویچی

دو سناریو ممکن در یک حمله ساندویچی

با توجه به تمام سوالاتی که قبلا مطرح کردیم، حمله ساندویچی این امر به دو صورت اتفاق می افتد: دریافت کننده نقدینگی در مقابل گیرنده و تامین کننده نقدینگی در برابر گیرنده. در زیر هر دو مورد را بررسی خواهیم کرد.

تامین کننده نقدینگی در مقابل گیرنده

یک تامین کننده نقدینگی به سادگی می تواند به گیرنده نقدینگی حمله کند. اصل این فرآیند مانند مورد قبلی است. اما در این حالت مهاجم باید سه کار را انجام دهد. ابتدا باید نقدینگی را برداشت کند که راهی برای ثبت تراکنش دوم (یعنی ترتیب معکوس) برای افزایش لغزش قیمت قربانی است. دوم، نقدینگی را مجدداً به استخر تزریق می‌کند، که همچنین به عنوان یک پیش معامله برای متعادل کردن مجدد استخر نقدینگی عمل می‌کند. در مرحله سوم، دارایی A را با دارایی B مبادله می کند تا تعادل دارایی B را در مخزن مایع به حالت قبل از حمله بازگرداند.

برداشت وجه نقد موجود قبل از انجام معامله قربانی منجر به لغو هزینه تراکنش می شود. به طور معمول، ارائه دهندگان نقدینگی برای فعالیتی که در استخر آنها انجام می شود، کارمزد کمی دریافت می کنند. اطمینان از اینکه هیچ کارمزدی دریافت نمی شود، می تواند به هر گیرنده پول، صرف نظر از قیمت هزینه ای که دریافت می کند، آسیب مالی وارد کند.

گیرنده وجوه در مقابل گیرنده

دور از انتظار نیست که شاهد حمله دو گیرنده به یکدیگر باشیم. به عنوان مثال، اگر یک شرکت کننده عادی بازار یک تراکنش AMM معلق در بلاک چین داشته باشد، یک مجرم می تواند تراکنش های رفت و برگشتی را برای سود مالی ترتیب دهد. هنگامی که استخر مایع و جفت ارز دیجیتال آن با سه تراکنش معلق روبرو می شوند، ماینرها تصمیم می گیرند که کدام یک باید قبل از دو تراکنش دیگر تایید شود. اگر مهاجم مایل به پرداخت بیشتر برای یک تراکنش نسبت به طرف مقابل باشد، شانس بیشتری برای تکمیل تراکنش خود قبل از سایر تراکنش ها خواهد داشت. این یک فرآیند تضمین شده نیست، اما ایده ای از سادگی حمله ساندویچ به دست می دهد.

آیا مزایای حملات ساندویچی سودآور است؟

از حمله ساندویچی جلوگیری کنید

با وجود انگیزه های مالی آشکار پشت حمله ساندویچی، همیشه سودآور نیست. هزینه این تراکنش ها برای انجام معاملات دو طرفه به معامله گران دیگر معمولاً بیشتر از سود دریافتی مهاجم است. به خصوص هنگامی که از شبکه اتریوم استفاده می کنید، کارمزد تراکنش (به ازای هر سهم) را به شما می گوید، اما اگر کمیسیون از روند عادی تراکنش و کارمزد تراکنش لازم دریافت شود. حمله ساندویچی اگر بیشتر از مبلغ تراکنش قربانی باشد، می توانیم این حمله را برنده در نظر بگیریم.

ظهور یک محیط تجاری غیرمتمرکز از طریق بازارسازان خودکار هنوز خطراتی را برای افرادی که از این خدمات استفاده می کنند به همراه دارد. حملات ساندویچی ممکن است در هر زمانی رخ دهد. با جذب افراد بیشتری به دنیای DeFi، فرصت های بیشتری برای حمله مجرمان ایجاد می شود. این بدان معنا نیست که حملات ساندویچی موفقیت آمیز در آینده افزایش خواهد یافت، اما ما باید همیشه این را در نظر داشته باشیم.

چگونه از حملات ساندویچی جلوگیری کنیم؟

با توجه به پلتفرم های AMM، توسعه اقدامات امنیتی برای محافظت از کاربران در برابر این حملات مهم است. به عنوان مثال، پلتفرم 1 اینچی نوع جدیدی از اقدامات امنیتی به نام «تراکنش‌های ربات فلش» را معرفی کرد که در قسمت حافظه ممپول تراکنش‌های معلق قابل مشاهده نیستند زیرا در آنجا نمایش داده نمی‌شوند.

در عوض، پلتفرم One Inch مستقیماً با ماینرهای مورد اعتماد ارتباط برقرار می کند تا تراکنش ها پس از استخراج قابل مشاهده باشند. تا به امروز، به نظر می رسد این تنها راهی است که کاربران می توانند از خود در برابر حمله ساندویچی محافظت کنند. با این حال، هنوز مشخص نیست که آیا سایر پلتفرم‌های AMM نیز با عدم انتشار تراکنش‌ها در Mempool با ماینرها همکاری خواهند کرد یا خیر. راه حل های دیگری ممکن است در آینده پیدا شود، اما این رویداد به زمان بیشتری نیاز دارد.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا