Hər şey çox pisdir və ya yeni növ trafikin qarşısının alınması

13 mart RIPE sui-istifadəyə qarşı işçi qrupuna təklif alınıb BGP-nin qaçırılmasını (hjjack) RIPE siyasətinin pozulması hesab edin. Təklif qəbul olunarsa, trafikin ələ keçirilməsi ilə hücuma məruz qalan internet provayderi təcavüzkarı ifşa etmək üçün xüsusi sorğu göndərmək imkanı əldə edəcəkdi. Əgər araşdırma qrupu kifayət qədər dəstəkləyici sübut toplasa, BGP-nin ələ keçirilməsinin mənbəyi olan LIR təcavüzkar hesab olunacaq və LIR statusundan məhrum edilə bilər. Bəzi mübahisələr də oldu buna qarşı dəyişikliklər.

Bu nəşrdə təkcə real təcavüzkarın deyil, həm də təsirə məruz qalan prefikslərin bütün siyahısının söz mövzusu olduğu hücum nümunəsini göstərmək istəyirik. Üstəlik, belə bir hücum gələcəkdə bu növ trafikin qarşısının alınmasının motivləri ilə bağlı suallar doğurur.

Son bir neçə il ərzində mətbuatda yalnız MOAS (Çox Mənşəli Muxtar Sistem) kimi münaqişələr BGP müdaxilələri kimi işıqlandırılmışdır. MOAS, iki fərqli avtonom sistemin AS_PATH-də (AS_PATH-də ilk ASN, bundan sonra mənşəli ASN adlandırılacaq) uyğun ASN-lərlə ziddiyyətli prefiksləri reklam etdiyi xüsusi haldır. Bununla belə, heç olmasa ad verə bilərik 3 əlavə növ təcavüzkarın AS_PATH atributunu müxtəlif məqsədlər üçün manipulyasiya etməyə imkan verən trafikin qarşısının alınması, o cümlədən filtrləmə və monitorinq üçün müasir yanaşmalardan yan keçmək. Məlum hücum növü Pilosova-Kapely - bu cür ələ keçirmənin son növü, lakin heç də əhəmiyyət kəsb etmir. Son həftələrdə gördüyümüz hücumun məhz bu cür olması tamamilə mümkündür. Belə bir hadisənin başa düşülən xarakteri və kifayət qədər ciddi nəticələri var.

TL;DR versiyasını axtaranlar "Mükəmməl Hücum" altyazısına keçə bilərlər.

Şəbəkə fonu

(bu hadisə ilə bağlı prosesləri daha yaxşı başa düşməyə kömək etmək üçün)

Əgər siz paket göndərmək istəyirsinizsə və təyinat IP ünvanını ehtiva edən marşrutlaşdırma cədvəlində bir neçə prefiksiniz varsa, o zaman ən uzun uzunluqlu prefiks üçün marşrutdan istifadə edəcəksiniz. Marşrutlaşdırma cədvəlində eyni prefiks üçün bir neçə fərqli marşrut varsa, siz ən yaxşısını seçəcəksiniz (ən yaxşı yol seçim mexanizminə uyğun olaraq).

Mövcud filtrləmə və monitorinq yanaşmaları AS_PATH atributunu təhlil edərək marşrutları təhlil etməyə və qərarlar qəbul etməyə çalışır. Router reklam zamanı bu atributu istənilən dəyərə dəyişə bilər. Sadəcə olaraq AS_PATH başlanğıcına sahibin ASN-ni əlavə etmək (ASN mənşəyi kimi) cari mənşəyi yoxlama mexanizmlərindən yan keçmək üçün kifayət ola bilər. Bundan əlavə, hücuma məruz qalmış ASN-dən sizə marşrut varsa, bu marşrutun AS_PATH-ni çıxarıb digər reklamlarınızda istifadə etmək mümkün olur. Hazırlanmış elanlarınız üçün hər hansı yalnız AS_PATH doğrulama yoxlanışı nəhayət keçəcək.

