Yandex RPKI را پیاده سازی می کند

سلام، نام من الکساندر عظیموف است. در Yandex، من سیستم های نظارتی مختلف و همچنین معماری شبکه حمل و نقل را توسعه می دهم. اما امروز در مورد پروتکل BGP صحبت خواهیم کرد.

Yandex RPKI را پیاده سازی می کند

یک هفته پیش، Yandex ROV (تأیید اعتبار مسیر) را در رابط با تمام شرکای همتا و همچنین نقاط تبادل ترافیک فعال کرد. در زیر بخوانید که چرا این کار انجام شد و چگونه بر تعامل با اپراتورهای مخابراتی تأثیر می گذارد.

BGP و چه اشکالی دارد

احتمالاً می دانید که BGP به عنوان یک پروتکل مسیریابی بین دامنه طراحی شده است. با این حال، در طول مسیر، تعداد موارد استفاده افزایش یافت: امروز، BGP، به لطف برنامه‌های افزودنی متعدد، به یک گذرگاه پیام تبدیل شده است که وظایفی از اپراتور VPN تا SD-WAN مد روز را پوشش می‌دهد و حتی کاربردهایی مانند انتقالی برای یک کنترلر شبیه SDN، که بردار فاصله BGP را به چیزی شبیه به پروتکل پیوندهای نشسته تبدیل می کند.

Yandex RPKI را پیاده سازی می کند

شکل 1. BGP SAFI

چرا BGP کاربردهای زیادی دریافت کرده (و همچنان دریافت می کند)؟ دو دلیل اصلی وجود دارد:

  • BGP تنها پروتکلی است که بین سیستم های مستقل (AS) کار می کند.
  • BGP از ویژگی ها در قالب TLV (نوع طول-مقدار) پشتیبانی می کند. بله، پروتکل در این مورد تنها نیست، اما از آنجایی که هیچ چیزی برای جایگزینی آن در اتصالات بین اپراتورهای مخابراتی وجود ندارد، پیوستن یک عنصر کاربردی دیگر به آن همیشه سودمندتر از پشتیبانی از یک پروتکل مسیریابی اضافی است.

چه بلایی سرش آمده؟ به طور خلاصه، پروتکل مکانیسم های داخلی برای بررسی صحت اطلاعات دریافتی ندارد. یعنی BGP یک پروتکل اعتماد پیشینی است: اگر می خواهید به دنیا بگویید که اکنون مالک شبکه Rostelecom، MTS یا Yandex هستید، لطفاً!

فیلتر مبتنی بر IRRDB - بهترین از بدترین ها

این سوال مطرح می شود: چرا اینترنت در چنین شرایطی هنوز کار می کند؟ بله، بیشتر اوقات کار می کند، اما در عین حال به طور دوره ای منفجر می شود و کل بخش های ملی را غیرقابل دسترس می کند. اگرچه فعالیت هکرها در BGP نیز در حال افزایش است، اما بیشتر ناهنجاری ها هنوز به دلیل باگ ها ایجاد می شوند. مثال امسال است خطای کوچک اپراتور در بلاروس که بخش قابل توجهی از اینترنت را به مدت نیم ساعت از دسترس کاربران مگافون خارج کرد. مثالی دیگر - بهینه ساز دیوانه BGP یکی از بزرگترین شبکه های CDN در جهان را شکست.

Yandex RPKI را پیاده سازی می کند

برنج. 2. رهگیری ترافیک Cloudflare

اما با این حال، چرا چنین ناهنجاری ها هر شش ماه یک بار رخ می دهد و نه هر روز؟ زیرا حامل ها از پایگاه داده های خارجی اطلاعات مسیریابی برای تأیید آنچه از همسایگان BGP دریافت می کنند استفاده می کنند. چنین پایگاه‌های اطلاعاتی زیادی وجود دارد، برخی از آنها توسط ثبت‌کنندگان مدیریت می‌شوند (RIPE، APNIC، ARIN، AFRINIC)، برخی بازیکنان مستقل هستند (معروف‌ترین آنها RADB است)، و همچنین مجموعه کاملی از ثبت‌کنندگان متعلق به شرکت‌های بزرگ وجود دارد (سطح 3) ، NTT و غیره). به لطف این پایگاه های داده است که مسیریابی بین دامنه ای پایداری نسبی عملکرد خود را حفظ می کند.

با این حال، تفاوت های ظریف وجود دارد. اطلاعات مسیریابی بر اساس اشیاء ROUTE-OBJECTS و AS-SET بررسی می شود. و اگر اولی حاکی از مجوز برای بخشی از IRRDB باشد، برای طبقه دوم هیچ مجوزی به عنوان یک کلاس وجود ندارد. یعنی هر کسی می تواند هر کسی را به مجموعه خود اضافه کند و از این طریق فیلترهای ارائه دهندگان بالادستی را دور بزند. علاوه بر این، منحصر به فرد بودن نامگذاری AS-SET بین پایه های مختلف IRR تضمین نشده است، که می تواند منجر به اثرات شگفت انگیز با از دست دادن ناگهانی اتصال برای اپراتور مخابراتی شود، که به نوبه خود چیزی را تغییر نداد.

یک چالش دیگر، الگوی استفاده از AS-SET است. در اینجا دو نکته وجود دارد:

  • هنگامی که یک اپراتور مشتری جدیدی دریافت می کند، آن را به AS-SET خود اضافه می کند، اما تقریباً هرگز آن را حذف نمی کند.
  • خود فیلترها فقط در رابط با کلاینت ها پیکربندی می شوند.

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

