Har bir narsa juda yomon yoki yangi turdagi trafikni ushlab turish

13 mart RIPE suiiste'mollikka qarshi ishchi guruhiga taklif olindi BGP hijacking (hjjack) RIPE siyosatining buzilishi deb hisoblang. Agar taklif qabul qilinsa, trafikni ushlab turish orqali hujumga uchragan internet-provayder tajovuzkorni fosh qilish uchun maxsus so‘rov yuborish imkoniyatiga ega bo‘lardi. Agar ko'rib chiqish guruhi etarli dalil to'plagan bo'lsa, BGP to'xtatilishining manbai bo'lgan LIR buzg'unchi hisoblanadi va LIR holatidan mahrum qilinishi mumkin edi. Ba'zi tortishuvlar ham bor edi bunga qarshi o'zgarishlar.

Ushbu nashrda biz nafaqat haqiqiy tajovuzkor, balki ta'sirlangan prefikslarning to'liq ro'yxati ham so'ralgan hujum misolini ko'rsatmoqchimiz. Bundan tashqari, bunday hujum kelajakda ushbu turdagi transportni ushlab turish sabablari haqida yana savollar tug'diradi.

So'nggi bir necha yil ichida matbuotda faqat MOAS (Bir nechta kelib chiqishi avtonom tizim) kabi to'qnashuvlar BGP ushlash sifatida yoritilgan. MOAS alohida holat bo'lib, ikki xil avtonom tizimlar AS_PATH da (AS_PATH da birinchi ASN, bundan keyin kelib chiqish ASN deb yuritiladi) mos keladigan ASNlar bilan ziddiyatli prefikslarni reklama qiladi. Biroq, biz hech bo'lmaganda nomlashimiz mumkin 3 ta qo'shimcha tur tajovuzkorga AS_PATH atributini turli maqsadlarda, shu jumladan filtrlash va monitoring qilishning zamonaviy yondashuvlarini chetlab o'tish uchun manipulyatsiya qilish imkonini beruvchi trafikni ushlab turish. Ma'lum hujum turi Pilosova-Kapeliy - bunday tutishning oxirgi turi, lekin umuman ahamiyatli emas. O'tgan haftalarda aynan shunday hujumga guvoh bo'lishimiz mumkin. Bunday hodisa tushunarli xususiyatga ega va juda jiddiy oqibatlarga olib keladi.

TL;DR versiyasini qidirayotganlar "Perfect Attack" subtitriga o'tishlari mumkin.

Tarmoq foni

