جستجو در بیتفا
  • انواع راه‌های هک و حمله به بلاکچین
  • حمله به شبکه‌ بلاکچین
  • حمله دیداس (DDos)
  • حمله شکل پذیری تراکنش (Transaction malleability attacks)
  • حمله مسیریابی (Routing attacks)
  • حمله‌ زمان‌ربایی (Timejacking)
  • حمله خسوف (Eclipse)
  • حمله سیبل (Sybil)
  • حمله به کیف پول کاربران
  • حمله فیشینگ (Phishing)
  • حمله لغت‌نامه (Dictionary attacks)
  • امضاهای آسیب پذیر (Vulnerable signature)
  • ایجاد کلید ناقص (Flawed key generation)
  • حمله به کیف‌پول‌های سرد و گرم
  • حمله به قرارداد‌های هوشمند
  • آسیب پذیری در کد منبع قرارداد
  • آسیب پذیری در ماشین‌های مجازی
  • حمله به مکانیزم تایید تراکنش‌ها
  • حمله فینی (Finney attacks)
  • حمله رقابتی (Race attach)
  • حمله دوبار خرج کردن (Double spending)
  • حمله وکتور 76 (Vector76)
  • حمله تاریخ جایگزین (Alternative history attacks)
  • حمله‌ی 51 درصدی (51% or majority attacks)
  • حمله به استخر‌های استخراج (Mining pool attacks)
  • استخراج خودخواهانه (Selfish mining)
  • فورک پس از مضایقه (FAW)
  • جمع‌بندی
اشتراک گذاری
معرفی روش‌های هک و حمله به بلاکچین

معرفی روش‌های هک و حمله به بلاکچین

متوسط
انتشار : ۱۴۰۱/۰۳/۲۷
بروزرسانی : ۱۴۰۱/۰۳/۲۷
۱۵ دقیقه
۲
۱,۰۵۷
توسط :
مینا بشیری

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

 

انواع راه‌های هک و حمله به بلاکچین

مهاجمین سایبری همواره به دنبال یافتن راه‌های جدید برای پیاده سازی اهداف شوم خود هستند. امروزه به نظر می‌رسد هکر‌ها نقاط ضعف بلاکچین‌ها را به عنوان دروازه ورود انتخاب کرده‌اند. در ماه مارچ سال 2019، هکر‌ها تنها در 30 روز موفق به پیدا کردن 43 باگ در بلاکچین‌ها و پلتفرم‌های مختلف شدند. آنها همچنین نقاط ضعفی در بلاکچین‌ها و پلتفرم‌های معروف مانند Coinbase ،EOS و Tezos یافتند.

با حمله‌های وارد شده به بلاکچین‌ها، پل‌های بلاکچینی (Bridge) و پلتفرم‌های معروف مبتنی بر بلاکچین، می‌توان به این موضوع پی برد که هکر‌ها به اندازه کافی باهوش هستند تا امنیت بلاکچین‌ها را زیر سوال ببرند. در ادامه به معرفی 5 نوع از رایج ترین راه‌های هک و حمله به blockhchain خواهیم پرداخت.

  1. حمله به بلاکچین
  2. حمله به کیف پول ها
  3. حمله به قرارداد‌های هوشمند
  4. حمله به مکانیزم‌های تایید تراکنش
  5. حمله به استخر‌های استخراج

 

حمله به شبکه‌ بلاکچین

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

 

حمله دیداس (DDos)

حمله‌ی دیداس مخفف عبارت Distributed denial of service به معنی منع سرویس توزیع شده است. این حمله رایج نیست اما محتمل است. هکر‌ها با استفاده از این حمله و ارسال درخواست‌های زیاد به سرور، به دنبال پایین آوردن قدرت پردازش شبکه و از دسترس خارج کردن آن می‌باشند. هکر‌ها با استفاده از این روش به دنبال قطع کردن اتصال استخر‌های استخراج شبکه، کیف پول‌های الکترونیک، صرافی‌ها و دیگر سرویس‌های مالی می‌باشند.