Hələ qeyd etməyə dəyər bir neçə məhdudiyyət var. Birincisi, yuxarı axın provayderi tərəfindən prefiksin süzülməsi halında, əgər prefiks yuxarı axınında konfiqurasiya edilmiş müştəri konusunuza aid deyilsə, marşrutunuz hələ də filtrlənə bilər (hətta düzgün AS_PATH ilə də). İkincisi, yaradılmış marşrut yanlış istiqamətlərdə elan olunarsa və beləliklə, marşrutlaşdırma siyasətini pozarsa, etibarlı AS_PATH etibarsız ola bilər. Nəhayət, ROA uzunluğunu pozan prefiksi olan hər hansı marşrut etibarsız sayıla bilər.

Hadisə

Bir neçə həftə əvvəl istifadəçilərimizdən birindən şikayət aldıq. İstifadəçi ASN və /25 prefiksləri olan marşrutları gördük, halbuki istifadəçi onları reklam etmədiyini iddia etdi.

TABLE_DUMP2|1554076803|B|xxx|265466|78.163.7.0/25|265466 262761 263444 22356 3491 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.163.7.128/25|265466 262761 263444 22356 3491 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.163.18.0/25|265466 262761 263444 6762 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.163.18.128/25|265466 262761 263444 6762 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.163.226.0/25|265466 262761 263444 22356 3491 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.163.226.128/25|265466 262761 263444 22356 3491 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.164.7.0/25|265466 262761 263444 6762 2914 9121|INCOMPLETE|xxx|0|0||NAG||
TABLE_DUMP2|1554076803|B|xxx|265466|78.164.7.128/25|265466 262761 263444 6762 2914 9121|INCOMPLETE|xxx|0|0||NAG||

2019-cu ilin aprel ayının əvvəli üçün elanların nümunələri

/25 prefiksi yolundakı NTT onu xüsusilə şübhəli edir. LG NTT hadisə zamanı bu marşrutdan xəbərsiz idi. Beləliklə, bəli, bəzi operator bu prefikslər üçün bütöv bir AS_PATH yaradır! Digər marşrutlaşdırıcıların yoxlanılması xüsusi bir ASN-i aşkar edir: AS263444. Bu avtonom sistemlə digər marşrutlara baxdıqdan sonra aşağıdakı vəziyyətlə qarşılaşdıq:

TABLE_DUMP2|1554076800|B|xxx|265466|1.6.36.0/23|265466 262761 263444 52320 9583|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.6.38.0/23|265466 262761 263444 52320 9583|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.23.143.0/25|265466 262761 263444 22356 6762 9498 9730 45528|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.23.143.128/25|265466 262761 263444 22356 6762 9498 9730 45528|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.24.0.0/17|265466 262761 263444 6762 4837|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.24.128.0/17|265466 262761 263444 6762 4837|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.26.0.0/17|265466 262761 263444 6762 4837|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.26.128.0/17|265466 262761 263444 6762 4837|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.64.96.0/20|265466 262761 263444 6762 3491 4760|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.64.112.0/20|265466 262761 263444 6762 3491 4760|IGP|xxx|0|0||NAG||

Burada nəyin səhv olduğunu təxmin etməyə çalışın

Görünür, kimsə marşrutdan prefiksi götürüb, onu iki hissəyə ayırıb və həmin iki prefiks üçün eyni AS_PATH ilə marşrutu reklam edib.

TABLE_DUMP2|1554076800|B|xxx|263444|1.6.36.0/23|263444 52320 9583|IGP|xxx|0|0|32:12595 52320:21311 65444:20000|NAG||
TABLE_DUMP2|1554076800|B|xxx|263444|1.6.38.0/23|263444 52320 9583|IGP|xxx|0|0|32:12595 52320:21311 65444:20000|NAG||
TABLE_DUMP2|1554076800|B|xxx|61775|1.6.36.0/23|61775 262761 263444 52320 9583|IGP|xxx|0|0|32:12595 52320:21311 65444:20000|NAG||
TABLE_DUMP2|1554076800|B|xxx|61775|1.6.38.0/23|61775 262761 263444 52320 9583|IGP|xxx|0|0|32:12595 52320:21311 65444:20000|NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.6.36.0/23|265466 262761 263444 52320 9583|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|265466|1.6.38.0/23|265466 262761 263444 52320 9583|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|28172|1.6.36.0/23|28172 52531 263444 52320 9583|IGP|xxx|0|0||NAG||
TABLE_DUMP2|1554076800|B|xxx|28172|1.6.38.0/23|28172 52531 263444 52320 9583|IGP|xxx|0|0||NAG||

