مقالات

DDoS Mitigation و BGP Flowspec


در روش های سنتی کاهش DDoS، مانند RTBH (سیاه چاله از راه دور)، یک مسیر BGP تزریق می شود که آدرس IP سرور مورد حمله را با یک جامعه خاص تبلیغ می کند (666). این جامعه روتر مرزی ویژه، جهش بعدی را روی یک hop بعدی رد/null ویژه تنظیم می کند، بنابراین از ترافیک منابع مشکوک به شبکه شما جلوگیری می کند. این روش به مشتریان اجازه می دهد تا به ارائه دهندگان سیگنال دهند که ترافیک DDoS ارسال شده به پیشوندی را که روی روترهای لبه آنها مورد حمله قرار گرفته است، رها کنند. با این حال، ترافیک قانونی نیز حذف می شود، بنابراین سرور کاملاً غیر قابل دسترس است.

توجه داشته باشید: به طور معمول، آدرس IP 192.0.2.1 برای پرش بعدی استفاده می شود که نباید قابل دسترسی باشد. آدرس IP برای استفاده در شبکه های آزمایشی رزرو شده است. به عنوان یک آدرس IP مستقر استفاده نمی شود.

BGP Flowspec یک روش جایگزین و دقیق تر RTBH است که در اینجا توضیح داده شده است RFC5575 که می تواند برای کاهش حمله انکار سرویس توزیع شده (DDoS) مورد استفاده قرار گیرد. معیارهای تطبیق به اپراتورهای شبکه اجازه می دهد تا یک جریان خاص را با پارامترهای منبع، مقصد، L4 و مشخصات بسته مانند طول تعریف کنند. اینها در یک پیام BGP UPDATE به روترهای مرزی BGP در FLOW_SPEC_NLRI همراه با معیارهای اقدام ارسال می شوند. اقدامات در ویژگی Path جوامع توسعه یافته انجام می شود. آنها می توانند ترافیک مطابق با مشخصات جریان را رد کنند، ترافیک را برای تجزیه و تحلیل بیشتر به یک VRF خاص هدایت کنند، یا ترافیک سیاست را با نرخ مشخصی انجام دهند.

به عبارت دیگر، BGP Flowspec شبیه لیست های دسترسی است که با class-map و Policy-map ایجاد شده اند که معیارها و اقدامات تطبیقی ​​را برای فیلتر کردن ترافیک ارائه می دهند. آنها به BGP تزریق می شوند و به همتایان BGP تکثیر می شوند. این مکانیسم به یک AS بالادست اجازه می دهد تا فیلتر ورودی را در مسیریاب های ورودی خود در ترافیکی که AS پایین دستی می خواهد رد یا سیاست گذاری کند، انجام دهد.

BGP از NLRI برای تبادل جزئیات مسیریابی بین پره های BGP استفاده می کند. هر یک از پسوندهای چند پروتکلی BGP (MP-BGP) NLRI مخصوص به خود را دارد که با شناسه خانواده آدرس (AFI) و شناسه خانواده آدرس بعدی (SAFI) مشخص می شود. BGP flowspec یک اطلاعات قابل دسترسی لایه شبکه چندپروتکلی جدید (MP_REACH_NLRI) با AFI 1 (IPv4) و AFI بعدی (SAFI) 133 (فیلتر مشخصات جریان) تعریف می کند. Flow Spec NLRI 12 نوع فیلتر لایه 3 و لایه 4 را جمع آوری می کند که برای تعریف مشخصات جریان استفاده می شود. اینها فیلدهایی هستند که در پیام به روز رسانی BGP به NLRI اضافه می شوند و برای همتایان تبلیغ می شوند.

توجه داشته باشید: مسیرهای پیش فرض برای همتایان BGP، مسیرهای unicast IPv4 هستند. MP-BGP زمانی که مسیرهای unicast غیر IPv4 (مثلا IPv6 یا Flowspec) بین همتایان BGP مبادله می شوند، NLRI مناسب را مشخص می کند. Flowspec (SAFI 133) به عنوان یک برنامه افزودنی چند پروتکلی دیگر در طول فاز باز BGP مورد مذاکره قرار می گیرد (شکل 1).

یک زیرساخت شبکه فعال شده با BGP Flowspec از یک کنترلر Flowspec (سرور)، یک یا چند مشتری Flowspec و یک بازتاب دهنده مسیر اختیاری تشکیل شده است. قوانینی که شامل معیارها و اقدامات منطبق هستند بر روی سرور ایجاد می شوند و از طریق MP-BGP بین مشتریان توزیع می شوند. کلاینت قوانین را از کنترلر دریافت می کند و قوانین را برای TCAM برنامه ریزی می کند. یک جزء اختیاری بازتاب مسیر می‌تواند برای دریافت قوانین از کنترل‌کننده و توزیع آنها به مشتریانش استفاده شود.