در سال 2017، صرافی Bitfinex هدف حمله‌ی عظیم دیداس قرار گرفت و تنها یک روز قبل از اعلام خبر هک صرافی Bitfinex، سازمان IOTA توکن بومی خود را ایجاد کرده بود. 3 سال بعد، یعنی در سال 2020، صرافی Bitfinex تنها یک روز پس از صرافی OKEx حمله دیداس دیگری را تجربه کرد.

در بلاکچین‌های zero-fee و یا حتی بلاکچین‌های near zero-fee به دلیل کم هزینه بودن انجام تراکنش، احتمال انجام این نوع حملات بسیار بیشتر است زیرا هکر برای انجام آن نیاز به پرداخت هزینه بالایی ندارد. 

 

حمله شکل پذیری تراکنش (Transaction malleability attacks)

سازوکار این حمله به این صورت است که قربانی مجاب به دوبار پرداخت می‌شود. برای مثال در شبکه‌ی بیت‌کوین، هر تراکنش هش مخصوص به خود را دارد. به عبارتی دیگر، هش همان ID تراکنش‌ها است. اگر هکر تصمیم به تغییر‌ ID تراکنش‌ها داشته باشد، این کار را از طریق انتقال تراکنش با هش تغییر داده شده به شبکه انجام می‌دهد. بدین ترتیب تراکنش جعلی قبل از تراکنش اصلی تایید می‌شود. اگر این اقدام با موفقیت انجام شود، فرستنده گمان می‌کند که تراکنش اولیه ناموفق بوده. این در حالی است که مبلغ از موجودی حساب او کسر می‌شود و اگر فرستنده دوباره تراکنش را تکرار کند، برای بار دوم نیز مبلغ از حساب وی کسر خواهد شد. زمانی که هر دو تراکنش توسط ماینر‌ها تایید شوند عملیات هک با موفقیت صورت گرفته است.

در سال 2014، صرافی MtGox با این نوع حمله مواجه شد و افراد بسیاری دارایی‌های بیت کوین خود را از دست دادند.

با این حال بیت کوین راه حلی به نام SegWit برای جلوگیری از این حمله ارائه داده است به این صورت که اطلاعات امضاها از تراکنش‌های بیت کوین جدا شده و با هش‌های تغییر ناپذیر جایگزین می‌شود.

 

حمله مسیریابی (Routing attacks)

حمله مسیریابی می‌تواند همزمان بر نود‌ها و یا کل شبکه تاثیر گذار باشد. ایده‌ی این حمله به این صوت است که هکر پیش از ارسال شدن تراکنش‌ها به نودها، آن را دستکاری می‌کند. مطلع شدن از این موضوع توسط نود‌های دیگر تقریبا غیرممکن است زیرا هکر شبکه را به بخش‌هایی تقسیم می‌کند که قابل تعامل با یکدیگر نمی‌باشند. حمله مسیر یابی در واقع به دو نوع جداگانه تقسیم می‌شود:

  1. حمله‌ی بخش‌بندی شده که در آن نود‌های شبکه در گروه‌های جداگانه قرار می‌گیرند.
  2. حمله‌ی تاخیری که هکر باعث ایجاد اخلال در پیام‌ها و سپس انتشار آن در شبکه می‌شوند.

 

حمله‌ زمان‌ربایی (Timejacking)

حمله‌ی زمان ربایی از یک آسیب‌پذیری نظری در مدیریت زمان‌بندی بیت‌کوین استفاده می‌کند. در طول این حمله هکر شمارنده‌ زمان شبکه را برای نود‌ها را تغییر داده و نود را مجبور به پذیرش بلاکچین جایگزین می‌کند. این هدف زمانی محقق می‌شود که هکر بتواند چندین همتای تقلبی را به شبکه با زمان بندی نادرست اضافه کند. با این حال می‌توان با محدود کردن پذیرش طیف‌زمان یا استفاده از زمان سیستم نود از وقوع این حمله جلوگیری کرد.

 

حمله خسوف (Eclipse)

