پیشرو تلاشگران

راه‌های هک و حمله‌ به بلاک چین قسمت ۴

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

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

به عنوان مثال این زمان برای بیت کوین ۱۰ دقیقه است.

دو بار خرج کردن (Double Spending) :

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

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

حمله های فینی

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

وبه این صورت تراکنش دوم مشابه را غیرفعال و نامعتبر می‌کند.

حمله های رقابتی

حمله رقابتی (Race) زمانی انجام می‌شود که یک مهاجم دو تراکنش متضاد ایجاد می‌کند.

اولین تراکنش به قربانی می فرستد که او پرداخت را قبول می‌کند و محصول را بدون این‌ که منتظر تایید اولیه بماند ، ارسال می‌کند.

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

حمله وکتور۷۶

وکتور۷۶ (Vector76)، ترکیبی از دو حمله پیشین است.

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

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

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

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

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

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

حمله های تاریخ جایگزین

حمله تاریخ جایگزین (Alternative history) ممکن است حتی در مورد تایید چندین تراکنش نیز رخ دهد، اما به مقدار زیادی توان محاسباتی نیاز دارد.

در این روش ، کاربر مخرب تراکنشی را به فروشنده ارسال می‌کند.

و در همان زمان فورکی جایگزین را با تراکنش دیگری که ارزهای مشابهی را بازمی‌گرداند، استخراج می‌کند.

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

حمله ۵۱ درصدی

حمله ۵۱ درصدی زمانی امکان‌پذیر است که یک هکر کنترل ۵۱ درصد از نرخ هش شبکه را در دست بگیرد.

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

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

با این حال ۵ ارز دیجیتال ورج، زن‌کش، موناکوین، بیت کوین گلد و لایت کوین کش از حملات ۵۱ درصد آسیب دیدند.

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


همچنین بخوانید...!

مشاهده : 158 بار

پاسخی بگذارید

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