تصور کنید کلیدهای خصوصی خود را با دقت در یک کیف پول سختافزاری ذخیره کردهاید و فقط با پلتفرمهای معتبر کار میکنید، اما ناگهان متوجه میشوید داراییتان به دلیل تغییر بیسروصدای یک کتابخانهی نرمافزاری در برنامهی دیفای مورد علاقهتان به سرقت رفته است. در این مقاله، مکانیزم این حملات غیرمستقیم را بررسی میکنیم و راهکارهای عملی برای مدیریت دسترسیها و محافظت از سرمایهی دیجیتال شما ارائه میدهیم.
حملهی زنجیرهی تأمین چیست و چگونه کار میکند؟
برای درک بهتر حملهی زنجیرهی تأمین (Supply Chain Attack)، یک قلعهی بسیار امن و نفوذناپذیر را تصور کنید. دیوارهای این قلعه بلند هستند و نگهبانان متعددی از آن محافظت میکنند. دشمن که میداند حملهی مستقیم به این قلعه کار بیهودهای است، به جای درگیری با دیوارها، سراغ کشاورزانی میرود که آب و غذای قلعه را تامین میکنند. آنها مواد غذایی را در مسیر آلوده میکنند و نگهبانان قلعه، بدون اینکه متوجه شوند، این مواد آلوده را با دست خودشان به داخل میبرند.
در دنیای دیجیتال و فضای نرمافزارها نیز دقیقا همین اتفاق میافتد. شرکتها و پروژههای بزرگ معمولا سیستمهای امنیتی بسیار قدرتمندی دارند، اما برای ساخت برنامههای خود از کدهای آماده، نرمافزارهای کمکی یا سرویسهای شرکتهای دیگر استفاده میکنند. هکرها به جای درگیری با سیستم امنیتی شرکت اصلی، این شرکتهای واسطه و تامینکننده را هک میکنند. به این ترتیب، کدهای مخرب در قالب یک فایل یا بهروزرسانی معتبر، وارد سیستم هدف اصلی میشود.
تفاوت حملهی مستقیم شبکه با نفوذ خاموش از طریق واسطهها
تفاوت اصلی در مسیر نفوذ است. در یک حملهی مستقیم، هکر تلاش میکند تا رمز عبور سرور اصلی را بشکند یا از یک باگ (ایراد نرمافزاری) در سیستم خود هدف استفاده کند. این کار شبیه شکستن قفل در ورودی است که معمولا سر و صدای زیادی دارد و سیستمهای امنیتی سریعا آن را تشخیص میدهند.
اما نفوذ از طریق واسطهها کاملا خاموش و پنهان است. در این روش، هکر کد مخرب خود را در نرمافزاری پنهان میکند که سیستم شما از قبل به آن اعتماد کامل دارد. وقتی برنامهی شما برای دریافت اطلاعات یا بهروزرسانی به سراغ آن واسطه میرود، با دست خودش بدافزار (نرمافزار مخرب) را دانلود و اجرا میکند. در این حالت، هیچ زنگ خطری به صدا در نمیآید، زیرا سیستم فکر میکند در حال انجام یک کار عادی و تایید شده است.
چرا هکرها بهجای هدف اصلی، تأمینکنندگان را انتخاب میکنند؟
انتخاب تامینکنندگان به عنوان هدف اولیه، مزایای بزرگی برای مهاجمان دارد که باعث میشود این روش را ترجیح دهند:
- عبور آسانتر از لایههای امنیتی: پروژههای بزرگ بودجههای کلانی برای امنیت سایبری دارند، اما یک شرکت کوچک سازندهی یک افزونه یا کتابخانهی نرمافزاری (مجموعهای از کدهای از پیش نوشته شده که برنامهنویسان استفاده میکنند) ممکن است امنیت بسیار پایینی داشته باشد. هک کردن این شرکت کوچک به مراتب سادهتر است.
- دسترسی همزمان به چندین قربانی: اگر هکر بتواند کدهای یک سرویس واسطهی محبوب را آلوده کند، تمام پروژهها و کاربرانی که از آن سرویس استفاده میکنند، به طور همزمان آلوده میشوند. با یک بار نفوذ، هکر میتواند به صدها یا هزاران هدف مختلف در سراسر شبکهی جهانی دسترسی پیدا کند.
- دور زدن سیستمهای تشخیص نفوذ: از آنجایی که اطلاعات آلوده از یک منبع معتبر و تایید شده وارد سیستم میشوند، فایروالها (دیوارهای آتش یا سیستمهای محافظتی شبکه) معمولا مانع ورود آنها نمیشوند و کد مخرب به راحتی شروع به کار میکند.
اجزای اصلی یک زنجیرهی تأمین نرمافزاری و نقاط نفوذ
زنجیرهی تأمین در دنیای دیجیتال شامل جعبههای فیزیکی و کامیونهای حمل بار نیست، بلکه از خطوط کد، نرمافزارها و ابزارهای توسعه تشکیل شده است. هکرها معمولا برای نفوذ، اجزای زیر را هدف قرار میدهند:
- کتابخانهها و کدهای شخص ثالث (Third-party Codes): اکثر برنامهها از صفر نوشته نمیشوند و از کدهای آمادهی دیگران استفاده میکنند. آلوده کردن یکی از این کدهای منبعباز (Open-Source یا کدهایی که در دسترس عموم هستند) یک نقطهی نفوذ عالی برای مهاجمان است.
- ابزارهای توسعه و برنامهنویسی: گاهی هکرها نرمافزاری که خود برنامهنویسان برای نوشتن و تست کدها استفاده میکنند را هک میکنند. به این ترتیب، کدی که برنامهنویس مینویسد از همان ابتدا آلوده و مخرب است.
- سیستمهای بهروزرسانی (Update Mechanisms): این یکی از خطرناکترین نقاط نفوذ است. هکر سرور توزیعکنندهی بهروزرسانی را در دست میگیرد و به جای نسخهی جدید و سالم برنامهی مورد نظر، یک نسخهی دستکاری شده را برای تمام کاربران ارسال میکند.
مکانیزم Supply Chain Attack در دنیای ارز دیجیتال
در دنیای برنامهنویسی مدرن، هیچ تیمی چرخ را از نو اختراع نمیکند. توسعهدهندگان برای ساخت برنامههای جدید، از کدهای آماده و سرویسهای کمکی دیگران استفاده میکنند. این روش سرعت کار را بالا میبرد، اما در فضای بلاکچین که مستقیما با پول و دارایی افراد سروکار دارد، ریسک بزرگی به همراه میآورد. اگر یکی از این قطعات کمکی آلوده باشد، تمام پروژهای که بر پایهی آن ساخته شده به خطر میافتد. بیایید بررسی کنیم که این مکانیزم چگونه در بخشهای مختلف شبکهی رمزارزها عمل میکند.
نقش قراردادهای هوشمند و کدهای شخص ثالث در پلتفرمهای غیرمتمرکز
پروژههای کریپتویی برای اجرای دستورات خود از قرارداد هوشمند (Smart Contract: کدهای برنامهنویسی شدهای که توافقات مالی را به صورت خودکار و بدون نیاز به واسطه در شبکه اجرا میکنند) استفاده میکنند. برای نوشتن این قراردادها، برنامهنویسان اغلب از کدهای شخص ثالث (Third-Party: کدهای از پیش نوشته شده توسط سایر شرکتها یا افراد که به صورت متنباز در اینترنت موجود است) کمک میگیرند.
فرض کنید یک تیم توسعهدهنده در حال ساخت یک پلتفرم وامدهی است. آنها به جای نوشتن تمام کدها از صفر، بخش مربوط به محاسبهی سود را از یک کتابخانهی کدهای آماده دانلود میکنند. مشکل اینجاست که هکرها به جای حمله به پلتفرم وامدهی، به منبع اصلی آن کدهای آماده نفوذ کرده و کدهای مخرب خود را در آنجا جاسازی میکنند. زمانی که برنامهنویسان پلتفرم وامدهی از این کدهای آلوده استفاده میکنند، بدون اینکه متوجه شوند، یک در پشتی (راه نفوذ پنهان) برای هکرها باز میگذارند. در نتیجه، به محض شروع به کار پلتفرم، هکرها میتوانند دارایی کاربران را به سرقت ببرند.
وابستگی پروژههای دیفای به اوراکلها و سرویسهای خارجی
یکی از جذابترین بخشهای بازار رمزارز، حوزهی دیفای (DeFi یا امور مالی غیرمتمرکز: سیستمهایی که خدمات بانکی مثل وامدهی و صرافی را بدون حضور بانکها و نهادهای مرکزی ارائه میدهند) است. پلتفرمهای دیفای برای عملکرد درست، نیاز به اطلاعات دنیای بیرون از بلاکچین دارند؛ مثلا باید بدانند قیمت لحظهای بیت کوین یا اتریوم دقیقا چقدر است. اینجا پای اوراکل (Oracle: سرویسهای واسطهای که اطلاعات دنیای واقعی را جمعآوری کرده و به داخل شبکهی بلاکچین میآورند) به میان میآید.
ارتباط پلتفرمهای دیفای با اوراکل یک نمونهی بارز از زنجیرهی تأمین است. پلتفرم دیفای به عنوان مشتری، به دادههایی که اوراکل تامین میکند اعتماد کامل دارد. مکانیزم حمله در این بخش به شکل زیر است:
- نفوذ به منبع داده: هکرها به جای هک کردن خود پلتفرم دیفای، به سیستم اوراکل حمله میکنند.
- تزریق اطلاعات دروغین: آنها قیمتها را در سیستم اوراکل دستکاری میکنند. مثلا قیمت یک ارز دیجیتال را بسیار پایینتر از حد واقعی گزارش میدهند.
- تخلیهی سرمایه: پلتفرم دیفای با دریافت این اطلاعات غلط، محاسبات اشتباهی انجام میدهد و هکرها از این فرصت استفاده کرده و داراییها را با قیمتهای غیر واقعی میخرند و استخرهای مالی را خالی میکنند.
آسیبپذیری صرافیها و کیف پولها در برابر بهروزرسانیهای مخرب نرمافزاری
شاید فکر کنید استفاده از برنامههای رسمی و شناختهشده امنیت شما را تضمین میکند، اما حملهی زنجیرهی تأمین دقیقا از همین اعتماد سوءاستفاده میکند. همه ما عادت داریم نرمافزارهای خود را بهروزرسانی کنیم. هکرها از این رفتار طبیعی به عنوان یک سلاح استفاده میکنند.
صرافیها و کیف پولهای ارز دیجیتال برای بهبود خدمات خود مرتبا نسخههای جدیدی منتشر میکنند. هکرها در یک حملهی پیچیده، به سرورهای توزیعکنندهی این بهروزرسانیها نفوذ میکنند. روند این اتفاق معمولا شامل مراحل زیر است:
- دسترسی به سرور اصلی: مهاجمان به سروری که فایلهای بهروزرسانی صرافی یا کیف پول را برای کاربران ارسال میکند، رخنه میکنند.
- جایگزینی فایلها: آنها فایل نسخهی اصلی را با یک فایل آلوده که کاملا مشابه نسخهی اصلی طراحی شده است، جایگزین میکنند.
- نصب توسط کاربر: کاربران با مشاهدهی پیام نصب نسخهی جدید و با اعتماد به برند ارائهدهنده، فایل را دانلود و نصب میکنند.
- سرقت اطلاعات: نرمافزار جدید به ظاهر به خوبی کار میکند، اما در پسزمینه، کلیدهای خصوصی کاربر را جمعآوری کرده و برای هکرها میفرستد.
در این سناریو، کاربر هیچ اشتباهی نکرده و روی هیچ لینک مخربی کلیک نکرده است؛ او فقط یک برنامهی معتبر را از یک منبع معتبر بهروزرسانی کرده است و همین ویژگی است که حملات زنجیرهی تأمین را به یکی از خطرناکترین تهدیدهای دنیای امنیت سایبری تبدیل میکند.