برای حمله‌ی خسوف لازم است هکر کنترل تعداد زیادی از آدرس IP را در اختیار داشته باشد و یا یک بات نت توزیع شده داشته باشد. سپس آدرس‌ها را روی نود‌های قربانی بازنویسی کرده و تا زمان راه اندازی دوباره‌ی نود‌ها منتظر بماند. پس از راه اندازی مجدد تمام اتصالات خروجی نود قربانی به آدرس IP که تحت کنترل هکر است منحرف می‌شود. بدین ترتیب قربانی توانایی دستیابی به تراکنش‌هایی که به آنها علاقه‌مند است ندارد. محققان دانشگاه بوستون یک حمله‌ی خسوف با استفاده از تنها یک یا دو دستگاه به شبکه‌ی اتریوم ترتیب دادند.

 

حمله سیبل (Sybil)

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

 

حمله به کیف پول کاربران

حمله به کیف پول کاربران

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

 

حمله فیشینگ (Phishing)

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

این نوع هک در گروه‌های تلگرامی پلتفرم‌های غیرمتمرکز بسیار رایج است. 

در سال 2018، یک حمله به کیف پول IOTA با راه اندازی iotaseed.io که یک تولید کننده‌ی عبارات بازیابی تقلبی بود آغاز شد. هکر‌ها با ترتیب دادن برنامه‌ی این حمله و جمع آوری عبارات بازیابی، توانستند 4 میلیون دلار IOTA از کیف پول کاربران سرقت کنند.

 

حمله لغت‌نامه (Dictionary attacks)

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

 

امضاهای آسیب پذیر (Vulnerable signature)

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

 

ایجاد کلید ناقص (Flawed key generation)

در سال 2014، هکری به نام Johoe با سو استفاده از ایجاد کلید‌ها توانست به کلید‌های خصوصی تهیه شد توسط Blochchain.info دسترسی پیدا کند. این حمله در نتیجه‌ی یک اشتباه در طول یک به روزرسانی منجر به ضعف تصادفی بودن ورودی‌ها در ساخت کلید عمومی کاربران شد. اگرچه این مشکل به سرعت برطرف شد اما این نقص همچنان در الگوریتم ECDSA وجود دارد.

 

حمله به کیف‌پول‌های سرد و گرم

کیف پول‌های سخت افزاری و نرم افزاری نیز از این حملات مستثنی نمی‌باشند. برای مثال، محققان حمله‌ای به نام Evil Maid ترتیب دادند که با استفاده از باگ‌های موجود در کیف پول لجر نانو اس توانستند به تمام اطلاعات کاربران از جمله کلید‌های خصوصی، پین‌ها و عبارات بازیابی دسترسی داشته باشند.

یکی از تازه‌ترین حملات به کیف پول‌های سخت افزاری در سال 2019، در صرافی UPbit، در زمان انتقال دارایی ها به کیف پول سخت افزاری رخ داد. از آنجایی که هکر‌ها از زمان‌بندی این انتقال اطلاع داشتند توانستند به 342 هزار اتر دست یابد.

کیف پول‌های نرم افزاری روشی دیگر برای ذخیره‌ی دارایی‌های رمز ارزی است. اگرچه صاحبان صرافی‌ها مدعی هستند که دارایی‌های کاربران را در کیف‌پول‌هایی که به اینترنت متصل نیستند ذخیره می‌کنند اما یک هک 500 میلیون دلاری مربوط به صرافی Coinchech در سال 2018 ثابت کرد که همیشه این ادعا درست نیست.

 

حمله به قرارداد‌های هوشمند

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

 

قرارداد‌های هوشمند قرارداد‌های دیجیتالی بر روی بلاکچین هستند که در صورت رعایت شرایط و ضوابط از پیش تعیین شده، بدون نیاز به شخص سوم به صورت خودکار فعال می‌شوند. قرارداد‌های هوشمند بر روی پلتفرم‌هایی نظیر Ethereum، Solana و Binance Smart Chain اجرا می‌شوند. مسائل امنیتی اصلی بلاکچین مرتبط با قرارداد‌های هوشمند از باگ‌های کد منبع، ماشین مجازی شبکه، محیط زمان اجرای قرارداد‌های هوشمند و خود بلاکچین نشات می‌گیرد. در ادامه به بررسی هر یک از این موارد می‌پردازیم.

 