پیام BGP OPEN

شکل 1: پیام BGP OPEN با قابلیت Flowspec (SAFI 133)

پیکربندی Flowspec که توسط مشتری به ارائه دهنده سیگنال داده شده است

یک پیام BGP UPDATE با Flow Spec NLRI در شکل 2 نشان داده شده است. FlOW_SPEC_NLRI شامل معیارهای مطابقت زیر است. ما می توانیم تا 12 نوع معیار مختلف را تعریف کنیم. یک بسته خاص زمانی در نظر گرفته می شود که با مشخصات جریان مطابقت داشته باشد که با تقاطع (I) همه اجزای نمایش داده شده مطابقت داشته باشد.

نوع 1 – پیشوند مقصد (195.165.0.1/32)
نوع 3 – پروتکل IP – 17 (UDP)
نوع 5 – درگاه مقصد – 53 (DNS)

مشخصات جریان bgp

تصویر 2: MP_REACH_NLRI – AFI 1 / SAFI 133 با Flow Spec NLRI

عمل تطبیق معیارها به صورت جوامع گسترده انجام می شود (تصویر 3). نرخ ترافیک 0 به این معنی است که ترافیک مطابق با معیارهای مشخص شده در Flow Spec NLRI حذف می شود.

ویژگی مسیر EXTENDED_COMMUNITIES

شکل 3: EXTENDED_COMMUNITIES ویژگی مسیر کاهش ترافیک

پیکربندی Flowspec که توسط مشتری به ارائه دهنده سیگنال داده شده است

شکل 4 یک توپولوژی شبکه را با یک کنترل کننده مرکزی پیکربندی شده روی روتر CE1 (AS64501) و دو کلاینت در یک شبکه ISP1 (AS64500) نشان می دهد. پس از اینکه Customer1 یک حمله DDoS را با هدف درگاه UDP مقصد 53 (DNS) در سرور 196.156.0.1/24 شناسایی کرد، یک به روز رسانی BGP با Flowspec SAFI 133 در ISP1 PE1 تبلیغ می شود. پیام UPDATE حاوی مشخصات جریان مربوط به پیشوند 195.165.0.1/32، پروتکل UDP (17) و پورت مقصد 53 (تصویر 2) است. معیار عملی که ترافیک منطبق با مشخصات جریان را کاهش می‌دهد، به‌عنوان جوامع توسعه‌یافته BGP انجام می‌شود (شکل 3). سپس روتر PE1 به روز رسانی BGP را به روتر PE2 ارسال می کند. روتر پایانی ارائه دهنده PE2 با Flowspec فعال در رابط Gi0/0/0/1 قوانین را در TCAM برنامه ریزی می کند. ترافیک دریافتی توسط CE2 که معیارهای منطبق را دارد حذف می شود.

کنترلر مشخصات جریان

شکل 4: یک کنترلر Flowspec سمت مشتری و دو مشتری Flowspec در شبکه ارائه دهنده

پیکربندی سرور Flowspec (کنترل کننده) در CE1

یک نقشه کلاس ایجاد کنید حمله-fs آدرس IP سرور وب/DNS را مطابقت دهید – 195.165.0.1، پروتکل (17) – UDP و پورت مقصد 53 (DNS).

class-map type traffic match-all attack-fs
 match destination-address ipv4 195.165.0.1 255.255.255.255
 match protocol 17 
 match destination-port 53 
 end-class-map

Policy-map attack_pbr را پیکربندی کنید و class-map attack-fs را مرتبط کنید. از class-map برای تعریف یک عمل استفاده کنید.

policy-map type pbr attack_pbr
 class type traffic attack-fs 
  drop
 class type traffic class-default 
 end-policy-map

ما نیاز به تعریف یک خط مشی مسیر داریم که اجازه صادرات و واردات مسیرها به/از همتایان eBGP را بدهد.

route-policy PASS
  pass
end-policy 
 
router bgp 64501
 bgp router-id 4.4.4.4
 address-family ipv4 unicast
  network 195.165.0.0/24
 
 address-family ipv4 flowspec

همسایه eBGP 12.0.0.2 را با یک خط مشی IPv4 ورودی و خروجی برای خانواده آدرس IPv4 unicast برای ارسال و/یا دریافت مسیرهای IPv4 پیکربندی کنید.

neighbor 12.0.0.2
  remote-as 64500
  address-family ipv4 unicast
   route-policy PASS in
   route-policy PASS out

پیکربندی خط مشی ورودی و خروجی Flowspec IPv4 برای همسایه eBGP 12.0.0.2.

address-family ipv4 flowspec
   route-policy PASS in
   route-policy PASS out

flowspec را پیکربندی کنید و نوع خط مشی سرویس PBR Policy-map attack_pbr را تنظیم کنید.

