بلاک چین جزو پر ماجرا ترین تکنولوژی های امروز به شمار میره که اتفاقات جالب زیادی در اون اتفاق می افته. در حالت کلی در دنیای کریپتوکارنسی 3 دسته از افراد وجود دارن که هر کدوم فعالیت و هدف خاصی رو دنبال می کنن. توسعه دهندگان پروژه ها افرادی هستن که پروژه ها رو طراحی و ایجاد می کنن. دسته دیگه افرادی هستن که روی پروژه های ایجاد شده، سرمایه گذاری می کنن و دسته آخر افرادی که پروژه ها رو هک می کنن. می تونیم بگیم فعالان گروه سوم افراد باهوشی هستن و افراد دسته اول در رتبه دوم قرار دارن. بنابراین در ادامه این مقاله از سری مقالات صرافی ارز دیجیتال به بررسی هک فینی در ارزدیجیتال می پردازیم که موضوع قابل اهمیت در بررسی تخصصی امنیت در ارزهای دیجیتال به شمار میره.
حمله فینی (Finny Attack) چیست؟
Finney Attack اولین حمله بلاک چین در حوزه شناخته شده در امنیت در ارزهای دیجیتال در شبکه بیت کوین هست و توسط اولین فردی که بیت کوین دریافت کرده، کشف شد. حمله یا هک فینی نوع بسیار خاصی از حملات دوگانه هست که بر بیت کوین و هر ارز دیجیتالی مشتق شده از اون تاثیر می ذاره. هال فینی، یک توسعه دهنده نرم افزار آمریکایی، اولین دریافت کننده اولین تراکنش بیت کوین بود. همچنین هال فینی اولین شخصی هست که به طور عمومی درباره راه اندازی اولیه بیت کوین صحبت کرد. نکته قابل توجه این هست که وی به عنوان یک توسعهدهنده نرمافزار، او طرح خرج مضاعف روی بیتکوین رو کشف کرد که این طرح به نام اوFinney Hack یاFinney Attack نامگذاری شد.
هک یا حمله فینی نوعی حمله هک/دوگانه هست. فینی در رابطه با هک فینی اینطور توضیح داده که یک ماینر که قصد ایجاد بلوک داره زمانی می تونه این کار رو انجام بده که تراکنش مدنظرش رو از یک حساب/آدرس 1 به حساب/آدرس 2 دیگه ای وارد کنه (یعنی محلی که هر دو آدرس متعلق به ماینر هستن). سپس، تراکنش دیگه ای رو با همون ارزها و از آدرس 1 به آدرس 3 که مربوط به کاربر دیگه یا هست، منتقل می کنه. اگه کاربر تراکنش رو بدون تایید شبکه قبول کنه، مهاجم می تونه بلوکی رو که تراکنش اولیه وی در اون قرار گرفته رو آزاد کنه. این اقدام، تراکنش انجام شده با کاربر رو باطل می کنه و به مهاجم اجازه میده تا حساب رو هک کنه و با موجودی کاربر، معاملات دیگه ای انجام بده.
چگونگی اجرا هک فینی (Finny Attack):
ممکن هست حملات سایبری به آسونی مجرمان سایبری رو به خودشون جذب کنن، چون به نظر می رسه روشی آسون برای رسیدن به ثروت کلان بدون نیاز به تلاش هست ولی این کار آسونی نیست و هرکسی نمی تونه این رو انجام بده. برای هک کردن، فرد باید ماینر باشه تا بتونه بلوکی رو استخراج کنه تا تراکنش اون اعتبار سنجی بشه. همچنین، برای پذیرش تراکنش با تایید صفر از شبکه به یک تاجر نیاز هست. دارا بودن این دوشرط خیلی سخته ولی در تئوری، حتی زمانی که شما کمتر از 51 درصد از قدرت هش شبکه رو دارین، می تونین اقدام به هک کنین. هک فینی شامل 3 مرحله است که در ادامه به معرفی و بررسی این 3 مرحله می پردازیم. در اینجا لازم به ذکر است که یکی از مسائل مهم در حفظ امنیت در ارزهای دیجیتال آشنایی با تکنیک هکرها برای سرقت ارزهای دیجیتال است.
مرحله 1:
در مرحله اول هکر تراکنشی رو انجام میده که کوین های خودش رو به حساب/آدرس تحت کنترل می فرسته و بعد استخراج یک بلوک معتبر که تراکنش فوق در اون قرار داره، شروع میشه.
مرحله 2:
زمانی که هکر موفق به استخراج بلوک شامل تراکنش میشه، اون رو به شبکه منتقل نمی کنه بلکه به ارزش همون مقدار توکنی که در تراکنش اول استخراج کرده، خرید می کنه.
مرحله 3:
زمانی که تراکنش انجام شده و تاجر بدون تایید تراکنش رو قبول می کنه، هکر بلوک استخراجی رو به شبکه منتقل می کنه که این اقدام باعث میشه بلاک معتبر شناخته بشه و تراکنش انجام شده برای تاجر بی اعتبار میشه. بنابراین شخصی که این مراحل رو طی کرده هک فینی انجام داده. اما با توجه به قدرت هش ماینرها، این حمله و هک غیر ممکن هست. بنابراین هرچقدر که قدرت هش ماینر کمتر باشه، اجرای درست اون کم هست. همینطور اگه فاصله زمانی بین تکمیل بلاک و عدم عرضه اون به شبکه طولانی بشه، بلاک دیگه ای در شبکه تکمیل میشه که باعث شکست هکر میشه. بنابراین این نوع هک ها نیازمند زمان بندی دقیق و مناسب و صبر زیادهستن. چراکه هکر باید مدت زمان زیادی منتظر بمونه تا یک بلوک خاص چیدا بشه که با توجه به تعداد ماینرها و قدرت هش شبکه خیلی دشوار هست.
کسانی که در معرضFinny Attack:
معمولا افرادی تراکنش های تایید نشده رو قبول می کنن یا تاجران بیشتر در معرض حمله فینی قرار می گیرن. برای مثال یک فروشگاه با ارائه خدمات آنلاین رو فرض کنین که در اون دانلود بازی های ویدیویی که روش پرداخت اون ها با ارزهای دیجیتال هست، وجود داره و علاوه بر این امکان دانلود فوری رو نیز در این فروشگاه ارائه شده که ممکنه در معرض حملات هک قرار بگیره. یا در سوپرمارکت ها هم احتمال وقوع هک فینی وجود داره. با اینکه زمان خرید دقیق نیست اما افراد زیادی در صف خرید وجود دارن که مانع استفاده هکر از زمان برای حمله میشن.
نحوه محافظت از خود در برابر هک فینی:
نخستین توصیه ای که می تونیم بکنیم این هست که منتظر حداقل 6 تایید در شبکه بیت کوین باشین تا بتونین تراکنشی امن و غیرقابل برگشت داشته باشین. می تونین تعداد تاییدات رو با توجه به مبلغی که قصد معامله اون رو دارین، ارزش گذاری کنین. یعنی اگه مبلغی که قصد معامله اون رو دارین زیاده، می تونین تاییدیه های زیادی تنظیم کنین تا معامله تون در امنیت انجام بشه. در حالتی که بلوک های جدید در تراکنش های بیت کوین ایجاد بشه، تراکنش های انجام شده در اون غیرقابل برگشت خواهد بود. اگه هکری قصد به دست آوردن دارایی ها رو با حمله فینی داشته باشه، تطبیق نیاز به این دارایی با جستجوی یک بلوک کار سختی هست. حتی اگه هکر بتونه این مرحله رو طی کنه، این امکان وجود داره که تاجر منتظر دریافت تاییدیه ها باشه.
نتیجه و جمع بندی:
در هک فینی، هکر کاربری رو هدف قرار میده که قبل از معامله یا عرضه کالا بدون دریافت تاییدیه، تراکنش ها رو انجام میده. اولین دریافت کننده بیت کوین به نام هال فینی، اولین بار پیشنهاد حمله فینی رو داد که این حمله با اسم اون نام گذاری شد. برای هک فینی، هکران تراکنش های بین آدرس هاشون رو در بلوک های جدیدی که خودشون ایجاد می کنن، انجام میدن که این کوین ها دوبار خرج میشن. سپس بلوک های جدید وارد شبکه میشن. که تراکنش انجام شده کاربر باطل میشه و هکر امکان خرج دوباره اون مقدار پول هک شده رو داره.