آسیب پذیری در کد منبع قرارداد

اگر کد منبع قرارداد هوشمند آسیب پذیر باشد، می‌تواند هر دو طرف قرار داد را به دردسر بیندازد. برای مثال، باگ‌های کشف شده در قرارداد اتریوم در سال 2016، هزینه‌ی 80 میلیون دلاری روی دست صاحبان آن گذاشت. یکی از آسیب پذیری‌های رایج در زبان برنامه نویسی سالیدیتی به نام (reentrancy ttack)، امکان کنترل توابع غیر قابل اعتماد از دیگر قرارداد‌های هوشمند را فراهم می‌کند.

 

آسیب پذیری در ماشین‌های مجازی

ماشین مجازی اتریوم یک کامپیوتر پشته‌ای (Stack) است که تمام قراردادهای هوشمند مبتنی بر بلاکچین اتریوم بر روی آن اجرا می‌شوند. در ادامه رایج ترین آسیب پذیری‌های اتریوم را بررسی می‌کنیم:

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

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

باگ‌ها در کنترل دسترسی: یک باگ اصلاح کننده در قرارداد‌های هوشمند اتریوم وجود دارد که به هکر این امکان را می‌دهد تا به عملکرد‌های حساس در قرارداد دسترسی پیدا کند.

حمله‌ی آدرس کوتاه: ماشین مجازی اتریوم می‌تواند شناسه و مدارک نادرست را بپذیرد، بدین ترتیب امکان این حمله وجود دارد. در این روش فرستنده‌ها می‌توانند با فرستادن آدرس‌های غیر واقعی به قربانیان از این ویژگی سوء استفاده می‌کنند. برای مثال در سال 2017، یک حمله به Coindash ICO صورت گرفت که در نتیجه‌ی تغییر در آدرس اتریوم کوین‌دش، افراد بسیاری دارایی‌های خود را به آدرس کیف پول هکر انتقال دادند. البته بلاکچین‌های جدید مانند کاردانو و زیلیکا به واسطه زبان برنامه نویسی که استفاده می‌کنند ادعا می‌کنند که می‌توانند امنیت قرارداد‌های هوشمند را تامین کنند.

برای آشنایی بیشتر با قرارداد هوشمند مقاله‌ی قرارداد هوشمند به زبان ساده را مطالعه کنید.

 

حمله به مکانیزم تایید تراکنش‌ها

حمله به مکانیزم تایید تراکنش ها

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

دوبار خرج کردن یک حمله‌ی رایج به بلاکچین است که از زمان لازم برای تایید تراکنش‌ها سواستفاده می‌کند. لازم است تمامی تراکنش‌ها قبل از تایید شدن توسط کاربران تایید شوند. حمله کننده‌ها می‌توانند از این تاخیر به نفع خود استفاده کرده و سیستم را برای دوبار خرج کردن کوین‌ها یا توکن‌ها در بیش از یک تراکنش فریب دهد. در ادامه برخی از رایج ترین روش‌های سواستفاده از زمان لازم برای تایید تراکنش‌ها را بررسی خواهیم کرد.

 

حمله فینی (Finney attacks)

حمله‌ی فینی زمانی امکان پذیر است که یک تراکنش در یک بلاک استخراج نشده قرار می‌گیرد و یک تراکنش مشابه قبل از اضافه شدن بلاک به شبکه ساخته می‌شود. بدین ترتیب تراکنش دوم نامعتبر می‌شود.

 

حمله رقابتی (Race attach)

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

 

حمله دوبار خرج کردن (Double spending)

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

 

حمله وکتور 76 (Vector76)

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

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

 

حمله تاریخ جایگزین (Alternative history attacks)