جایگزینی فیلترهای پیشوند بر اساس AS-SET چیست؟ جالب ترین چیز این است که در کوتاه مدت - هیچ چیز. اما مکانیسم های اضافی در حال ظهور هستند که کار فیلترهای مبتنی بر IRRDB را تکمیل می کنند و اول از همه، این البته RPKI است.

RPKI

به روشی ساده، معماری RPKI را می توان به عنوان یک پایگاه داده توزیع شده در نظر گرفت که سوابق آن می تواند به صورت رمزنگاری تأیید شود. در مورد ROA (Route Object Authorization)، امضاکننده مالک فضای آدرس است و رکورد خود سه گانه است (پیشوند، asn، max_length). اساساً، این مدخل موارد زیر را فرض می‌کند: مالک فضای آدرس پیشوند $، شماره AS $asn را برای تبلیغ پیشوندهایی با طول حداکثر از $max_length مجاز کرده است. و روترها با استفاده از کش RPKI می توانند جفت را از نظر انطباق بررسی کنند پیشوند - اولین سخنران در راه.

Yandex RPKI را پیاده سازی می کند

شکل 3. معماری RPKI

اشیاء ROA برای مدت طولانی استاندارد شده اند، اما تا همین اواخر آنها در واقع فقط روی کاغذ در مجله IETF باقی می ماندند. به نظر من، دلیل این امر ترسناک به نظر می رسد - بازاریابی بد. پس از تکمیل استانداردسازی، انگیزه این بود که ROA در برابر ربودن BGP محافظت می کرد - که درست نبود. مهاجمان می توانند به راحتی فیلترهای مبتنی بر ROA را با درج شماره AC صحیح در ابتدای مسیر دور بزنند. و به محض تحقق این امر، گام منطقی بعدی کنار گذاشتن استفاده از ROA بود. و واقعاً، اگر فناوری کار نمی کند، چرا به فناوری نیاز داریم؟

چرا وقت آن رسیده که نظر خود را تغییر دهید؟ زیرا این تمام حقیقت نیست. ROA در برابر فعالیت هکرها در BGP محافظت نمی کند، اما در برابر هواپیماربایی تصادفی از ترافیک محافظت می کندبه عنوان مثال از نشت استاتیک در BGP که رایج تر می شود. همچنین، برخلاف فیلترهای مبتنی بر IRR، ROV را می توان نه تنها در رابط با مشتریان، بلکه در رابط با همتایان و ارائه دهندگان بالادستی نیز استفاده کرد. یعنی همزمان با معرفی RPKI، اعتماد پیشینی به تدریج از BGP محو می شود.

اکنون، بررسی مسیرهای مبتنی بر ROA به تدریج توسط بازیگران کلیدی اجرا می‌شود: بزرگترین IX اروپایی در حال حاضر مسیرهای نادرست را کنار گذاشته است؛ در میان اپراتورهای Tier-1، ارزش برجسته کردن AT&T را دارد که فیلترها را در واسط‌ها با شرکای همتای خود فعال کرده است. بزرگترین ارائه دهندگان محتوا نیز به این پروژه نزدیک می شوند. و ده ها اپراتور ترانزیت متوسط ​​قبلاً آن را بی سر و صدا اجرا کرده اند، بدون اینکه به کسی در مورد آن چیزی بگویند. چرا همه این اپراتورها RPKI را پیاده سازی می کنند؟ پاسخ ساده است: برای محافظت از ترافیک خروجی خود از اشتباهات دیگران. به همین دلیل است که Yandex یکی از اولین ها در فدراسیون روسیه است که ROV را در لبه شبکه خود قرار داده است.

بعد از این چه خواهد شد؟

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

Yandex RPKI را پیاده سازی می کند

این چه تفاوتی برای شما دارد؟ اگر می خواهید امنیت مسیریابی ترافیک بین شبکه خود و Yandex را افزایش دهید، توصیه می کنیم:

  • فضای آدرس خود را امضا کنید در پورتال RIPE - ساده است، به طور متوسط ​​5-10 دقیقه طول می کشد. در صورتی که شخصی ناخواسته فضای آدرس شما را بدزدد (و این قطعا دیر یا زود اتفاق می افتد) از اتصال ما محافظت می کند.
  • یکی از کش های RPKI منبع باز را نصب کنید (تایید کننده رسیده, روتین کننده) و بررسی مسیر را در مرز شبکه فعال کنید - این کار زمان بیشتری می برد، اما مجدداً هیچ مشکل فنی ایجاد نمی کند.

Yandex همچنین از توسعه یک سیستم فیلتر بر اساس شی جدید RPKI پشتیبانی می کند - آسپا (مجوز ارائه دهنده سیستم مستقل). فیلترهای مبتنی بر اشیاء ASPA و ROA نه تنها می توانند جایگزین AS-SET های "نشتی" شوند، بلکه مسائل مربوط به حملات MiTM را با استفاده از BGP نیز ببندند.

من یک ماه دیگر در کنفرانس Next Hop به طور مفصل در مورد ASPA صحبت خواهم کرد. همکارانی از Netflix، Facebook، Dropbox، Juniper، Mellanox و Yandex نیز در آنجا صحبت خواهند کرد. اگر به پشته شبکه و توسعه آن در آینده علاقه دارید، بیایید ثبت نام باز است.

منبع: www.habr.com

اضافه کردن نظر