ورود / ثبت نام

محافظت از NFT در برابر سرقت و حمله

1405/1/31
محافظت از NFT در برابر سرقت و حمله

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

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

آیا امکان دارد که NFTها دزدیده شوند

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

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

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

محافظت در برابر ویروس‌ها و وبگاه‌های غیرقانونی

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

ابزارهای دفاعی جدید برای امنیت شما

برای اینکه در برابر این ویروس‌ها و وبگاه‌ها بیمه شوید، استفاده از این ابزارها پیشنهاد می‌شود:

  • Kerberus: یک افزونه مرورگر است که وبگاه‌های مخرب را بادقت بسیار بالایی شناسایی می‌کند و قبل از اینکه شما تراکنشی را امضا کنید، اگر خطرناک باشد جلوی آن را می‌گیرد. این ابزار حتی اکانت‌های جعلی در شبکه‌های اجتماعی را هم شناسایی می‌کند.
  • Pocket Universe: این ابزار قبل از اینکه تراکنش نهایی شود، آن را شبیه‌سازی می‌کند. یعنی به شما نشان می‌دهد که "اگر این دکمه را بزنی، این NFTها از کیف پولت خارج می‌شوند". این کار باعث می‌شود ناخواسته اجازه تخلیه کیف پولتان را ندهید.
  • Harpie: مانند یک دیوار آتش (Firewall) برای تراکنش‌های شما عمل می‌کند. اگر سیستم تشخیص دهد که دارایی شما در حال انتقال به نشانی یک سارق شناخته‌شده است، بلافاصله آن را مسدود می‌کند.

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

استفاده از کیف پول سخت‌افزاری به‌جای نرم‌افزاری

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

چرا باید کیف پول سخت‌افزاری بخریم؟

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

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

ذخیره‌نکردن همه NFTها در یک کیف پول

یکی از بزرگ‌ترین اشتباهات این است که تمام دارایی‌هایتان را در یک سبد (یک نشانی کیف پول) بگذارید. در دنیای بلاک‌چین، اگر یک‌بار اشتباه کنید و به یک وبگاه مخرب اجازه دسترسی بدهید، او می‌تواند در چند ثانیه تمام موجودی آن کیف پول را خالی کند.

راهبُرد کیف پول‌های سه‌گانه

بهترین روش این است که دارایی‌هایتان را این‌طور تقسیم کنید:

۱. کیف پول موقت (Burner): این کیف پول فقط برای کارهای ریسکی مثل "مینت" کردن NFTهای جدید یا شرکت در ایردراپ‌هاست. در این کیف پول فقط مقدار کمی پول برای هزینه تراکنش نگه دارید.

۲. کیف پول معاملاتی: برای خریدوفروش در وبگاه‌های معتبری مثل OpenSea استفاده می‌شود و فقط دارایی‌هایی که قصد فروششان را دارید در آن بگذارید.

۳. کیف پول گاوصندوق (Vault): این یک کیف پول سخت‌افزاری است که نباید به هیچ وبگاهی وصل شود. تمام NFTهای گران‌قیمت خود را به اینجا بفرستید و بگذارید بمانند. این کیف پول فقط "دریافت‌کننده" است و هیچ مجوزی به هیچ وبگاهی نمی‌دهد.

ذخیره‌کردن عبارت Seed در زمان بازیابی کیف پول ارز دیجیتال

عبارت بازیابی (Seed Phrase) همان ۱۲ یا ۲۴ کلمه‌ای است که هنگام ساخت کیف پول ارز دیجیتال به شما داده می‌شود. این کلمات در واقع کلیدِ مادر تمام دارایی شماست. اگر این کلمات را گم کنید، هیچ راهی (تکرار می‌کنم، هیچ راهی) برای بازیابی سرمایه‌تان وجود ندارد.

چطور از این کلمات محافظت کنیم؟

  • هرگز عکس نگیرید: هکرها با ربات‌هایشان مدام گالری عکس‌های گوشی شما یا فضاهای ابری مثل گوگل درایو را اسکن می‌کنند تا این کلمات را پیدا کنند.
  • آفلاین بمانید: کلمات را روی کاغذ بنویسید یا بهتر از آن، روی صفحات فلزی حک کنید که در برابر آتش‌وآب مقاوم باشند.
  • کلمه ۲۵اُم (Passphrase): در کیف پول‌های حرفه‌ای می‌توانید یک کلمه دلخواه خودتان را هم به این مجموعه اضافه کنید. این کار باعث می‌شود حتی اگر کسی آن ۲۴ کلمه را هم پیدا کند، باز هم نتواند بدون کلمه مخفی شما به دارایی‌ها دسترسی پیدا کند.
  • امتحان کنید: قبل از اینکه پول زیادی به کیف پول بریزید، یک‌بار آن را پاک‌کرده و با کلماتی که نوشته‌اید بازیابی کنید تا مطمئن شوید همه چیز درست است.