Ayrılmış prefiks cütlərindən biri üçün nümunə marşrutlar

Bir anda bir neçə sual yaranır. Kimsə praktikada bu cür ələ keçirməyə cəhd edibmi? Kimsə bu marşrutları götürüb? Hansı prefikslər təsirləndi?

Burada uğursuzluqlar silsiləsi başlayır və İnternetin mövcud vəziyyəti ilə bağlı məyusluğun növbəti mərhələsidir.

Uğursuzluq yolu

İlk şeylər. Hansı marşrutlaşdırıcıların bu cür kəsilmiş marşrutları qəbul etdiyini və bu gün kimin trafikinin marşrutunun dəyişdirilə biləcəyini necə müəyyən edə bilərik? Biz düşündük ki, /25 prefiksləri ilə başlayaq, çünki onlar "sadəcə qlobal paylanmaya malik deyillər". Təxmin etdiyiniz kimi, biz çox yanılmışıq. Bu metrikanın çox səs-küylü olduğu ortaya çıxdı və belə prefiksli marşrutlar hətta Tier-1 operatorlarından da görünə bilər. Məsələn, NTT-də 50-yə yaxın belə prefiks var və onları öz müştərilərinə paylayır. Digər tərəfdən, bu metrik pisdir, çünki operator istifadə edərsə, bu cür prefikslər süzülə bilər kiçik prefikslərin süzülməsi, bütün istiqamətlərdə. Buna görə də, bu üsul belə bir hadisə nəticəsində trafiki yönləndirilən bütün operatorları tapmaq üçün uyğun deyil.

Düşündüyümüz başqa bir yaxşı fikir baxmaq idi POV. Xüsusilə müvafiq ROA-nın maxLength qaydasını pozan marşrutlar üçün. Bu yolla biz verilmiş AS-də görünən Etibarsız statuslu müxtəlif mənşəli ASN-lərin sayını tapa bildik. Ancaq "kiçik" bir problem var. Bu ədədin orta (median və rejim) (müxtəlif mənşəli ASN-lərin sayı) təxminən 150-dir və kiçik prefiksləri süzgəcdən keçirsək belə, 70-dən yuxarı qalır. Bu vəziyyətin çox sadə izahı var: yalnız Artıq giriş nöqtələrində “Etibarsız marşrutları sıfırla” siyasəti ilə ROA filtrlərindən istifadə edən bir neçə operator, beləliklə, real dünyada ROA pozuntusu olan marşrut görünən hər yerdə bütün istiqamətlərdə yayıla bilsin.

Son iki yanaşma hadisəmizi görən operatorları tapmağa imkan verir (çünki bu, kifayət qədər böyük idi), lakin ümumiyyətlə, onlar tətbiq edilmir. Yaxşı, amma müdaxilə edəni tapa bilərikmi? Bu AS_PATH manipulyasiyasının ümumi xüsusiyyətləri hansılardır? Bir neçə əsas fərziyyə var:

  • Prefiks əvvəllər heç yerdə görünməmişdi;
  • Origin ASN (xatırlatma: AS_PATH-də ilk ASN) etibarlıdır;
  • AS_PATH-də sonuncu ASN təcavüzkarın ASN-idir (qonşu qonşunun bütün daxil olan marşrutlarda ASN-ni yoxlayırsa);
  • Hücum tək bir provayderdən qaynaqlanır.

Əgər bütün fərziyyələr düzgündürsə, onda bütün yanlış marşrutlar təcavüzkarın ASN-sini təqdim edəcək (ASN mənşəyi istisna olmaqla) və beləliklə, bu, "kritik" nöqtədir. Həqiqi qaçıranlar arasında AS263444 də var idi, baxmayaraq ki, başqaları da var idi. Hadisənin marşrutlarını nəzərdən qaçırdığımızda belə. Niyə? Kritik nöqtə hətta düzgün marşrutlar üçün də kritik olaraq qala bilər. Bu, ya bir bölgədəki zəif əlaqənin nəticəsi ola bilər, ya da öz görmə qabiliyyətimizdəki məhdudiyyətlər ola bilər.

