Web3 Security Distilled 2.0 – امنیت Web3

Web3 Security Distilled

با توجه به حجم بالای نفوذها و رخدادهای امنیتی در فضای Web3 ، مسئله امنیت Web3 اخیراً بسیار ضروری شده است.

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

بنابراین، شانس بهبود تکنیک های فعلی از لحاظ امنیتِ بیشتر چقدر است و امنیت پروتکل شکل گرفته از رسیدگی و منطق چقدر دقیق است؟

بازرسی های امنیت Web3، باگ بانتی ها، CTFها: مقدمه

تکنولوژی بلاکچین به علت قابلیت آن در فراهم کردن شفافیت، امنیت و تغییرناپذیری داده، توجه قابل توجهی در صنایع مختلف به دست آورده است. با استفاده از این تکنولوژی، مشکلات امنیتی موجود در web3 جدیدتر و متمایزتر از مشکلات امنیتی موجود در Web2 هستند. با این حساب، امروزه مشکلات اصلی مربوط به بازرسی های Web3 چه چیزهایی هستند؟

در ابتدا می خواهم از تامین کنندگان امنیت Web3، کامیونیتی، شکارچیان آسیب پذیری، هر کسی که از این تکنولوژی پشتیبانی کرده و همچنین نویسندگان منابع آن صمیمانه تشکر کنم!

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

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

لایه های خاصی از پشتۀ امنیتی web3 کمتر استفاده شده باقی می مانند، که البته به احتمال زیاد این مسئله با بلوغ صنعت تغییر خواهد کرد. به خصوص پروژه های DeFi ممکن است محدودۀ دامنۀ فعالیت های امنیتی را گسترش دهند تا نظارت و پاسخ پیشگیرانه تهدید و همچنین مدیریت ریسک خودکار (به جای تمرکز صرف بر روی ارزیابی آسیب پذیری) را نیز در بر گیرد.

همه این موارد ما را به سمت این ایده هدایت می کند که در نهایت برای یک پروژه، داشتن سطوح حفاظتی چندگانه مهم خواهد بود – یعنی چندین بازرسی و ممیزی از شرکت های مختلف و چندین برنامۀ باگ بانتی بر روی پلتفرم هایی با ویژگی های مختلف:

Web3 Security Distilled

بررسی امنیت Web3: نعمت یا بلا؟

همانطور که قبلاً نیز اشاره کردم، تعداد بالای نفوذها و رخدادهای امنیتی در حوزۀ Web3، مسئلۀ امنیت را در این حوزۀ بسیار ضروری کرده اند.

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

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

هر دوی این رویکردها، مشکلاتی اساسی دارند. CT

وابستگی های متعددی نظیر oracles، شبکه های بلاکچین، خدمات میزبانی و همچنین فقدان حاکمیت متمرکز، منشا اصلی پیچیدگی ها و آسیب پذیری ها محسوب می شود. شناسایی و رفع این تهدیدات امنیتی ویژه، بدون یک فریم ورک امنیتی استاندارد شده دشوارتر است.

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

از نظر من، امروزه به طور جدی در موسسات بازرسی سنتی، امکان اطلاع رسانی موثر به مشتریان دربارۀ ویژگی ها و وضعیت یک بازرسی وجود ندارد. به علت همین عدم شفافیت، مشتریان اغلب از اقدامات دقیقی که در طی یک بازرسی انجام می گیرد یا وضعیت فعلی روند مربوطه، بی خبر هستند. در نتیجه، همین فقدان وضوح و شفافیت به مشکلات متعددی منجر می گردد.

اذیت می شوم وقتی می بینم برخی پروتکل ها صرفاً با اهداف بازاریابی به بازرسی ها پول می دهند نه اهداف امنیتی هفدهم مِی 2023، gogo (@gogotheauditor)

 

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

مطالعه مقاله زیر را به شدت توصیه می‌کنم، چرا که به نظر من آشکارترین جنبه‌های تغییرات این حوزه در سال‌های 2022-2023 دراین مقاله بیان شده است:

ممکن است یک نفر بگوید راهکارهای موجود نظیر بازرسی های دستی، تجزیه و تحلیل استاتیک و تست فازی فاقد مقیاس پذیری و درستی ریاضی است…

همانطور که می دانید، تنها یک دکمه یا سرویس وجود ندارد که قادر به حل تمامی مشکلات امنیتی باشد، اما کارهایی هستند که با انجام آن ها می توانیم گامی به سوی این هدف برداریم. به طور همزمان، همواره ده ها آسیب پذیری با استفاده از برنامه های باگ بانتی Web3 کشف شده اند! این مسئله به این معنی است که برنامه های باگ بانتی نیز می توانند (و در واقع هستند) روش موثری برای ایجاد انگیزه برای شناسایی و گزارش آسیب پذیری ها در پروتکل های بلاکچین و اپلیکیشن های غیرمتمرکز محسوب گردند.

امروز ما بحث خود را در رابطه با مشکلات مربوط به وضعیت فعلی بازرسی ها، با پاسخ به این سوال ادامه می دهیم که چرا پرسش و پاسخ در Web3 کاملاً غیرممکن است و چگونه می توانیم ضمن حفظ تعادل بین سرویس گیرنده، مشتری و پلتفرم باگ بانتی، راهکارهای فعلی را بهبود بخشیم.

امیدوارم از بحث های استوکیومتری بالای امروز ما لذت ببرید، چرا که در انتها قرار است برایتان دربارۀ یک پروژۀ امیدوارکننده تحت عنوان Remedy بگویم!

