تمامی فناوریهای توسعهیافته، از جمله بلاک چین ، دارای حاملهای حمله هستند که مجرمان سایبری میتوانند از آنها به نفع خود بهره ببرند. در دنیای کریپتو، یکی از ناشناخته ترین حملات Vector 76 Attack است.
ورود ارزهای رمزنگاری شده با خود یک مشکل جدی را به همراه داشت، یعنی هزینه مضاعف. در ارزهای دیجیتال متمرکز، این مشکل با داشتن تمام کنترل در یک هسته به راحتی حل می شود. اما در ارزهای غیرمتمرکز مانند بیت کوین، مشکل بسیار بزرگتر است. در واقع، طراحی بیت کوین می تواند مشکل دو برابری را به حداقل برساند. حتی می توان گفت که آن را “حذف” می کند، اما به دلیل ماهیت غیرمتمرکز بیت کوین، همیشه نقطه ای از شکست وجود دارد که می توان از آن برای دو برابر کردن هزینه استفاده کرد.
در آنجاست که Vector Attack 76 o Confirmation Attack ، اقدام می کند. این حمله دوگانه خرج کردن به مهاجم اجازه می دهد تا یک تراکنش خرج مضاعف را در یک بلوک قرار دهد و از آن به نفع خود استفاده کند. این با ارسال یک بلوک خودساخته برای شبکه انجام میشود تا تأییدی مبنی بر معتبر بودن بلوک به شما بدهد. به این ترتیب، مهاجم میتواند مقدار مشخصی از وجوه را قبل از اینکه شبکه متوجه مشکل شود، تصاحب کند. این حمله برای اولین بار توسط کاربر vector76 در انجمن Bitcointalk توضیح داده شد .
اما، برای درک ماهیت این حمله، باید روشی را که در آن کار میکند، عمیقتر کرد، و این همان کاری است که در آینده انجام خواهیم داد.
Vector Attack 76 چگونه کار می کند؟
این حمله در واقع ترکیبی از حمله Career و حمله فینی است. هدف اصلی آن صرافی ها است، جایی که مهاجمان می توانند ارزهای دیجیتال و توکن های خود را بدون شناسایی سریع خرید و فروش کنند .
ولی چطور این ممکن است؟ خوب، بیایید آناتومی این حمله را کمی دقیق تر بررسی کنیم.
این حمله چگونه اجرا می شود؟
Un Vector Attack 76 زمانی قابل اجرا است که یک ماینر غیرصادق که روی ۲ شبکه گره کامل کنترل دارد ، یکی از اینها (گره A) را مستقیماً به سرویس یک صرافی متصل کند. سپس دومین گره کامل (گره B) آن را با گره های دیگری که به خوبی در شبکه بلاک چین قرار دارند، به هم متصل می کند. برای اینکه بداند به کدام گره ها باید متصل شود، ماینر باید لحظه ای را که در آن گره ها تراکنش ها را منتقل می کنند و نحوه انتشار آنها به سایر گره های شبکه نظارت کند. بنابراین، شما قادر خواهید بود بدانید که کدام گره ها برای اولین بار عملیات را منتقل می کنند و می توانید با سرویس هدف و با گره های دارای موقعیت مناسب ارتباط برقرار کنید.
پس از ایجاد اتصالات لازم، ماینر یک بلوک معتبر به صورت خصوصی ایجاد می کند. در آن لحظه، یک جفت تراکنش ایجاد کنید که دارای مقادیر متفاوتی هستند، یک تراکنش با ارزش بالا و یک تراکنش کم ارزش. به عنوان مثال، تراکنش اول ممکن است ۲۵ بیت کوین یا بیشتر باشد و تراکنش دوم ممکن است ۰.۱ بیت کوین باشد. متعاقباً، ماینر بلوک استخراج شده را در حالت انتظار نگه می دارد و به گره A تراکنش با ارزش بالا، یعنی تراکنش ۲۵ بیت کوین، اختصاص می دهد. این معامله ای خواهد بود که برای واریز در سرویس صرافی هدایت می شود.
هنگامی که ماینر یک تبلیغ بلوکی را در شبکه تشخیص می دهد، بلافاصله بلوک از پیش پایان یافته توسط آن را به همراه بلوک اخیراً ایجاد شده در شبکه به طور مستقیم به سرویس تبادل ارسال می کند. این به این امید که بقیه گره ها بلوک خود را معتبر بدانند و آنها را به عنوان بخشی از زنجیره اصلی در نظر بگیرند. بنابراین، این بلوک تأیید می شود و بنابراین، تراکنش ۲۵ BTC که در آن گنجانده شده است، تأیید می شود.
هنگامی که سرویس صرافی تراکنش ۲۵ بیت کوین را تأیید کرد، مهاجم برای همان تعداد ارز دیجیتالی که در تراکنش قبلی سپرده گذاری کرده بود (۲۵ بیت کوین) از صرافی برداشت می کند. سپس مهاجم تراکنش دوم ایجاد شده، تراکنش ۰.۱ BTC را از گره B به شبکه می فرستد. به منظور ایجاد فورکی که باعث می شود شبکه اولین تراکنش را رد و بی اعتبار کند. اگر این فورک زنده بماند، اولین تراکنش با سپرده ۲۵ بیت کوین باطل می شود، اما برداشت انجام شده است. بنابراین، مهاجم موفق خواهد شد و صرافی ۲۵ بیت کوین را از دست خواهد داد.
احتمال موفقیت حمله
همه این فرآیندها بلافاصله و به طور همزمان اتفاق میافتند، بنابراین به احتمال زیاد تراکنش ۰.۱ BTC به عنوان زنجیره اصلی در نظر گرفته میشود. اما چند بلوک بعد، تراکنش سپرده با ۲۵ بیت کوین باطل می شود. دلیل این امر این است که گره B، که تراکنش ۰.۱ BTC را انتقال می دهد، به گره هایی با موقعیت مناسب متصل است که آن تراکنش را بسیار سریعتر در شبکه ارسال می کند. در حالی که گره A، که شامل تراکنش سپرده ۲۵ بیت کوین است، به طور مستقیم فقط به سرویس صرافی متصل است. این گره باید تراکنش مذکور را مجدداً به گرههای دیگر ارسال کند، که آن را بسیار کندتر از گره B میکند.
در غیر این صورت، که در آن بلوک پذیرفته شده در زنجیره اصلی شامل تراکنش ۲۵ بیت کوین باشد، مهاجم فقط ۲۵ بیت کوینی را که در صرافی سپرده گذاری کرده است، پس می گیرد. بنابراین، Vector Attack 76 موفق نخواهد بود. با این حال، در این سناریو هیچ ضرر یا سودی وجود ندارد، نه برای مهاجم و نه برای مبادله.
با توضیح این موضوع، می توان تشخیص داد که احتمال موفقیت در اجرای این نوع حمله وجود دارد. اما، با این حال، انجام این کار مرسوم نیست، زیرا یک صرافی باید پس از یک بار تأیید، با پرداخت برداشت موافقت کند، و اکثریت قریب به اتفاق مبادلات معمولاً به ۲ تا ۶ تأیید نیاز دارند.
با این حال، کسبوکاری که کالاها یا خدمات دیجیتالی ارائه میکند نیز میتواند قربانی این نوع حمله باشد.
آیا وجود Vector Attack 76 نشانه ای از عدم امنیت بلاک چین است؟
نادرست!
همه سیستمها به دلیل زیرساختهای خود دارای آسیبپذیری هستند، اما دانستن آن خطاها و رفع آنها برای افزایش امنیت آن ضروری است. بیت کوین بهترین مثال برای این است، حمله Vector 76 چیزی ساختاری است، اما تنها زمانی ممکن است که ساختار مذکور به اندازه کافی گسترده و غیرمتمرکز نباشد، چیزی که جامعه بداند و به آنها دلیلی برای گسترش بیشتر و بیشتر برای ایجاد آن ارائه دهد. امن تر است
چگونه از خود در برابر حمله Vector 76 محافظت کنیم؟
برای محافظت از خود در برابر این نوع حملات، چند توصیه باید در نظر گرفته شود:
- از سیستم هایی استفاده کنید که تراکنش ها را با یک تایید قبول نمی کنند. Vector Attack 76 به این نیاز دارد که برای انجام موفقیت آمیز حمله امکان پذیر باشد. در عوض، حداقل چیزی که باید انتظار داشته باشیم این است که ۲ تائیدیه یا حتی ۶ تائید داشته باشیم، همانطور که به شدت توصیه می شود.
- گره ای که ما استفاده می کنیم باید از فعال بودن اتصالات ورودی خودداری کند، یا در صورت عدم موفقیت، اتصالات ورودی را از رایانه های شناخته شده تعریف کند . این مانع از تزریق اطلاعات نادرست در مورد بلاک چین به گره ما توسط مهاجم می شود.
- اتصالات گره خروجی نیز باید نظارت شود و فقط به گره های شناخته شده اجازه داده شود . این امر از ارائه اطلاعات در مورد وضعیت زنجیره ای که ما آن را مدیریت می کنیم، گره های ما جلوگیری می کند.
با این اقدامات می توانیم بدون مشکل اساسی از خود در برابر این نوع حملات محافظت کنیم.