Nəticədə, təcavüzkarı aşkar etməyin bir yolu var, ancaq yuxarıda göstərilən şərtlərin hamısı yerinə yetirildikdə və yalnız ələ keçirmə monitorinq hədlərini keçmək üçün kifayət qədər böyük olduqda. Əgər bu amillərdən bəziləri yerinə yetirilmirsə, onda bu cür müdaxilədən əziyyət çəkən prefiksləri müəyyən edə bilərikmi? Müəyyən operatorlar üçün - bəli.

Təcavüzkar daha konkret marşrut yaratdıqda, belə bir prefiks əsl sahibi tərəfindən reklam edilmir. Əgər onun bütün prefikslərinin dinamik siyahısı varsa, onda müqayisə aparmaq və təhrif olunmuş daha konkret marşrutları tapmaq mümkün olur. Biz BGP seanslarımızdan istifadə edərək bu prefiks siyahısını toplayırıq, çünki bizə hazırda operatora görünən marşrutların tam siyahısı deyil, həm də onun dünyaya reklam etmək istədiyi bütün prefikslərin siyahısı verilir. Təəssüf ki, indi son hissəni düzgün doldurmayan bir neçə onlarla Radar istifadəçisi var. Qısa zamanda onlara məlumat verəcəyik və bu problemi həll etməyə çalışacağıq. Digər hər kəs hazırda monitorinq sistemimizə qoşula bilər.

Orijinal hadisəyə qayıtsaq, həm təcavüzkar, həm də paylama sahəsi kritik nöqtələri axtararaq bizim tərəfimizdən aşkar edildi. Təəccüblüdür ki, AS263444 bütün müştərilərinə uydurma marşrutlar göndərmədi. Baxmayaraq ki, qəribə bir məqam var.

BGP4MP|1554905421|A|xxx|263444|178.248.236.0/24|263444 6762 197068|IGP|xxx|0|0|13106:12832 22356:6453 65444:20000|NAG||
BGP4MP|1554905421|A|xxx|263444|178.248.237.0/24|263444 6762 197068|IGP|xxx|0|0|13106:12832 22356:6453 65444:20000|NAG||

Ünvan məkanımıza müdaxilə etmək cəhdinin son nümunəsi

Prefikslərimiz üçün daha konkret olanlar yaradıldıqda, xüsusi olaraq yaradılmış AS_PATH istifadə edildi. Bununla belə, bu AS_PATH əvvəlki marşrutlarımızın heç birindən götürülə bilməzdi. AS6762 ilə əlaqəmiz belə yoxdur. Hadisənin digər marşrutlarına nəzər salsaq, bəzilərində əvvəllər istifadə edilmiş real AS_PATH var idi, bəzilərində isə real kimi görünsə də yox idi. AS_PATH-in əlavə olaraq dəyişdirilməsinin heç bir praktiki mənası yoxdur, çünki hər halda trafik hücumçuya yönləndiriləcək, lakin “pis” AS_PATH olan marşrutlar ASPA və ya hər hansı digər yoxlama mexanizmi ilə süzülə bilər. Burada təyyarə qaçıran şəxsin motivasiyası haqqında düşünürük. Hazırda bu hadisənin planlaşdırılmış hücum olduğunu təsdiqləmək üçün kifayət qədər məlumatımız yoxdur. Buna baxmayaraq, mümkündür. Gəlin hələ də hipotetik olsa da, potensial olaraq olduqca real bir vəziyyəti təsəvvür etməyə çalışaq.

Mükəmməl Hücum

Bizdə nə var? Tutaq ki, siz müştəriləriniz üçün marşrutlar yayımlayan tranzit provaydersiniz. Müştərilərinizin çoxsaylı iştirakı (çox ev) varsa, siz onların trafikinin yalnız bir hissəsini alacaqsınız. Ancaq nə qədər çox trafik, bir o qədər çox gəliriniz var. Beləliklə, eyni marşrutların alt şəbəkə prefikslərini eyni AS_PATH ilə reklam etməyə başlasanız, onların trafikinin qalan hissəsini alacaqsınız. Nəticədə pulun qalan hissəsi.