لایۀ حفاظتی اضافی برنامه های باگ بانتی

همانطور که پیش از این نیز با تاکید پروژه ها بر بازرسی های پیش از راه اندازی و سازگاری پایین با بهترین روش های DevOps نشان داده شده است، امنیت Web3 هنوز در حال توسعه است. هر چند که من معتقدم سازگاری ابزار مورد بحث در این مقاله افزایش خواهد یافت، چرا که تیم های تولید در Web3 یک نقشۀ ذهنی برای خود ایجاد خواهند کرد که در آن، مسئلۀ امنیت اولویت اول را خواهد داشت.

همانطور که Mudit Gupta در گفتگوی EthCC اخیر خود به درستی به آن اشاره کرد، هیچ چیز واقعا امن نیست. منطقی است که بخواهید یک برنامۀ باگ بانتی را به عنوان یک اقدام امنیتی اضافی به پروژه خود اضافه کنید، چرا که لازم است تا حد ممکن کد خود را در معرض توجه و چشمانی قرار دهید که قادر به پیدا کردن مشکلات و ایرادات آن باشند. با انجام این کار، شما محققان متعددی را تشویق می کنید تا با محدودۀ وسیع مهارت های خود، پروژۀ شما را اشکال زدایی نمایند.

به بحث خودمان برگردیم؛ بسته به پروژه یا پلتفرمی که پاداش مربوطه را ارائه می دهد، ویژگی های برنامه های باگ بانتی web3 نیز متغیر است. پاداش های Web3 با اعطای دسترسی مشارکت کنندگان به پروژه های web3 که به تخصص آن ها احتیاج دارند، انجام می گیرد. مشارکت کنندگان می توانند از این دسترسی برای یافتن ایرادات پروژۀ web3، برطرف کردن آن ها و یا اضافه کردن ویژگی های جدید به پروژه استفاده نمایند. به محض این که مشارکت آن ها مورد تایید و پذیرش تیم مدیریتی پروژه قرار گیرد، به آن ها پاداش تعلق می گیرد.

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

طبق گفتۀ سایت Readme Security، پاداش های باگ بانتی در حوزۀ Web3 به رقم های بسیار بالایی رسیده است. در صورت استفادۀ صحیح، باگ بانتی این انگیزه را در اعضای کامیونیتی محققان امنیتی ایجاد می نماید که داخل کد شما دنبال نقص های اساسی و مهم بگردند. یک استراتژی کاربردی این است که پرداخت های یک برنامۀ باگ بانتی متناسب با مقدار سرمایۀ در معرض خطر (در اثر یک آسیب پذیری) تنظیم گردد.

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

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

شش مرحلۀ افزایش امنیت قرارداد هوشمندتان طبق گفتۀ Orb:

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

بادرنظر گرفتن مراحل مختلف ذکر شده، این اجاره را به شما می دهد تا به شکلی موثر به سمت امنیت قراردادهای هوشمند خود حرکت نمایید، در عین حال که بر روی دیگر بخش های روند ساخت نیز تمرکز کرده اید. من از دیدگاه خودم، مرحلۀ زیر را نیز اضافه می کنم:

  • یک باگ بانتی صحیح و کاملاً خودکار: این بخش کار زیادی را در پایگاه کد، مستندسازی و گسترش کامیونیتی می طلبد.

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

Remedy: اکوسیستم نهایی امنیت Web3

نسل بعدی پلتفرم های امنیتی Web3 از راهکارهای محدود فعلی فراتر رفته، ابزار و تکنولوژی های پیشرفته ای را اعمال کرده و امکان استفادۀ برتری را برای بازیکنان صنعت فراهم می آورد.

دوستان خوب من در شرف راه اندازی یک پروژۀ امنیت سایبری امیدوار کنندۀ Web3 هستند که به نظر من تغییردهندۀ نهایی بازی برای کل صنعت خواهد بود. هدف آن ها این است که تغییراتی اساسی در چرخۀ حیات امنیت سایبری پروژه ایجاد کرده و به یک نقطۀ همه منظوره برای دارایی ها و حفاظت از داده تبدیل شوند.

این تیم با یکپارچه سازی بیش از 13 سال تخصص web2 و web3، قرار است به شکلی استراتژیک به موارد امنیتی غیرمتمرکز رسیدگی نماید. آن ها به دنبال این هستند که نوآوری را افزایش داده و با استفاده از ابزار و آموزش پیشرفته، روش های امنیتی را محکم تر نمایند. این گروه همچنین با افزایش شفافیت، بالا بردن استانداردها و ارائه مشاوره، مسائل اساسی که صنعت را تضعیف می نمایند را نیز مورد هدف قرار می دهد.

اگر چه جزئیات این پروژه هنوز به طور عمومی افشا نشده است، با توجه به دیدی که تا کنون به اشتراک گذاشته شده، چشم انداز آن برای من بسیار تاثیرگذار به نظر می رسد. این تیم درک عمیقی از مبرم ترین نقاط دردناک امنیتی که امروزه توسعه دهندگان و کاربران با آن مواجه هستند را از خود نشان می دهد. راه حل های این تیم می تواند تسکین خوبی را برای این افراد فراهم نماید. – officercia.eth

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

از این رو، مایلم شما را دعوت کنم تا برای دریافت آپدیت های در حین توسعۀ پروژه، به Twitter، Telegram و Discord  آن ها بپیوندید.

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

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