flowspec
 address-family ipv4
  service-policy type pbr attack_pbr

شکل 5 تعریف Flowspec و حذف عملکرد سرور BGP-FS (روتر CE1) را نشان می دهد.

RP/0/0/CPU0:CE1# show flowspec ipv4 detail
سرور Flowspec

شکل 5: تعریف جریان با Action Drop در Flowspec Server CE1

پیکربندی مشتری Flowspec در PE1

router bgp 64500
 bgp router-id 2.2.2.2
 address-family ipv4 unicast
 
 address-family ipv4 flowspec
 
 neighbor 10.0.0.2
  remote-as 64500
  address-family ipv4 unicast
   next-hop-self
  
  address-family ipv4 flowspec

همسایه eBGP 12.0.0.1 را با خط مشی IPv4 ورودی و خروجی برای خانواده آدرس IPv4 Unicast پیکربندی کنید تا مسیرها را ارسال و/یا دریافت کنید.

neighbor 12.0.0.1
  remote-as 64501
  address-family ipv4 unicast
   route-policy PASS in
   route-policy PASS out

پیکربندی خط مشی ورودی و خروجی Flowspec IPv4 برای همسایه eBGP 12.0.0.1.

address-family ipv4 flowspec
   route-policy PASS in
   route-policy PASS out

سیاست flowspec را به صورت محلی برای همه اینترفیس ها نصب کنید.

flowspec
 address-family ipv4
  local-install interface-all

پیکربندی کلاینت Flowspec در PE2

route-policy PASS
  pass
end-policy

router bgp 64500
 bgp router-id 1.1.1.1
 address-family ipv4 unicast
 
 address-family ipv4 flowspec
 
 neighbor 10.0.0.1
  remote-as 64500
  address-family ipv4 unicast
   next-hop-self
 
  address-family ipv4 flowspec

همسایه eBGP 11.0.0.1 را با خط مشی IPv4 ورودی و خروجی برای خانواده آدرس IPv4 Unicast برای ارسال و/یا دریافت مسیرها پیکربندی کنید.

neighbor 11.0.0.1
  remote-as 64502
  address-family ipv4 unicast
   route-policy PASS in
   route-policy PASS out
 
  address-family ipv4 flowspec

سیاست flowspec را به صورت محلی برای همه اینترفیس ها نصب کنید.

flowspec
 address-family ipv4
  local-install interface-all

یک جدول BGP برای خانواده آدرس IPv4 Flowspec در شکل 6 نشان داده شده است. جدول شامل یک ورودی برای شبکه مقصد 195.165.0.1/32، پروتکل UDP و پورت مقصد 53 است.

RP/0/0/CPU0:PE2# show bgp ipv4 flowspec
جدول BGP IPv4 FlowSpec

شکل 6: جدول مشخصات جریان BGP IPv4 در PE2

نتیجه:

فناوری BGP Flowspec رویکردی دقیق‌تر برای کاهش حملات DDoS نسبت به روش‌های قدیمی مانند RTBH ارائه می‌کند. این از طریق تعریف خاصی از جریان ها بر اساس معیارهای تطبیق و اقدامات L3 و L4 پیکربندی شده در سرور FlowSpec به دست می آید. قوانین به طور خودکار با استفاده از MP-BGP (SAFI 133) بین مشتریان FlowSpec توزیع می شوند تا مشتریان بتوانند اقدامات تعریف شده در قوانین را انجام دهند.

تاکنون بسیاری از فروشندگان شبکه مانند سیسکو، جونیپر، آریستا، نوکیا از BGP FlowSpec حداقل در نقش کنترلر در محصول خود پشتیبانی می کنند. به عنوان مثال، سرویس گیرنده FlowSpec در روترهای خدمات تجمعی سری Cisco ASR9000 (IOX-XR)، ASR1000 (IOS-XE) پیاده سازی شده است، در حالی که کنترلر FlowSpec در روترهای ASR9000، CRS، NCS6000، XR12000 است. کنترل‌کننده FlowSpec را می‌توان در Quagga، Bird، Arbor، ExaBGP و همچنین پیاده‌سازی نرم‌افزار روتر/سوئیچ‌های سخت‌افزاری (Cisco IOS-XRv، Arista vEOS) یافت.

با این حال، برای استفاده از BGP Flowspec به‌عنوان راه‌حل کاهش حملات DDoS، یک رویکرد مشترک با سایر ISPها و ارائه‌دهندگان خدمات مورد نیاز است. متأسفانه، هنوز تعداد کمی از اپراتورها وجود دارند که اجازه می دهند قوانین توزیع شوند. برای جذب بیشتر با BGP Flowspec، متخصصان شبکه باید بیشتر از ارائه دهندگان خود در این مورد بپرسند.




Source link

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

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

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