مجله بیت کوین
موضوع اصلی: نود شما در برابر بیابان دیجیتال
بیش از 50 سال پس از اولین پیام بین شبکهای، شبکههای همتا به همتا همچنان موجودات نادری در جنگل اینترنت باقی ماندهاند. توانایی ارز دیجیتال بیت کوین برای ارائه یک سیستم پولی باز به معماری همتا به همتای آن بستگی دارد و در سطح حمله آن، لایه شبکه - نحوه کشف و اتصال همتاها به یکدیگر - آسیبپذیرترین است. دو مکان اصلی وجود دارد که مشکلات میتوانند رخ دهند: پروتکل همتایابی خود ارز دیجیتال بیت کوین و پروتکلهای اینترنتی که پروتکل ارز دیجیتال بیت کوین به آنها وابسته است. در این چشمانداز، Core دارای یک مأموریت دوگانه است تا از بردارهای انکار سرویس (DOS) که میتوانند بین نودها مورد سوءاستفاده قرار گیرند جلوگیری کند و نودها را قادر سازد تا در محیط دشمنانه وسیعتری که اینترنت است به طور ایمن ارتباط برقرار کنند.
"دولتها در قطع کردن سر شبکههای کنترل شده متمرکز مانند Napster خوب هستند، اما شبکههای P2P خالص مانند Gnutella و Tor به نظر میرسد که موقعیت خود را حفظ میکنند."
– ساتوشی، 1387/08/17 [1]
پروتکل P2P شامل نحوه تبادل پیامهای نودها درباره تراکنشها، بلوکها و سایر همتاها است. این تبادل اطلاعات قبل از هرگونه تراکنش یا اعتبارسنجی اجماع مورد نیاز است و بنابراین یک نگرانی اصلی است.
در طول سالها چندین باگ در این زمینه وجود داشته است. به عنوان مثال، در سال 2017، یک آسیبپذیری سرور SOCKS مخرب وصله و افشا شد [2]. این آسیبپذیری "سرریز بافر" به طور نظری میتواند منجر به حملات مختلفی شود: خرابی نود، تزریق محمولههای مخرب، یا اصلاح دادهها در نود. در سال 2020، یک آسیبپذیری با شدت بالا گزارش و وصله شد که در آن یک همتای راه دور میتوانست آدرسها را ممنوع کند، لیست ممنوعیت را به صورت چهارضلعی رشد دهد و بنابراین یک DOS بر روی نود است [3]. این آسیبپذیری تا سال 2024 افشا نشد. این باگ به درستی به عنوان "شدت بالا" علامتگذاری شده است زیرا حمله اجرای آن آسان است، تأثیر آن منجر به از دست رفتن عملکرد نود میشود و پیششرطهای کمی برای کارکرد آن لازم است. اینها نوع باگهایی هستند که توسعهدهندگان Core را در شب بیدار نگه میدارند و به همین دلیل به شدت توصیه میشود نود خود را به نسخهای که هنوز نگهداری میشود بهروزرسانی کنید (نسخههای قدیمیتر Core به طور فعال نگهداری/بهروزرسانی نمیشوند).
این شبکه توزیعشده که ما آن را ارز دیجیتال بیت کوین مینامیم نسبتاً کوچک باقی مانده است: تعداد نودهای clearnet حدود 20 هزار نود است و حتی با فرض 100 هزار نود TOR سخاوتمندانه، ما هنوز یک شبکه کوچک و به راحتی قابل نظارت داریم. اخیراً، Daniela Brozzoni و naiyoma نشان دادند [4] که اگر یک نود با clearnet و Tor اجرا شود، نگاشت آدرسهای IPv4 و Tor یک نود بسیار ساده است. بسیار محتمل است که این کار در حال حاضر توسط آژانسهای اطلاعاتی و شرکتهای تجزیه و تحلیل زنجیرهای انجام میشود. سپس توجه به این که کدام نودها کدام تراکنشها را ابتدا منتشر میکنند، استنتاج IP اصلی تراکنش و در نتیجه موقعیت آن آسان میشود. در حالی که این به خودی خود یک باگ نیست، زیرا نود خراب نمیشود یا رفتار نادرستی ندارد، اما میتواند یک آسیبپذیری در نظر گرفته شود، زیرا روشی برای پیوند دادن یک آدرس IP مشخص به یک تراکنش ارائه میدهد.
چگونگی جلوگیری مؤثر از این در حال حاضر یک سؤال باز است.
"ما کامپیوترهای خود را مانند شهرهای خود میسازیم. با گذشت زمان، بدون برنامه، در بالای ویرانهها." – Ellen Ullman [5]
ارز دیجیتال بیت کوین بر روی اینترنت اجرا میشود و توانایی آن برای باقی ماندن یک سیستم توزیعشده و غیرمتمرکز به ویژگیهای خود اینترنت بستگی دارد. متأسفانه، معماری اینترنت همانطور که امروز میشناسیم به طرز اسفباری ناامن باقی مانده است، با حملات شناختهشدهای که به طور معمول به کار گرفته میشوند. بیشتر این حملات تا زمانی که آسیب وارد شود بدون شناسایی انجام میشوند و این بدون ذکر رژیمهای نظارتی است که امروزه اینترنت را فرا گرفتهاند.
شناختهشدهترین و عملیترین بردار حمله که باید نگران آن بود، حمله eclipse نامیده میشود، جایی که همتاهای یک نود قربانی همگی مخرب هستند و نمای خاصی از زنجیره یا شبکه را به نود قربانی ارائه میدهند. این کلاس حمله در سیستمهای توزیعشده اساسی است، اگر همتاهای یک نود را کنترل کنید، آگاهی آن از شبکه را کنترل میکنید. Ethan Heilman و همکاران یکی از اولین حملات عملی eclipse بر ارز دیجیتال بیت کوین را در USENIX 2015 ارائه دادند [6] و در سال 2018، مقاله حمله Erebus یک حمله eclipse "مخفیانه" از طریق یک سیستم خودمختار مخرب (AS) را توصیف کرد [7].
این حملات عمدتاً از ضعفهای روشی که شبکههای اینترنت در میان خود ارتباط برقرار میکنند، مانند توپولوژی مسیریابی AS یا از طریق پروتکلی به نام پروتکل دروازه مرزی (BGP) بهره میبرند. در حالی که ابتکارات در حال انجام برای ایمنسازی پروتکل BGP وجود دارد - BGPsec، RPKI - هر دوی آنها محدودیتهایی دارند که به خوبی شناخته شدهاند و سرپرستان اینترنت را برای راهحلهای قویتر مشتاق میگذارند. تا آن زمان، اینترنت غرب وحشی باقی خواهد ماند.
یک تجزیه و تحلیل اخیر توسط cedarctic در Chaincode Labs دریافت که نودهای ارز دیجیتال بیت کوین تنها در 4551 AS قرار دارند، که بخش نسبتاً کوچکی از شبکههای تشکیلدهنده اینترنت است. آنها مجموعهای از حملات را توصیف میکنند که میتواند به حملات eclipse منجر شود با به خطر انداختن AS بالادستی که نودها در آن عمل میکنند [8]. توزیع کوچک نودها در میان AS ها و روابط خاص در میان این AS ها یک بردار حمله منحصر به فرد ایجاد میکند. در حالی که اقدامات جبرانی وجود دارد، مشخص نیست که آیا این بردار حمله از قبل توسط بیت کوینرها یا دشمنان آنها به خوبی درک شده بود یا خیر.
هر حملهای که به به خطر انداختن یک یا چند AS متکی است، منابع، هماهنگی و مهارتهایی برای دستیابی نیاز دارد. اگرچه هیچ حمله موفقی از این نوع بر روی یک نود ارز دیجیتال بیت کوین گزارش نشده است، چنین حملاتی با موفقیت علیه ماینرها [9]، کیف پولها [10]، پلتفرمهای سواپ [11] و پلها [12] انجام شده است. در حالی که ما قصد نداریم اینترنت را اصلاح کنیم، میتوانیم نودها را با ابزارهایی برای عملکرد در این محیط دشمنانه مسلح کنیم.
در زیر برخی از ویژگیها و عملکردهایی که Bitcoin Core برای مسلح کردن کاربران در برابر حملات سطح شبکه توسعه داده یا پشتیبانی یکپارچه کرده است، آمده است:
TOR (مسیریاب پیاز) قدیمیترین شبکه روکش متمرکز بر حریم خصوصی است که در Bitcoin Core گنجانده شده است. این جهشهایی را بین یک شبکه تصادفی از همتاها ایجاد میکند تا ترافیک را مبهم کند.
v2transport [13] اتصالات بین همتاها را رمزگذاری میکند و ترافیک را از جاسوسان و سانسورها پنهان میکند. هدف جلوگیری از ناظران شبکه منفعل از جاسوسی محتویات ارتباطات شما با سایر نودها است.
I2P (پروژه اینترنت نامرئی [14]) یک ویژگی اختیاری Core است که یک لایه اضافی، خصوصی و رمزگذاری شده را به اتصالات فرد فعال میکند. این یک شبکه ناشناس شبیه Tor است که برای مبهم کردن ترافیک بین مشتریان و سرورها به همتاها تکیه میکند.
ASmap [15] ویژگی اختیاری دیگری از Core است که کاهشی را برای حمله Erebus که نویسندگان قبلاً در مقاله مشخص کردهاند اجرا میکند و برای همه حملات مبتنی بر AS اعمال میشود. با آگاه کردن مکانیسم همتایابی ارز دیجیتال بیت کوین از AS که همتاها از آن میآیند تا تنوع را در میان همتاها تضمین کند، یک eclipse به طور تصاعدی دشوارتر میشود، زیرا یک مهاجم باید بسیاری از AS ها را به خطر بیندازد که بسیار بعید و تقریباً غیرممکن است بدون اینکه شناسایی شود. Bitcoin Core از Core 20.0 پشتیبانی از گرفتن نقشه شبکههای IP به AS آنها (AS-map) را دارد و پروژه Kartograf به هر کاربری امکان میدهد به راحتی چنین ASmap تولید کند.
با توجه به اینکه احتمالاً اینترنت همچنان در برابر بسیاری از حملات آسیبپذیر خواهد بود، یکی از کارهایی که میتوانیم انجام دهیم مشاهده رفتار همتاهای خود برای تلاش برای تشخیص رفتار مخرب است. این انگیزه پشت پروژه peer-observer توسط 0xb10c است [16]. این یک سیستم ثبت کامل مبتنی بر نقطه ردیابی eBPF (راهی برای مشاهده کوچکترین اقدامات در یک برنامه در حال اجرا در یک سیستم عامل) برای مشاهده فعالیت یک نود، از جمله رفتار همتا، ارائه میدهد. همچنین همه چیزهایی که برای ساخت سیستمهای ثبت خود نیاز دارید به شما میدهد.
ایمنسازی توانایی اتصال به همتاها و تبادل پیامها یک جزء سنگ بنای آنچه که ارز دیجیتال بیت کوین را به حرکت درمیآورد است.
ارز دیجیتال بیت کوین در یک محیط دشمنانه چند بعدی عمل میکند که در آن بسیاری از تهدیدها توسط محدودیتهای معماری خود اینترنت ایجاد میشوند. اگر ارز دیجیتال بیت کوین قرار است زنده بماند و رشد کند، توسعهدهندگان و کاربران آن باید یاد بگیرند که در این آبهای عجیب حرکت کنند.
قیمت شبکههای باز هوشیاری جاودانه است.
نسخه خود از موضوع اصلی را امروز دریافت کنید!
شانس خود را برای صاحب شدن موضوع اصلی — که شامل مقالاتی است که توسط بسیاری از توسعهدهندگان Core نوشته شده و پروژههایی را که خودشان روی آنها کار میکنند توضیح میدهند از دست ندهید!
این قطعه نامه از سردبیر است که در آخرین ویرایش چاپی مجله بیت کوین، موضوع اصلی، ارائه شده است. ما آن را در اینجا به عنوان نگاهی اولیه به ایدههای کاوش شده در کل شماره به اشتراک میگذاریم.
[0] https://web.mit.edu/gtmarx/www/connect.html
[1] https://satoshi.nakamotoinstitute.org/emails/cryptography/4/
[2] https://bitcoincore.org/en/2019/11/08/CVE-2017-18350/
[3] https://bitcoincore.org/en/2024/07/03/disclose-unbounded-banlist/
[4] https://delvingbitcoin.org/t/fingerprinting-nodes-via-addr-requests/1786/
[5] https://en.wikiquote.org/wiki/Ellen_Ullman
[6] https://www.usenix.org/system/files/conference/usenixsecurity15/sec15-paper-heilman.pdf
[7] https://ihchoi12.github.io/assets/tran2020stealthier.pdf
[8] https://delvingbitcoin.org/t/eclipsing-bitcoin-nodes-with-bgp-interception-attacks/1965
[9] https://www.theregister.com/2014/08/07/bgp_bitcoin_mining_heist/
[10] https://www.theverge.com/2018/4/24/17275982/myetherwallet-hack-bgp-dns-hijacking-stolen-ethereum
[11] https://medium.com/s2wblog/post-mortem-of-klayswap-incident-through-bgp-hijacking-en-3ed7e33de600
[12] www.coinbase.com/blog/celer-bridge-incident-analysis
[13] https://bitcoinops.org/en/topics/v2-p2p-transport/
[14] https://geti2p.net/en/
[15] https://asmap.org
[16] https://peer.observer
[13] https://github.com/asmap/kartograf
این پست موضوع اصلی: نود شما در برابر بیابان دیجیتال ابتدا در مجله بیت کوین ظاهر شد و توسط Julien Urraca, Fabian Jahr, 0xb10c و CedArctic نوشته شده است.