(ushbu voqea bilan bog'liq jarayonlarni yaxshiroq tushunishga yordam berish uchun)

Agar siz paket jo'natmoqchi bo'lsangiz va marshrutlash jadvalida maqsad IP-manzilni o'z ichiga olgan bir nechta prefikslar mavjud bo'lsa, siz eng uzun uzunlikdagi prefiks uchun marshrutdan foydalanasiz. Agar marshrutlash jadvalida bir xil prefiks uchun bir nechta turli marshrutlar mavjud bo'lsa, siz eng yaxshisini tanlaysiz (eng yaxshi yo'lni tanlash mexanizmiga ko'ra).

Mavjud filtrlash va monitoring yondashuvlari marshrutlarni tahlil qilishga va AS_PATH atributini tahlil qilish orqali qaror qabul qilishga harakat qiladi. Router reklama paytida ushbu atributni istalgan qiymatga o'zgartirishi mumkin. AS_PATH boshiga egasining ASN-ni qo'shish (ASN kelib chiqishi sifatida) joriy kelib chiqishni tekshirish mexanizmlarini chetlab o'tish uchun etarli bo'lishi mumkin. Bundan tashqari, agar hujum qilingan ASN dan sizga marshrut mavjud bo'lsa, boshqa reklamalaringizda ushbu marshrutning AS_PATH ni ajratib olish va foydalanish mumkin bo'ladi. Tayyorlangan e'lonlaringiz uchun faqat AS_PATH tekshiruvi oxir-oqibat o'tib ketadi.

Hali ham eslatib o'tishga arziydigan bir nechta cheklovlar mavjud. Birinchidan, agar prefiks yuqori oqim provayderi tomonidan filtrlangan bo'lsa, sizning marshrutingiz filtrlangan bo'lishi mumkin (hatto to'g'ri AS_PATH bilan ham), agar prefiks yuqori oqimda sozlangan mijoz konusiga tegishli bo'lmasa. Ikkinchidan, agar yaratilgan marshrut noto'g'ri yo'nalishlarda e'lon qilinsa va shuning uchun marshrutlash siyosatini buzsa, joriy AS_PATH yaroqsiz bo'lishi mumkin. Nihoyat, ROA uzunligini buzadigan prefiksli har qanday marshrut yaroqsiz deb hisoblanishi mumkin.

Hodisa

Bir necha hafta oldin biz foydalanuvchilarimizdan birining shikoyatini oldik. Biz uning kelib chiqishi ASN va /25 prefikslari bilan marshrutlarni ko'rdik, foydalanuvchi esa ularni reklama qilmaganligini da'vo qildi.

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 yil aprel oyining boshi uchun e'lonlarga misollar

/25 prefiksi yo'lidagi NTT uni ayniqsa shubhali qiladi. Hodisa vaqtida LG NTT bu yo‘nalishdan bexabar edi. Ha, ba'zi operatorlar ushbu prefikslar uchun to'liq AS_PATH yaratadi! Boshqa marshrutizatorlarni tekshirish ma'lum bir ASNni ko'rsatadi: AS263444. Ushbu avtonom tizim bilan boshqa marshrutlarni ko'rib chiqqach, biz quyidagi vaziyatga duch keldik:

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||

Bu erda nima noto'g'ri ekanligini taxmin qilishga harakat qiling

Ko'rinishidan, kimdir marshrutdan prefiksni olib, uni ikki qismga bo'lib, ushbu ikkita prefiks uchun bir xil AS_PATH bilan marshrutni reklama qilgan.

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||

Ajratilgan prefiks juftlaridan biri uchun namuna marshrutlari

Bir vaqtning o'zida bir nechta savollar tug'iladi. Kimdir amalda bunday to'xtatib turishni sinab ko'rganmi? Kimdir bu yo'llarni bosib o'tganmi? Qanday prefikslar ta'sir qildi?

Bu erda bizning muvaffaqiyatsizliklar qatorimiz boshlanadi va Internetning hozirgi holatidan umidsizlikning navbatdagi bosqichi.

Muvaffaqiyatsizlik yo'li

Birinchi birinchi narsalar. Qaysi marshrutizatorlar bunday tutilgan marshrutlarni qabul qilganini va bugungi kunda kimning trafigini qayta yo'naltirish mumkinligini qanday aniqlash mumkin? Biz /25 prefikslari bilan boshlaymiz, deb o'yladik, chunki ular "shunchaki global taqsimotga ega emas". Siz taxmin qilganingizdek, biz juda xato qildik. Ushbu ko'rsatkich juda shovqinli bo'lib chiqdi va bunday prefiksli marshrutlar hatto Tier-1 operatorlarida ham paydo bo'lishi mumkin. Misol uchun, NTT 50 ga yaqin shunday prefikslarga ega bo'lib, ularni o'z mijozlariga tarqatadi. Boshqa tomondan, bu ko'rsatkich yomon, chunki operator foydalansa, bunday prefikslarni filtrlash mumkin kichik prefikslarni filtrlash, barcha yo'nalishlarda. Shuning uchun, bu usul bunday hodisa natijasida trafik qayta yo'naltirilgan barcha operatorlarni topish uchun mos emas.

Yana bir yaxshi fikr, biz ko'rib chiqish edi POV. Ayniqsa, tegishli ROA ning maxLength qoidasini buzadigan marshrutlar uchun. Shunday qilib, biz ma'lum bir ASga ko'rinadigan Yaroqsiz holatga ega bo'lgan turli xil ASNlar sonini topishimiz mumkin edi. Biroq, "kichik" muammo bor. Bu raqamning o'rtacha (o'rtacha va rejim) (turli xil kelib chiqishi ASNlar soni) taxminan 150 ni tashkil qiladi va hatto kichik prefikslarni filtrlasak ham, u 70 dan yuqori bo'lib qoladi. Bu holat juda oddiy tushuntirishga ega: faqat bittasi bor. Haqiqiy dunyoda ROA buzilgan marshrut paydo bo'lishidan qat'i nazar, u barcha yo'nalishlarda tarqalishi uchun kirish nuqtalarida "yaroqsiz marshrutlarni tiklash" siyosatiga ega ROA filtrlaridan allaqachon foydalanadigan bir nechta operatorlar.