تعامل NFT از پلتفرم‌ها و بازار‌های معتبر

بازارهای NFT مثل OpenSea یا Rarible تلاش می‌کنند امنیت را برقرار کنند، اما کلاهبرداران همیشه راهی پیدا می‌کنند. آن‌ها ممکن است مجموعه‌های جعلی بسازند که دقیقاً شبیه پروژه‌های اصلی باشد.

چطور از اصل بودن NFT مطمئن شویم؟

  • تیک آبی: همیشه به دنبال تیک تأیید پلتفرم باشید، هرچند که نباید فقط به آن اعتماد کرد.
  • چک‌کردن نشانی قرارداد: هر مجموعه NFT یک "نشانی قرارداد" منحصر‌به‌فرد دارد. این نشانی را از وبگاه رسمی پروژه بردارید و با نشانی‌ای که در صفحه خرید می‌بینید مقایسه کنید. اگر یکی نبود، یعنی آن NFT جعلی است.
  • معاملات صوری (Wash Trading): گاهی سارقان خودشان NFT را بین کیف پول‌های خودشان خریدوفروش می‌کنند تا قیمت را الکی بالا ببرند. با بررسی تاریخچه تراکنش‌ها در وبگاه‌هایی مثل Etherscan، اگر دیدید یک NFT مدام بین دو نفر جابه‌جا شده، شک کنید.

کلیک‌نکردن روی URLها و لینک‌ها در گوگل!

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

کلاهبرداری از طریق تبلیغات گوگل

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

  • نکته طلایی: هرگز روی لینک‌هایی که کنارشان کلمه "Ad" یا "Sponsored" نوشته شده کلیک نکنید. همیشه نشانی وبگاه را خودتان تایپ کنید یا از قبل آن را بوک‌مارک کنید.

در ایمیل‌ها لینک‌های غیرقانونی را بشناسید

فیشینگ ایمیلی هنوز هم یکی از پرکاربردترین روش‌های سرقت است. سارق ایمیلی می‌فرستد که دقیقاً شبیه ایمیل‌های OpenSea است و می‌گوید: "یک پیشنهاد عالی برای خرید NFT شما ثبت شده، همین حالا کلیک کنید تا تأیید شود".

چطور ایمیل جعلی را بشناسیم؟

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

خواندن تمامی مفاد و بندهای قرارداد هوشمند

در دنیای بلاک‌چین، شما با امضای هر تراکنش در واقع دارید یک "قرارداد" را امضا می‌کنید. اکثر مردم بدون اینکه بدانند چه مجوزی می‌دهند، فقط روی دکمه Confirm کلیک می‌کنند.

توابع خطرناکی که باید به آن‌ها دقت کنید:

  • setApprovalForAll: این خطرناک‌ترین دستوری است که ممکن است با آن مواجه شوید. این یعنی: "اجازه می‌دهم این وبگاه به تمام NFTهای من دسترسی داشته باشد". فقط وقتی این را امضا کنید که در یک بازار معتبر (مثل OpenSea) در حال فهرست‌کردن NFT برای فروش هستید. اگر یک وبگاه "مینت رایگان" این اجازه را از شما خواست، بدانید که می‌خواهد کیف پولتان را خالی کند.
  • سقف مصرف (Spending Cap): در کیف پول‌هایی مثل متامسک، می‌توانید مشخص کنید که یک وبگاه تا چه حد اجازه دارد از دارایی شما استفاده کند. هیچ‌وقت اجازه "نامحدود" ندهید.
  • SafeTransferFrom: این تابع یعنی انتقال مستقیم NFT. موقع خرید یا مینت کردن، نباید این دستور را ببینید؛ چون شما قرار است NFT بگیرید، نه اینکه چیزی بفرستید.

جمع‌بندی نهایی برای محافظت از دارایی شما

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

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

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

اخبار مرتبط