ROA burada kömək edəcəkmi? Ola bilsin ki, bəli, əgər siz onu tamamilə istifadə etməyi dayandırmaq qərarına gəlsəniz maksimum uzunluq. Bundan əlavə, kəsişən prefikslərlə ROA qeydlərinin olması çox arzuolunmazdır. Bəzi operatorlar üçün bu cür məhdudiyyətlər qəbuledilməzdir.

Digər marşrutlaşdırma təhlükəsizlik mexanizmlərini nəzərə alsaq, ASPA bu halda da kömək etməyəcək (çünki o, etibarlı marşrutdan AS_PATH istifadə edir). BGPSec hələ də aşağı qəbul nisbətləri və aşağı səviyyəli hücumların qalan ehtimalı səbəbindən optimal seçim deyil.

Beləliklə, təcavüzkar üçün açıq bir qazancımız və təhlükəsizlik çatışmazlığımız var. Əla qarışıq!

Nə etməliyəm?

Açıq və ən kəskin addım cari marşrutlaşdırma siyasətinizi nəzərdən keçirməkdir. Ünvan məkanınızı reklam etmək istədiyiniz ən kiçik hissələrə (üst-üstə düşməyən) bölün. maxLength parametrindən istifadə etmədən yalnız onlar üçün ROA imzalayın. Bu halda, hazırkı POV-niz sizi belə bir hücumdan xilas edə bilər. Ancaq yenə də bəzi operatorlar üçün bu yanaşma daha konkret marşrutların eksklüziv istifadəsi səbəbindən ağlabatan deyil. ROA və marşrut obyektlərinin cari vəziyyəti ilə bağlı bütün problemlər gələcək materiallarımızdan birində təsvir ediləcəkdir.

Bundan əlavə, bu cür müdaxilələri izləməyə cəhd edə bilərsiniz. Bunun üçün bizə prefiksləriniz haqqında etibarlı məlumat lazımdır. Beləliklə, kollektorumuzla BGP seansı qursanız və İnternetdə görünmə qabiliyyətiniz haqqında bizə məlumat versəniz, biz digər hadisələrin əhatə dairəsini tapa bilərik. Hələ monitorinq sistemimizə qoşulmayanlar üçün başlanğıc üçün yalnız prefiksləriniz olan marşrutların siyahısı kifayət edəcəkdir. Bizimlə bir seansınız varsa, lütfən, bütün marşrutlarınızın göndərildiyini yoxlayın. Təəssüf ki, bunu xatırlamağa dəyər, çünki bəzi operatorlar bir və ya iki prefiksi unudurlar və bununla da axtarış üsullarımıza müdaxilə edirlər. Düzgün edilərsə, prefiksləriniz haqqında etibarlı məlumatımız olacaq ki, bu da gələcəkdə ünvan məkanınız üçün bu (və digər) trafikin qarşısının alınması növlərini avtomatik müəyyən etməyə və aşkar etməyə kömək edəcək.

Əgər real vaxt rejimində trafikinizin bu cür tutulmasından xəbərdar olsanız, özünüz bunun qarşısını almağa cəhd edə bilərsiniz. Birinci yanaşma, bu daha spesifik prefikslərlə marşrutları özünüz reklam etməkdir. Bu prefikslərə yeni bir hücum halında təkrarlayın.

İkinci yanaşma, təcavüzkarı və onun üçün kritik nöqtə olanları (yaxşı marşrutlar üçün) hücum edənə marşrutlarınızın girişini kəsərək cəzalandırmaqdır. Bu, təcavüzkarın ASN-ni köhnə marşrutlarınızın AS_PATH-ə əlavə etməklə edilə bilər və beləliklə, onları BGP-də daxili döngə aşkarlama mexanizmindən istifadə edərək bu AS-dən qaçmağa məcbur edir. öz yaxşılığınız üçün.

Mənbə: www.habr.com

Добавить комментарий