Oxirgi ikkita yondashuv bizning hodisamizni ko'rgan operatorlarni topishga imkon beradi (chunki u juda katta edi), lekin umuman olganda, ular qo'llanilmaydi. Yaxshi, lekin biz bosqinchini topa olamizmi? Ushbu AS_PATH manipulyatsiyasining umumiy xususiyatlari qanday? Bir nechta asosiy taxminlar mavjud:

  • Prefiks ilgari hech qaerda ko'rilmagan;
  • Origin ASN (eslatma: AS_PATH da birinchi ASN) amal qiladi;
  • AS_PATH dagi oxirgi ASN tajovuzkorning ASN sidir (agar uning qo‘shnisi barcha kiruvchi yo‘nalishlarda qo‘shnining ASN ni tekshirsa);
  • Hujum bitta provayderdan kelib chiqadi.

Agar barcha taxminlar to'g'ri bo'lsa, unda barcha noto'g'ri marshrutlar tajovuzkorning ASN-ni taqdim etadi (ASN kelib chiqishidan tashqari) va shuning uchun bu "tanqidiy" nuqtadir. Haqiqiy qaroqchilar orasida AS263444 ham bor edi, garchi boshqalar ham bor edi. Hatto biz voqea yo'nalishlarini ko'rib chiqishdan olib tashlaganimizda ham. Nega? Kritik nuqta hatto to'g'ri marshrutlar uchun ham muhim bo'lib qolishi mumkin. Bu mintaqadagi aloqaning yomonligi yoki bizning ko'rishimizdagi cheklovlar natijasi bo'lishi mumkin.

Natijada, tajovuzkorni aniqlashning bir yo'li mavjud, lekin faqat yuqoridagi barcha shartlar bajarilgan taqdirdagina va faqat ushlab turish monitoring chegaralaridan o'tish uchun etarlicha katta bo'lganda. Agar ushbu omillarning ba'zilari bajarilmasa, biz bunday tutilishdan aziyat chekkan prefikslarni aniqlay olamizmi? Ba'zi operatorlar uchun - ha.

Buzg'unchi aniqroq marshrutni yaratganda, bunday prefiks haqiqiy egasi tomonidan reklama qilinmaydi. Agar sizda uning barcha prefikslarining dinamik ro'yxati mavjud bo'lsa, unda taqqoslash va buzilgan aniqroq marshrutlarni topish mumkin bo'ladi. Biz ushbu prefikslar ro'yxatini BGP seanslarimiz yordamida to'playmiz, chunki bizga hozirda operatorga ko'rinadigan marshrutlarning to'liq ro'yxati emas, balki u dunyoga reklama qilmoqchi bo'lgan barcha prefikslar ro'yxati ham berilgan. Afsuski, hozirda oxirgi qismni to'g'ri bajarmagan bir necha o'nlab Radar foydalanuvchilari bor. Tez orada ularni xabardor qilamiz va bu muammoni hal qilishga harakat qilamiz. Boshqa har bir kishi hozirda bizning monitoring tizimimizga qo'shilishi mumkin.

Agar biz asl hodisaga qaytsak, tajovuzkor ham, tarqatish hududi ham muhim nuqtalarni qidirish orqali biz tomonidan aniqlandi. Ajablanarlisi shundaki, AS263444 o'zining barcha mijozlariga soxta marshrutlarni yubormadi. Garchi g'alati bir lahza bo'lsa ham.

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||

Bizning manzil maydonini ushlab qolishga urinishning so'nggi misoli

Bizning prefikslarimiz uchun aniqroqlari yaratilganda, maxsus yaratilgan AS_PATH ishlatilgan. Biroq, bu AS_PATH oldingi marshrutlarimizdan olinmagan. Bizda AS6762 bilan aloqa ham yo'q. Voqeadagi boshqa marshrutlarga nazar tashlaydigan bo'lsak, ularning ba'zilarida ilgari ishlatilgan haqiqiy AS_PATH bo'lgan, boshqalari esa haqiqiyga o'xshasa ham yo'q. AS_PATH-ni qo'shimcha ravishda o'zgartirish hech qanday amaliy ma'noga ega emas, chunki trafik baribir tajovuzkorga yo'naltiriladi, ammo "yomon" AS_PATH bo'lgan marshrutlar ASPA yoki boshqa har qanday tekshirish mexanizmi tomonidan filtrlanishi mumkin. Bu erda biz o'g'irlovchining motivatsiyasi haqida o'ylaymiz. Hozirda bu hodisa rejalashtirilgan hujum ekanligini tasdiqlash uchun yetarli ma'lumotga ega emasmiz. Shunga qaramay, bu mumkin. Keling, gipotetik bo'lsa-da, lekin potentsial darajada real vaziyatni tasavvur qilishga harakat qilaylik.

Mukammal hujum