بررسی نمونههای واقعی از حملات زنجیرهای در پروژههای کریپتویی
برای اینکه درک بهتری از تئوریهایی که تا اینجا بررسی کردیم داشته باشیم، بهترین کار بررسی اتفاقاتی است که واقعا در بازار رخ دادهاند. گاهی اوقات مرور یک اتفاق واقعی، از دهها ساعت آموزش تئوری موثرتر است. در این بخش نگاهی به چند سناریوی رخ داده در دنیای رمزارزها میاندازیم تا ببینیم هکرها چگونه از طریق واسطهها به سیستمهای پیچیده نفوذ میکنند.
هک شدن کتابخانههای پرکاربرد و اثر دومینووار آن روی برنامههای غیرمتمرکز (dApps)
برنامههای غیرمتمرکز (dApps: برنامههای مالی یا کاربردی که روی شبکهی بلاکچین اجرا میشوند و هیچ نهاد مرکزی آنها را کنترل نمیکند) برای سرعت بخشیدن به کار خود، از کدهای آمادهای به نام کتابخانهی نرمافزاری استفاده میکنند. این کتابخانهها مانند قطعات پیشساختهی یک ساختمان هستند. حالا تصور کنید کارخانهای که این قطعات پیشساخته را تولید میکند، یک نقص عمدی در آنها ایجاد کند؛ تمام ساختمانهایی که از این قطعات استفاده کردهاند، به طور همزمان در خطر ریزش قرار میگیرند.
به این پدیده اثر دومینووار میگویند. یک مثال بسیار واضح در دنیای رمزارز، نفوذ به کدهای ارتباطی کیف پولها است. در یک رویداد واقعی، هکرها موفق شدند به یکی از کتابخانههای نرمافزاری که بسیاری از برنامههای غیرمتمرکز برای اتصال به کیف پول کاربران از آن استفاده میکردند، دسترسی پیدا کنند. هکر کد مخرب خود را جایگزین کد سالم کرد. نتیجه این شد که وقتی کاربران وارد سایت برنامهی غیرمتمرکز مورد علاقهی خود میشدند و دکمهی اتصال کیف پول را میزدند، دارایی آنها به جای انتقال به قرارداد هوشمند اصلی، مستقیما به جیب هکرها واریز میشد. در اینجا خود برنامهی غیرمتمرکز هیچ مشکلی نداشت، بلکه واسطهی ارتباطی آلوده شده بود.
مقایسهی هکهای واسطهای شناختهشده در کریپتو و ریشهیابی ضعف امنیتی آنها
برای درک سریعتر نقاط ضعف، در جدول زیر چند نمونه از الگوهای رایج نفوذ غیرمستقیم در پروژههای رمزارزی را با هم مقایسه میکنیم:
|
نام رویداد یا الگوی حمله
|
هدف واسطهای هکرها
|
روش نفوذ به سیستم
|
نتیجه و آسیب وارد شده
|
|
آلودگی کتابخانهی اتصال (مانند لجر کانکت)
|
کدهای متنباز و کتابخانههای اشتراکی
|
هک کردن حساب کاربری یکی از کارمندان توسعهدهنده و تغییر کدهای اصلی
|
سرقت دارایی کاربران به محض کلیک روی دکمهی اتصال در سایتهای معتبر
|
|
دستکاری رابط کاربری سایت (مانند بجر دائو)
|
شبکهی توزیع محتوا و سرورهای میزبانی وبسایت
|
تزریق کدهای مخرب در کدهای ظاهری سایت بدون تغییر قرارداد هوشمند
|
فریب کاربر برای تایید تراکنشهای مخرب به جای تراکنشهای واقعی
|
|
نفوذ از طریق افزونهی مرورگر
|
افزونههای کمکی که کاربران روی مرورگر خود نصب میکنند
|
انتشار یک بهروزرسانی تقلبی و مخرب برای افزونهی معتبر
|
دسترسی پنهان به رمزهای عبور و کلمات بازیابی کاربران
|
درسهایی که از رخنهی امنیتی در رابطهای کاربری (UI) و افزونههای مرورگر گرفتیم
رابط کاربری (UI: ظاهر گرافیکی یک سایت یا برنامه شامل دکمهها، رنگها و منوها که شما مستقیما با آن کار میکنید) پلی است بین شما و کدهای پیچیدهی بلاکچین. یکی از مهمترین درسهایی که از هکهای گذشته گرفتیم این است که امنیت شبکهی بلاکچین لزوما به معنای امنیت وبسایتی که به آن متصل میشوید نیست.
گاهی اوقات قرارداد هوشمند یک پروژه مانند یک گاوصندوق فولادی عمل میکند، اما سایت نمایشدهندهی آن هک شده است. هکرها دکمههای سایت را دستکاری میکنند تا وقتی شما قصد واریز پول به گاوصندوق را دارید، مسیر پول به سمت حساب هکر کج شود.
همچنین افزونههای مرورگر، که برای راحتی کار نصب میکنیم، میتوانند نقطهی ضعف ما باشند. یک افزونهی سادهی مسدودکنندهی تبلیغات یا تحلیلگر قیمت، ممکن است با یک بهروزرسانی آلوده شود و اطلاعات تبادل شده بین شما و کیف پولتان را رصد کند.
از این رویدادها سه درس بسیار مهم میآموزیم:
- چشمبسته به ظاهر سایت اعتماد نکنید: همیشه جزئیات تراکنش را روی صفحهی نمایش کیف پول سختافزاری خود (که قابل هک شدن از راه دور نیست) بررسی کنید، نه فقط روی صفحهی مانیتور.
- مدیریت افزونهها: فقط افزونههای کاملا ضروری و شناختهشده را روی مرورگری که با آن کارهای مالی انجام میدهید، نصب کنید.
- اهمیت امنیت وب: تیمهای توسعهدهنده باید بدانند که داشتن یک کد امن در بلاکچین کافی نیست؛ امنیت دامنهی سایت و سرورهای میزبانی نیز دقیقا به همان اندازه حیاتی است.
پیامدهای حملهی زنجیرهی تأمین برای سرمایهگذاران و تیمهای توسعه
وقتی یک نفوذ امنیتی غیرمستقیم رخ میدهد، آسیبهای آن تنها متوجه یک گروه نمیشود. در این میان، هم کاربرانی که سرمایهی خود را وارد بازار کردهاند متضرر میشوند و هم تیمهای برنامهنویسی که سالها برای توسعهی یک محصول زمان گذاشتهاند. بیایید بررسی کنیم که این نوع حملات دقیقا چه ضربههایی به اکوسیستم رمزارزها وارد میکنند.
خطر سرقت مستقیم داراییهای دیجیتال و تخلیهی استخرهای نقدینگی
یک نتیجهی روشن و بسیار تلخ از رخنهی امنیتی، به سرقت رفتن پول است. در شبکههای مالی غیرمتمرکز، کاربران داراییهای خود را در استخر نقدینگی (Liquidity Pool: خزانهای دیجیتال که داراییهای افراد در آن جمع میشود تا معاملات شبکه به صورت خودکار و بدون نیاز به شخص ثالث انجام شوند) قرار میدهند تا سود کسب کنند. هکرها با دستکاری کدهای واسطهای، به جای درگیری با تکتک کاربران، مستقیم سراغ این استخرها میروند.
این وضعیت شبیه آن است که سارقان از طریق در پشتی که پیمانکاران تاسیسات به اشتباه باز گذاشتهاند، وارد خزانهی اصلی بانک شوند و موجودی را در چند دقیقه خالی کنند. در این حالت، سرمایهگذار خرد به صورت ناگهانی تمام دارایی دیجیتال خود را از دست میدهد، بدون اینکه خودش اشتباهی مرتکب شده باشد.
آسیب به اعتبار برند پروژه و ریزش ناگهانی ارزش توکن
در بازار ارزهای دیجیتال، اعتماد کاربران یک دارایی بسیار ارزشمند است. پروژههای کریپتویی برای کارکرد سیستم و انتقال ارزش، توکن (Token: دارایی دیجیتال اختصاصی یک پلتفرم که ارزش آن به موفقیت و کاربرد آن پروژه بستگی دارد) خود را عرضه میکنند. وقتی خبر یک نفوذ موفقیتآمیز منتشر میشود، حتی اگر مشکل از سمت یک سرویس خارجی و تامینکننده باشد، ترس و وحشت شدیدی در میان کاربران ایجاد میشود.
نتیجهی این ترس، فروش سراسیمه و احساسی داراییها است که باعث ریزش شدید قیمت توکن آن پروژه میشود. در بسیاری از مواقع، اعتبار تیم توسعهدهنده چنان آسیبی میبیند که بازگشت به جایگاه قبلی بسیار دشوار شده و ادامهی مسیر پروژه با چالش جدی روبرو میشود.
چالشهای حقوقی و از دست رفتن اعتماد جامعهی کاربری
پس از وقوع یک حملهی زنجیرهای، فضای پروژه به یک کلاف سردرگم از اختلافات تبدیل میشود. کاربران مالباخته از تیم اصلی پروژه انتظار جبران خسارت دارند، در حالی که تیم اصلی، مقصر را شرکت ثالثی میداند که کدهای مخرب را وارد سیستم کرده است. این چالشهای حقوقی معمولا زمانبر و پرهزینه هستند و تمرکز تیم را از توسعهی پروژه منحرف میکنند.
در این شرایط بحرانی، جامعهی کاربری که قلب تپندهی یک شبکهی دیجیتال است، واکنشهای مشخصی نشان میدهد:
- خروج سریع سرمایه: کاربران به سرعت سرمایهی خود را از استخرهای مالی پلتفرم آسیبدیده خارج میکنند تا از خطرات احتمالی بعدی جلوگیری کنند.
- مهاجرت به پلتفرمهای جایگزین: سرمایهگذاران به سمت پروژههای رقیب میروند که سابقهی شفافتری در کنترل وابستگیهای نرمافزاری خود دارند.
- واکنشهای منفی در شبکههای اجتماعی: فضای رسانهها پر از نقدهای منفی و هشدارهای امنیتی میشود که این موضوع، مانع بزرگی برای ورود کاربران جدید به پلتفرم خواهد بود.
نشانههای هشداردهندهی یک Supply Chain Attack در اکوسیستم بلاکچین
همانطور که پیشتر اشاره کردیم، ویژگی اصلی نفوذ از طریق واسطهها، خاموش و بیسروصدا بودن آن است. هکرها مانند سارقانی هستند که با کلید یدکی و در لباس تعمیرکار وارد خانهی شما میشوند؛ بنابراین دزدگیرهای معمولی به صدا در نمیآیند. با این حال، حتی در این شرایط پیچیده نیز همواره ردپاهایی به جا میماند. اگر به عنوان یک کاربر هوشیار به نشانههای هشداردهندهی شبکه توجه کنید، میتوانید پیش از به خطر افتادن سرمایهی خود، متوجه حضور کدهای مخرب در سیستم شوید.
چگونه متوجه تغییرات مشکوک در مجوزها و تاییدیههای تراکنش شویم؟
در دنیای برنامههای غیرمتمرکز، وقتی میخواهید در یک پلتفرم معاملهای انجام دهید، ابتدا باید یک تاییدیه تراکنش (Approval: مجوزی که به یک قرارداد هوشمند میدهید تا بتواند مقدار مشخصی از داراییهای شما را جابهجا کند) را امضا کنید. این کار شبیه دادن یک حواله با مبلغ مشخص به یک صندوقدار معتمد است.
یکی از مهمترین نشانههای هک شدن رابط کاربری یا کتابخانههای ارتباطی یک پلتفرم، تغییرات غیرعادی در همین درخواستهای تاییدیه است. هکرها معمولا تلاش میکنند از طریق کدهای واسطهی آلوده، مجوزهایی فراتر از حد نیاز بگیرند. به محض مشاهدهی موارد زیر، تراکنش را متوقف کنید:
- درخواست دسترسی نامحدود: اگر پلتفرمی که تا دیروز برای یک تراکنش کوچک صرفا دسترسی محدودی میگرفت، ناگهان درخواست دسترسی نامحدود (Infinite Approval: مجوزی که به قرارداد اجازه میدهد تا هر زمان که بخواهد تمام موجودی یک توکن خاص را از کیف پول شما برداشت کند) دارد، این یک زنگ خطر جدی است.
- تغییر آدرس گیرندهی قرارداد: پیش از تایید نهایی در کیف پول خود، به ویژه در کیف پولهای سختافزاری، آدرس قرارداد هوشمند را به دقت بررسی کنید. اگر رابط کاربری سایت دستکاری شده باشد، آدرس مقصدی که در کیف پول به شما نمایش داده میشود با آدرس همیشگی و معتبر پلتفرم متفاوت خواهد بود.
- پیامهای تایید بدون درخواست شما: اگر وارد سایتی شدید و بدون اینکه روی دکمهی خرید یا انتقالی کلیک کرده باشید، کیف پول شما به صورت خودکار پیامی برای تایید یک تراکنش نمایش داد، احتمالا کدهای سایت توسط یک واسطهی مخرب آلوده شدهاند.