حمله تاریخ جایگزین می‌تواند در تایید چند تراکنش هم رخ دهد اما به توان محاسباتی بسیاری نیاز دارد. کاربر مخرب می‌تواند یک تراکنش را به فروشنده ارسال کند و همزمان فورک جایگزین همراه با تراکنشی که همان مبلغ را باز میگرداند استخراج کند. حتی اگر فروشنده برای تایید تراکنش‌ها صبر کرده و سپس محصول را ارسال کند، اگر مهاجم زنجیره‌ی بلند‌تری منتشر کرده و سکه‌ها را دوباره دریافت کند، ممکن است پول خود را از دست بدهد.

 

حمله‌ی 51 درصدی (51% or majority attacks)

حمله‌ی 51 درصدی زمانی رخ می‌دهد که هکر بتواند کنترل 51 درصد قدرت محاسباتی شبکه را در اختیار بگیرد و یک فورک جایگزین ایجاد کند. این حمله در سال‌های اخیر تنها نقطه ضعف شبکه‌ی بلاکچین بود اما رخ دادن آن نامحتمل تلقی می‌شد. اتریوم کلاسیک یکی از بلاکچین‌هایی است که هدف این نوع حمله قرار گرفته است اما این نوع حمله تنها اتریوم کلاسیک را مورد هدف قرار نداده است و تاکنون بلاکچین‌های مختلفی از جمله Verge، ZenCash، Monacoin و Litecoin Cash در معرض این حمله قرار گرفته‌اند. در تمامی این حملات مهاجم کنترل بیش از 50 درصد شبکه را در اختیار گرفته و میلیون‌ها دلار به جیب زده است.

 

حمله به استخر‌های استخراج (Mining pool attacks)

حمله به استخر های استخراج

شرایط استخراج اکثر رمزارز‌های بزرگ مانند بیت‌کوین به این صورت است که استخراج انفرادی منجر به کسب سود نمی‌شود. در نتیجه ماینر‌ها قدرت پردازش سخت افزار‌های خود را روی هم گذاشته و به این صورت به استخراج کوین‌ها پرداخته و پاداش دریافتی را بین خود تقسیم می‌کنند. با انجام این کار شانس استخراج کوین‌ها بیشتر و پاداش دریافت شده نیز افزایش می‌یابد. در حال حاضر بزرگترین استخر‌های استخراج بیت‌کوین، BTC.com ، AntPool و ViaBTC می‌باشند که با استناد به گفته‌ی Blockchain.com، پنجاه و دو درصد قدرت پردازش کل شبکه را در اختیار دارند. استخر‌های استخراج طعمه‌های جذابی برای مهاجمان هستند. در ادامه به بررسی رایج ترین روش‌های حمله به استخر‌های استخراج خواهیم پرداخت.

 

استخراج خودخواهانه (Selfish mining)

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

با استفاده از این روش در سال 2014 و حمله به استخر the Eligius، ماینر‌ها حدود 300 بیت کوین را از دست دادند. شانس موفقیت این روش بسیار بالا است و امکان رخ دادن آن برای تمام رمزارز‌ها وجود داد. 

 

فورک پس از مضایقه (FAW)

فورک پس از مضایقه (Fork After Withholding) نوعی استخراج خودخواهانه است با این تفاوت که پاداش بیشتری برای هکر‌ها به ارمغان می‌آورد. در طول این حمله ماینر مخرب بلاک برنده را پنهان و بسته به شرایط یا آن را رها کرده و یا در زمانی دیگر برای ایجاد فورک آن‌ را آزاد می‌کند. 

 

جمع‌بندی

در این مقاله از بیتفا به معرفی انواع راه‌های هک و حمله به blockchain پرداختیم. همانطور که می‌دانید فناوری بلاکچین یک فناوری نوظهور است. اگرچه این فناوری ویژگی‌های شگفت انگیزی دارد با این حال از امنیت صد درصد برخوردار نبوده و همواره از طریق روش‌های مختلف هدف حمله‌ی هکر‌ها قرار می‌گیرد. با این حال حملات به بلاکچین عموما به دو دسته تبدیل می‌شوند: حملاتی که در نتیجه ضعف در تکنولوژی است و حملاتی که در نتیجه‌ی بی‌دقتی و عدم توجه کاربران صورت می‌گیرد.


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

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

آواتار

دیدگاه شما با موفقیت ثبت شد