Bizda nima bor? Aytaylik, siz mijozlaringiz uchun tranzit yo'nalishlarini uzatuvchi provaydersiz. Agar sizning mijozlaringiz bir nechta bo'lsa (ko'p xonadonli), u holda siz ularning trafikining faqat bir qismini olasiz. Ammo trafik qancha ko'p bo'lsa, daromadingiz shunchalik ko'p. Shunday qilib, agar siz xuddi shu marshrutlarning pastki tarmoq prefikslarini bir xil AS_PATH bilan reklama qilishni boshlasangiz, ularning trafigining qolgan qismini olasiz. Natijada, pulning qolgan qismi.

ROA bu yerda yordam beradimi? Ehtimol, ha, agar siz uni butunlay ishlatishni to'xtatishga qaror qilsangiz maksimal uzunlik. Bundan tashqari, kesishgan prefikslar bilan ROA yozuvlariga ega bo'lish juda istalmagan. Ba'zi operatorlar uchun bunday cheklovlar qabul qilinishi mumkin emas.

Boshqa marshrutlash xavfsizlik mexanizmlarini hisobga olsak, ASPA bu holatda ham yordam bermaydi (chunki u to'g'ri marshrutdan AS_PATH ishlatadi). BGPSec past qabul qilish stavkalari va pasaytirish hujumlarining qolgan imkoniyati tufayli hali ham optimal variant emas.

Shunday qilib, biz tajovuzkor uchun aniq foyda va xavfsizlik etishmasligimiz bor. Ajoyib aralash!

Nima qilishim kerak?

Aniq va eng keskin qadam joriy marshrutlash siyosatingizni ko'rib chiqishdir. Manzil maydonini reklama qilmoqchi bo'lgan eng kichik bo'laklarga (bir-biriga o'xshash bo'lmagan) ajrating. MaxLength parametridan foydalanmasdan faqat ular uchun ROA imzolang. Bunday holda, sizning joriy POV sizni bunday hujumdan qutqarishi mumkin. Biroq, yana, ba'zi operatorlar uchun bu yondashuv aniqroq marshrutlardan eksklyuziv foydalanish tufayli oqilona emas. ROA va marshrut ob'ektlarining hozirgi holati bilan bog'liq barcha muammolar bizning kelajakdagi materiallarimizdan birida tasvirlanadi.

Bundan tashqari, siz bunday tutilishlarni kuzatishga harakat qilishingiz mumkin. Buning uchun bizga prefikslaringiz haqida ishonchli ma'lumot kerak. Shunday qilib, agar siz bizning kollektorimiz bilan BGP seansini o'rnatsangiz va bizga Internetning ko'rinishi haqida ma'lumot bersangiz, biz boshqa hodisalar uchun imkoniyatlarni topa olamiz. Bizning monitoring tizimimizga hali ulanmaganlar uchun, boshlash uchun, faqat sizning prefikslaringiz bilan marshrutlar ro'yxati etarli bo'ladi. Agar biz bilan sessiyangiz bo'lsa, barcha marshrutlaringiz yuborilganligini tekshiring. Afsuski, buni esga olish kerak, chunki ba'zi operatorlar bir yoki ikkita prefiksni unutib qo'yishadi va shu bilan bizning qidiruv usullarimizga aralashadilar. Agar to'g'ri bajarilgan bo'lsa, biz sizning prefikslaringiz haqida ishonchli ma'lumotlarga ega bo'lamiz, bu esa kelajakda manzil maydoni uchun ushbu (va boshqa) trafikni ushlab turish turlarini avtomatik ravishda aniqlash va aniqlashga yordam beradi.

Agar siz real vaqt rejimida traffikingizning bunday to'xtatilishidan xabardor bo'lsangiz, unga o'zingiz qarshi turishga harakat qilishingiz mumkin. Birinchi yondashuv - bu aniqroq prefikslar bilan marshrutlarni o'zingiz reklama qilish. Ushbu prefikslarga yangi hujum bo'lsa, takrorlang.

Ikkinchi yondashuv - tajovuzkorni va u uchun muhim nuqta bo'lganlarni (yaxshi marshrutlar uchun) tajovuzkorga yo'llaringizdan kirishni to'xtatish orqali jazolash. Bu tajovuzkorning ASN-ni eski marshrutlaringizning AS_PATH-ga qo'shish orqali amalga oshirilishi mumkin va shuning uchun ularni BGP-dagi o'rnatilgan halqani aniqlash mexanizmidan foydalanib, bu ASdan qochishga majbur qilish mumkin. o'z manfaatingiz uchun.

Manba: www.habr.com

a Izoh qo'shish