اهمیت رصد اطلاعیههای امنیتی تیم توسعه و کامیونیتی
در فضای شفاف بلاکچین، نقصهای امنیتی و رفتارهای غیرعادی شبکهها معمولا خیلی زود توسط محققان و کاربران هوشیار کشف میشوند. در این شرایط، کامیونیتی (Community: جامعهی کاربری متشکل از توسعهدهندگان، سرمایهگذاران و فعالانی که اخبار و اطلاعات یک پروژه را دنبال میکنند) همیشه اولین و سریعترین خط دفاعی در برابر تهدیدات است.
وقتی یک حملهی غیرمستقیم و زنجیرهای در حال رخ دادن است، مدتها قبل از اینکه رسانههای خبری گزارش آن را منتشر کنند، نشانههای اولیهی آن در شبکههای اجتماعی دیده میشود. برای حفظ امنیت داراییهای خود، این عادتهای تحلیلی را در روتین سرمایهگذاری خود قرار دهید:
- رصد پیش از تراکنش: پیش از انجام انتقالات بزرگ مالی، به شبکههای اجتماعی پروژه در پلتفرمهایی مانند توییتر یا دیسکورد سر بزنید. اگر کاربران در حال گزارش خطاهای عجیب یا ناپدید شدن داراییهای خود هستند، فورا دست نگه دارید.
- توجه به هشدارهای رسمی: اطلاعیههای تیم توسعه را با دقت پیگیری کنید. گاهی تیمها خیلی سریع متوجه یک آسیبپذیری در یکی از افزونهها یا سرویسهای شخص ثالث خود میشوند و از کاربران میخواهند تا زمان رفع مشکل، از سایت یا برنامهی آنها استفاده نکنند.
- استفاده از کانالهای هشداردهنده: عضویت در گروهها و کانالهای امنیتی که حملات و رخنههای شبکهای را رصد میکنند، به شما کمک میکند تا در سریعترین زمان ممکن از هک شدن ارائهدهندگان خدمات مطلع شوید و از داراییهای خود محافظت کنید.
راهکارهای عملی برای محافظت از داراییها در برابر حملات واسطهای
با خواندن بخشهای قبل، شاید تصور کنید که در برابر نفوذهای خاموش و غیرمستقیم کاملا بیدفاع هستید؛ اما خوشبختانه اینطور نیست. درست است که ما کنترلی روی کدهای شخص ثالث و شرکتهای تامینکننده نداریم، اما با رعایت یک سری اصول ساده میتوانیم خطر از دست رفتن سرمایهی خود را به حداقل برسانیم. در این بخش، راهکارهایی را هم برای کاربران عادی و هم برای تیمهای سازنده بررسی میکنیم.
استراتژیهای امنیتی ضروری برای کاربران و سرمایهگذاران خرد
به عنوان یک کاربر در دنیای رمزارزها، شما مدیر مالی خودتان هستید. بنابراین، امنیت داراییهای شما رابطهی مستقیمی با عادتهای دیجیتال و دقت شما دارد. با پیادهسازی دو استراتژی زیر، میتوانید سد دفاعی محکمی در برابر آسیبپذیری برنامههای واسطه بسازید.
استفادهی هوشمندانه از کیف پول سختافزاری و مدیریت دسترسیها (Revoke Approvals)
احتمالا میدانید که کیف پول سختافزاری (دستگاههای فیزیکی کوچکی که کلیدهای خصوصی شما را به صورت آفلاین و دور از اتصال اینترنت نگه میدارند) یکی از امنترین روشهای نگهداری ارز دیجیتال است. اما داشتن این دستگاه به تنهایی کافی نیست؛ نحوهی استفادهی شما از آن اهمیت بیشتری دارد. اگر کیف پول خود را به یک سایت آلوده متصل کنید و به آن مجوز نامحدود بدهید، هکرها باز هم میتوانند موجودی شما را خالی کنند.
راهحل کلیدی در اینجا، مدیریت مداوم دسترسیها است. در فضای بلاکچین، قابلیتی به نام لغو دسترسی (Revoke Approvals: باطل کردن مجوزهایی که قبلا به یک قرارداد هوشمند دادهاید تا دیگر نتواند به موجودی شما دسترسی داشته باشد) وجود دارد. این کار دقیقا شبیه پس گرفتن کلید خانهی خود از کارگرانی است که کار تعمیراتشان تمام شده است. برای مدیریت بهتر این بخش، به این نکات توجه کنید:
- پس از پایان هر معامله در برنامههای غیرمتمرکز، بلافاصله مجوز دسترسی آن برنامه را لغو کنید.
- برای این کار میتوانید از ابزارهای معتبری که مخصوص مدیریت دسترسیها و بررسی مجوزهای فعال کیف پول ساخته شدهاند، استفاده کنید.
- هنگام تایید هر تراکنش روی صفحهی فیزیکی کیف پول سختافزاری، همیشه با دقت چک کنید که چه مقدار مجوز و به چه آدرسی در حال صادر شدن است.
تقسیم منطقی سرمایه و پرهیز از نگهداری تمام دارایی در یک پلتفرم
یکی از قدیمیترین و عاقلانهترین توصیههای مالی این است که تمام تخممرغهای خود را در یک سبد نگذارید. در دنیای رمزارزها، این اصل اهمیت حیاتی دارد. اگر تمام سرمایهی دیجیتال خود را تنها در یک صرافی یا یک برنامهی خاص نگه دارید، با هک شدن نرمافزار آن شرکت (حتی از طریق یک بهروزرسانی آلوده واسطهای)، کل دارایی شما یکشبه در معرض خطر قرار میگیرد.
برای جلوگیری از این فاجعه، سرمایهی خود را بر اساس میزان نیازتان تقسیم کنید. به عنوان مثال:
- بخش بزرگی از سرمایهی بلندمدت خود را در یک کیف پول سختافزاری که به هیچ برنامهی جانبی متصل نیست، ذخیره کنید (به این کار ذخیرهسازی سرد میگویند).
- مبلغی که برای معاملات روزانه نیاز دارید را در صرافیهای معتبر قرار دهید.
- برای اتصال به برنامههای مالی جدید و کاوش در دنیای دیفای، از یک کیف پول نرمافزاری مجزا با موجودی کم استفاده کنید تا در صورت آلوده بودن کدهای یک پلتفرم، ریسک از دست رفتن سرمایهی شما بسیار محدود باشد.
چکلیست امنیتی پروژهها: نقش ممیزی قرارداد هوشمند (Smart Contract Audit) و کنترل وابستگیها
امنیت شبکهی بلاکچین یک جادهی دوطرفه است. همانقدر که کاربران باید مراقب باشند، تیمهای توسعهدهنده نیز وظیفه دارند زیرساختهای خود را در برابر حملات زنجیرهای ایمن کنند. پروژههای معتبر و قابل اعتماد معمولا چکلیستهای امنیتی سختگیرانهای دارند که پیش از انتشار هر برنامهای آن را رعایت میکنند.
یکی از مهمترین بخشهای این چکلیست، انجام ممیزی قرارداد هوشمند (Smart Contract Audit: بررسی دقیق و خط به خط کدهای یک پروژه توسط متخصصان امنیتی مستقل برای پیدا کردن باگها و راههای نفوذ پنهان) است. وقتی یک تیم امنیتی خارجی، کدهای پروژه را زیر ذرهبین میبرد، احتمال وجود آسیبپذیری در کدهای اصلی به شدت کاهش مییابد.
علاوه بر بررسی کدهای اختصاصی، مدیریت و کنترل وابستگیها به سرویسهای خارجی نیز بسیار مهم است. تیمهای برنامهنویسی حرفهای به جای اعتماد چشمبسته به کدهای شخص ثالث، اقدامات زیر را انجام میدهند:
- ثابت نگه داشتن نسخهها: به جای اینکه برنامهی خود را طوری تنظیم کنند که همیشه جدیدترین فایلهای کتابخانههای خارجی را به صورت خودکار دانلود کند، از نسخههای امن و تست شده استفاده کرده و آنها را قفل میکنند.
- بررسی مداوم ارائهدهندگان خدمات: حتی معروفترین اوراکلها یا افزونهها باید به صورت دورهای توسط تیم امنیتی پروژهی اصلی ارزیابی شوند تا از سلامت انتقال دادهها اطمینان حاصل شود.
- طراحی سیستمهای توقف اضطراری: ایجاد مکانیزمهایی که در صورت تشخیص رفتارهای غیرعادی در یک سرویس خارجی (مانند ارسال قیمتهای به شدت غیرمنطقی)، سیستم را به صورت خودکار متوقف کنند تا از خروج سرمایهی کاربران جلوگیری شود.
منابع:
Oligo Security
Crowd Strike
Cloudflare