آموزش ها و ترفتد هادانستنی هافناوریمقالات

BGPSec چیست؟

پروتکل دروازه‌ای مرزی (BGP) یا Border Gateway Protocol یک پروتکل مسیریابی از نوع خارجی است که ارتباط بین سیستم‌های مستقل را فراهم می‌کند. وجود پروتکل‌های از این دست، برای دسترسی به شبکه جهانی اینترنت ضروری است.

متاسفانه پروتکل مسیریابی BGP، در زمان طراحی به صورت یک پروتکل امن نوشته‌ نشده است و دارای اشکالات امنیتی بسیاری است، که تمامی آن‌ها حل نشده‌اند و بسیاری از کارشناسان و فعالان حوزه شبکه و امنیت ‌شبکه معقداند که پروتکل BGP، هنوز یک پروتکل کاملا امن نمی‌باشد. یکی از انواع حملاتی که در BGP می‌تواند انجام شود، Route Hijacking می‌باشد و زمانی پیش‌ می‌آید که یک AS مسیری نامعتبر و جعلی را در شبکه (Advertise) تبلیغ می‌کند. اخیرا نوع جدیدی از این حملات انجام می‌شوند که ترکیبی از حملات BGP Hijacking و Man-in-the-middle می‌باشند؛ در این نوع حمله، ترافیک به یک نقطه ‌خاص ارسال می‌شود و سپس از آن نقطه‌ خاص به مقصد اصلی ارسال خواهد شد؛ در نتیجه اگر ترافیک رمزنگاری نشده‌ باشد براحتی برای دریافت کننده‌ی ‌میانی قابل مشاهده و بررسی است.

حالا در مقابل، برای جلوگیری از این حملات چه کاری می‌توان انجام داد؟

بعد از حادثه هایجک شدن YouTube توسط پاکستان در سال 2008، مسئله امنیت BGP بسیار مهمتر و قابل‌توجه‌تر شد. هدف اصلی SIDR کاهش اشکالات‌امنیتی در Inter-domain Routing system ها می‌باشد و دو آسیب‌پذیری‌ای که بیشترین تمرکز بروی آن‌ها می‌باشد موارد زیر است:

  • آیا یک AS اجازه ایجاد یک IP Prefix را دارد؟
  • آیا AS-Path ارائه‌شده در Route همان مسیری می‌باشد که NLRI از آن استفاده کرده است؟(Network Layer Reachability Information)

برای حل مورد دوم بروی راهکاری تمرکز شده‌است که کار AS Path Validation را انجام می‌دهد، به این راهکار BGPSec که اختسار Border Gateway Protocol Security است می‌گویند. BGPSec سعی می‌کند که اطمینان‌خاطر دهد که BGP Update دریافت شده توسط BGP Peer بدرستی مسیری را ارائه می‌کند که خود پیغام Update از فرستنده تا گیرنده طی کرده است. تا الان 40 عدد RFC توسط SIDR بصورت رسمی ارائه ‌شده است و درحال‌حاضر 2 عدد هم پیشنویس درحال بررسی دارند؛ می‌توان گفت که ‌RFCهایی که در سال 2017 برای BGPSec از حالت پیشنویس خارج‌ و بصورت رسمی ارائه‌شدند، قدم بزرگی برای امنیت روتینگ برداشتند:

  • RFC 8206 – ملاحظات BGPSec برای انتقال AS
  • RFC 8207 – ملاحظات عملیاتی BGPSec
  • RFC 8208 – الگوریتم‌ها، کلیدها و امضاهای BGPSec
  • RFC 8209 – گواهی‌نامه‌های BGPSec
  • RFC 8211 – اقدامات مربوط به RPKI

داکیومنت RFC 8205 توضیحات و مشخصاتی از BGPSec می‌باشد که بصورت استاندارد انتشار یافته‌است؛ در RFC به این صورت توضیح داده‌شده است که BGPSec یک افزونه برای روتینگ پروتکل BGP می‌باشد که می‌تواند توسط BGP Update Message امنیت را برای مسیرها (Path) فراهم کند. BGPSec می‌تواند توسط یک Path Attribute اختیاری در BGP به‌نام BGPsec_Path، پیاده‌سازی شود. این مشخصه حاوی یک امضای دیجیتال (Digital Signature) می‌باشد که می‌تواند توسط هر AS (Autonomous System، سیستم خودمختار، گروهی از دستگاه‌ها که توسط یک سازمان مستقل مدیریت می‌شوند) که Update message را انتشار می‌دهد، ایجاد شود. Digital Signature به‌ ما این قابلیت را می‌دهد که فقط ASهای موجود در “لیست ASهای Update message” اجازه تبلیغ کردن مسیر (Route) را داشته ‌باشد.

در اصل، مقصود اصلی از ایجاد BGPSec ،فراهم کردن مکملی برای BGP Origin Validation می‌باشد(RFCهای 6483 , 6811) تا در زمانی که عمل تصدیق مبدأ (Origin Validation) انجام می‌شود، بتوان بصورت همزمان از عمل Route Hijacking هم جلوگیری به عمل آورد؛ این کار توسط گواهی‌نامه‌های Resource Public Key Infrastructure (به اختصار RPKI) انجام می‌شود که تخصیص AS Number ها و IP Address ها را تصدیق و تایید می‌کند.(RFC 6480).

همانطور که در RFC 6480 شرح داده ‌شده ‌است، سیستم RPKI راهی برای بهبود Routing Security می‌باشد که توسط همکاری IP Address Range و ASN از طریق امضای رمزنگاری (Cryptographic Signature) انجام داده ‌می‌شود؛ RKPI از X.509 Certificate استفاده می‌کند (که همراه افزونه‌هایی از IPv4 و IPv6 پریفیکس و ASN می‌باشد).(RFC 3779).

در زمان درخواست منابع، RIR (APNIC، ARIN، AFRINIC، LACNIC و RIPE NCC) این Certificate را برای Resource Holder صادر می‌کند؛ عموما Certificate هر سال Renew می‌شوند و هر RIR از Certificate شخصی و مربوط به سازمان خودش برای امضا Certificate صادر شده‌اش استفاده می‌کند. RKPI به Network Operator اجازه می‌دهد که یک اطلاعیه رمزنگاری ‌شده و قابل اعتبارسنجی در مورد “Route Announcement که آن‌ها توسط ASN و IP Prefix خودشان مجاز به انتشار می‌باشند” ایجاد کنند. به این اطلاعیه‌ها Route Origin Authorisations (به اختصار ROA) گفته می‌شود، که همچنین می‌تواند برای مشخص کردن Maximum طول یک Prefix که یک AS مجاز به تبلیغ کردنش می‌باشد، استفاده شود.

درصورت استفاده از BGPSec، مکانیزم عادی ‌ما، حالا نیاز به استفاده از یک BGP attribute دیگر دارد و Negotiation با دیگر eBGP Peer درمورد BGP capability؛ پس در نتیجه کم‌کم به Peer های ما پیشنهاد داده می‌شود که با یک‌دیگر به توافق برسند و از این به بعد، با استفاده از BGPSec بایک‌دیگر صحبت کنند. در دنیای اینترنت آینده، Interconnected AS که از BGPSec استفاده می‌کند، قادر به تضمین این مورد می‌باشند که تمامی مسیرهای تبلیغ شده بدرستی و بدون اشکال توزیع شده‌اند؛ اگرچه زیبایی و قشنگی BGP امن‌شده، زمانی دیده می‌شود که non-BGPSec speakers کمتری در Routing Path وجود داشته باشد.

برچسب ها

مدیریت سایت

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

نوشته های مشابه

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

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

همچنین ببینید
بستن
دکمه بازگشت به بالا
بستن
بستن