Gjithçka është shumë keq ose një formë e re e interceptimit të trafikut

Më 13 mars, në grupin punues të RIPE për të luftuar abuzimet u paraqit propozimi për të konsideruar BGP-interceptimin (hjjack) si një shkelje të politikës së RIPE. Në rast se propozohet, ofruesi i internetit, i sulmuar nga interceptimi i trafikut, do të kishte mundësinë të dërgonte një kërkesë speciale për të zbuluar keqbërësin. Nëse grupi i ekspertëve mbledh mjaft prova konfirmuese, atëherë një LIR e tillë, që është burimi i BGP-interceptimit, do të konsiderohej se kishte shkelur rregullat dhe mund të humbiste statusin e saj LIR. Kishte gjithashtu disa argumente kundër një ndryshimi të tillë.

Në këtë publikim, dëshirojmë të tregojmë një shembull sulmi, kur jo vetëm që ishte nën dyshim keqbërësi real, por gjithashtu lista e plotë e prefikseve të dëmtuara. Më shumë se kaq, një sulm i tillë rikthen në vëmendje pyetje rreth motiveve të interceptimeve të ardhshme të trafikut të këtij tipi.

KĂ«to dy vitet e fundit, mediat kanĂ« raportuar si BGP hijackings vetĂ«m konflikte tĂ« tipit MOAS (Multiple Origin Autonomous System). MOAS Ă«shtĂ« njĂ« rast specifik ku dy sisteme autonome tĂ« ndryshme shpallin prefikse nĂ« konflikt me numrat pĂ«rkatĂ«s ASN nĂ« AS_PATH (ASN e parĂ« nĂ« AS_PATH, e mĂ«passhme — origin ASN). MegjithatĂ«, mund tĂ« pĂ«rmendim tĂ« paktĂ«n 3 lloje tĂ« tjera tĂ« interceptimit tĂ« trafikut, qĂ« lejojnĂ« sulmuesin tĂ« manipulojĂ« atributin AS_PATH me qĂ«llime tĂ« ndryshme, pĂ«rfshirĂ« edhe pĂ«r tĂ« anashkaluar qasjet moderne tĂ« filtrimit dhe monitorimit. NjĂ« lloj i njohur sulmi Pilozova-Kapela — Ă«shtĂ« lloji mĂ« i fundit i kĂ«tij interceptimi, por jo mĂ« pak i rĂ«ndĂ«sishĂ«m. ËshtĂ« mjaft e mundshme qĂ« kĂ«tĂ« sulm ne po e kemi parĂ« gjatĂ« javĂ«ve tĂ« fundit. Ky ngjarje ka njĂ« karakter tĂ« shpjegueshĂ«m dhe pasojĂ« mjaft serioze.

Ata qĂ« kĂ«rkojnĂ« njĂ« version TL;DR mund tĂ« rrotullohen te nĂ«nkapitulli “Sulmi ideal”.

Mbackgroundi rrjetor

(për ta kuptuar më mirë proceset e angazhuara në këtë incident)

Nëse dëshironi të dërgoni një paketë dhe keni disa prefikse në tabelën e itinerareve që përmbajnë IP-në e destinacionit, do të përdorni itinerarin për prefiksin me gjatësinë maksimale. Nëse në tabelën e itinerareve ekzistojnë disa rrugë të ndryshme për një prefiks, do të zgjidhni atë më të mirën (sipas mekanizmit të zgjedhjes së rrugës më të mirë).

Qasjet ekzistuese pĂ«r filtrimin dhe monitorimin pĂ«rpiqen tĂ« analizojnĂ« itineraret dhe tĂ« marrin vendime duke analizuar atributin AS_PATH. Routteri mund ta ndryshojĂ« kĂ«tĂ« atribut nĂ« çdo vlerĂ« gjatĂ« njoftimit. Shtimi i thjeshtĂ« i ASN-sĂ« sĂ« pronarit nĂ« fillim tĂ« AS_PATH (si ASN origjinĂ«) mund tĂ« jetĂ« mjaftueshĂ«m pĂ«r tĂ« anashkaluar mekanizmat aktualĂ« tĂ« verifikimit tĂ« burimit. MĂ« shumĂ« se kaq, nĂ«se ekziston njĂ« rrugĂ« nga ASN-i nĂ« sulm te ju, krijohet mundĂ«sia pĂ«r tĂ« nxjerrĂ« dhe pĂ«rdorur AS_PATH-in e kĂ«saj rruge nĂ« njoftimet tua tĂ« tjera. Çdo verifikim i besueshmĂ«risĂ« vetĂ«m tĂ« AS_PATH pĂ«r njoftimet e tua tĂ« krijuara nĂ« fund do tĂ« kalojĂ«.

EkzistojnĂ« disa kufizime tĂ« rĂ«ndĂ«sishme qĂ« meritojnĂ« pĂ«rmendje. SĂ« pari, nĂ« rastin e filtrimit tĂ« prefikseve nga ofruesi mĂ« tĂ« lartĂ«, rrethimi juaj mund tĂ« filtrohet pĂ«rsĂ«ri (pavarĂ«sisht nga AS_PATH i saktĂ«), nĂ«se prefiksi nuk i pĂ«rket konusit tuaj tĂ« klientit tĂ« vendosur te upstrimi. E dyta — njĂ« AS_PATH valide mund tĂ« bĂ«het jo valide, nĂ«se rrethimi i krijuar pĂ«rcillet nĂ« drejtim tĂ« papĂ«rshtatshĂ«m, duke shkelur kĂ«shtu politikĂ«n e rrethimit. Dhe e fundit — çdo rrethim me njĂ« prefiks qĂ« shkel gjatĂ«si ROA mund tĂ« konsiderohet i pavlefshĂ«m.

Incident

Disa javë më parë morëm një ankesë nga një nga përdoruesit. Ne pamë rrethime me ASN origjinal dhe prefikse /25, ndërsa përdoruesi pretendonte se ato nuk i kishte njoftuar.

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

Shembuj të njoftimeve në fillim të prillit 2019

NTT në rrugë për prefiksin /25 e bën atë veçanërisht të dyshimtë. Gjatë incidentit, LG NTT nuk dinte asgjë për këtë rrugë. Pra, po, ndonjë ofrues po krijon një AS_PATH të tërë për këto prefikse! Kontrollimi në rrugë të tjera lejon të identifikohet një ASN e veçantë: AS263444. Duke parë rrugët e tjera me këtë sistem autonom, e gjetëm situatën e mëposhtme:

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

Provoni të merrni me mend se çfarë nuk shkon këtu

Duket se dikush ka marrë një prefiks nga rruga, e ka ndarë atë në dy pjesë dhe ka shpallur rrugën me të njëjtin AS_PATH për këto dy prefikse.

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

Shembuj rrugësh për një nga çiftet e prefikseve të ndara

Shfaqen disa pyetje. A ka ndonjëherë dikush provuar në praktikë këtë lloj interceptimi? A ka dikush pranuar këto rrugë? Cilat prefikse janë prekur?

Këtu fillon seria jonë e dështimeve dhe një raund tjetër zhgënjimi në gjendjen aktuale të shëndetit të Internetit.

Rruga e dështimeve

PĂ«r çdo gjĂ« sipas rendit. Si mund tĂ« pĂ«rcaktojmĂ« se cilĂ«t rrugĂ«zues kanĂ« pranuar rrugĂ«t e kapura dhe cilat trafik mund tĂ« ridrejtohen qĂ« sot? Ne menduam tĂ« fillojmĂ« me prefiksat /25, sepse ato "thjesht nuk mund tĂ« kenĂ« shpĂ«rndarje globale". Siç mund ta hamendĂ«soni — ne gaboheshim shumĂ«. Kjo metrikĂ« doli tĂ« ishte tepĂ«r e zhurmshme dhe rrugĂ«t me kĂ«to prefikse mund tĂ« shfaqen madje nga operatorĂ«t Tier-1. PĂ«r shembull, NTT ka rreth 50 kĂ«to prefikse qĂ« ai shpĂ«rndan te klientĂ«t e vet. Nga ana tjetĂ«r, kjo metrikĂ« Ă«shtĂ« e dobĂ«t, sepse kĂ«to prefikse mund tĂ« filtroren nĂ« rast se operatori aplikon filtrimin e prefikseve tĂ« vogla, nĂ« tĂ« gjitha drejtimet. Prandaj, ky metodĂ« nuk Ă«shtĂ« e pĂ«rshtatshme pĂ«r tĂ« gjetur tĂ« gjithĂ« operatorĂ«t, tĂ« cilĂ«t trafik janĂ« ridrejtuar si pasojĂ« e njĂ« incidenti tĂ« tillĂ«.

Një ide tjetër e mirë na dukej të shikonim në POV. Sidomos për itineraret me shpërbërje të rregullit maxLength të përkatshëm të ROA. Kështu, mund të gjejmë numrin e origjinave të ndryshme ASN me statusin Invalid, të cilat ishin të dukshme nga AS-i përkatës. Megjithatë, ka një "problem të vogël". Vlera mesatare (mediana dhe moda) e këtij numri (numrit të ndryshëm ASN të origjinës) është rreth 150 dhe, edhe nëse filtrojmë prefixet e vogla, ajo do të mbetet mbi 70. Kjo situatë ka një shpjegim të thjeshtë: ka vetëm disa operatorë që tashmë aplikojnë filtra ROA me politikën "të largojnë itineraret Invalid" në pikët hyrëse, prandaj, kudo që të shfaqet një itinerar me shkelje ROA në botën reale, ai mund të përhapet në të gjitha drejtat.

Qasjet e fundit lejojnë të gjejmë operatorët që panë incidentin tonë (pasi ishte mjaft i madh), por në përgjithësi ato janë të paperdorura. Mirë, por a mund të gjejmë sulmuesin? Cilat janë karakteristikat e përgjithshme të tillë manipulimi AS_PATH? Ka disa supozime bazë:

  • Prefiksi nuk ishte parĂ« mĂ« parĂ«;
  • Origjina ASN (kujtesĂ«: ASN-i i parĂ« nĂ« AS_PATH) Ă«shtĂ« valide;
  • ASN i fundit nĂ« AS_PATH Ă«shtĂ« ASN i sulmuesit (nĂ« rast se fqinj i tij kontrollon ASN-nĂ« e fqinjit nĂ« tĂ« gjitha rrugĂ«t hyrĂ«se);
  • Sulmi vjen nga njĂ« ofrues.

Nëse të gjitha supozimet janë të sakta, ASN-ja e sulmuesit (përveç ASN-së origjinare) do të paraqitet në të gjitha rrugët e gabuara dhe kështu kjo është një "pikë kritike". Midis grabitësve të vërtetë ishte edhe AS263444, megjithëse kishte dhe të tjerë. Edhe kur ne përjashtuam rrugët e incidentit nga shqyrtimi. Pse? Pika kritike mund të mbetet kritike edhe për rrugët e sakta. Ajo mund të jetë si rezultat i lidhshmërisë së dobët në ndonjë rajon, ose e kufizimeve të bindshmërisë sonë.

Si rezultat: ka njĂ« mĂ«nyrĂ« pĂ«r tĂ« zbuluar sulmuesin, por vetĂ«m nĂ«se pĂ«rmbushen tĂ« gjitha kushtet e pĂ«rmendura mĂ« lart dhe vetĂ«m kur kapja Ă«shtĂ« mjaft e madhe pĂ«r tĂ« kaluar kufijtĂ« e monitorimit. NĂ«se disa nga kĂ«to faktorĂ« nuk respektohen, a mund tĂ« identifikojmĂ« prefikset qĂ« janĂ« dĂ«mtuar nga njĂ« kapje tĂ« tillĂ«? PĂ«r operatorĂ« tĂ« caktuar — po.

Kur një sulmues krijon një rrugë më specifike, ky prefiks nuk shpallet nga pronari i vërtetë. Në rast se keni një listë dinamike të të gjithë prefikseve të tij, atëherë krijohet mundësia për të bërë krahasimin dhe për të gjetur rrugët e deformuara më specifike. Ne e mbledhim këtë listë prefikse përmes seancave tona BGP, pasi na transmetohet jo vetëm lista e plotë e rrugëve që operatori po sheh tani, por edhe lista e të gjithë prefikseve që ai dëshiron të shpallë në botë. Fatkeqësisht, aktualisht ka disa dhjetëra përdorues Radar, që nuk e kryejnë këtë pjesë në mënyrë të saktë. Në kohët në vijim do t'i njoftojmë ata dhe do të përpiqemi të zgjidhim këtë problem. Të tjerët mund të bashkohen me sistemin tonë të monitorimit tani.

NĂ«se kthehemi te incidenti fillestar, si sulmuesi, ashtu edhe zona e shpĂ«rndarjes u zbuluan nga ne pĂ«rmes kĂ«rkimit tĂ« pikave kritike. ËshtĂ« e çuditshme, por AS263444 shpĂ«rndante rrugĂ« tĂ« falsifikuara vetĂ«m pĂ«r disa nga klientĂ«t e tij. MegjithatĂ«, ka njĂ« çështje akoma mĂ« tĂ« çuditshme.

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

Një shembull i fundit i përpjekjes për të kapur hapësirën tonë adresuese

Kur u krijuan more specific për prefixet tona, u përdor një AS_PATH i krijuar veçmas. Megjithatë, ky AS_PATH nuk mund të merrej nga asnjë nga rrugët tona të mëparshme. Ne madje nuk kemi lidhje me AS6762. Shikojmë në rrugë të tjera në incident: disa prej tyre kishin një AS_PATH të vërtetë, që ishte përdorur më parë, dhe disa të tjera - jo, edhe nëse dukeshin si të vërtetë. Ndryshimi i mëtejshëm i AS_PATH nuk ka asnjë kuptim praktik, pasi në çdo rast trafiku do të ridrejtohej te sulmuesi, por rrugët me "AS_PATH të errët" mund të filtrohen nga ASPA ose ndonjë mekanizëm tjetër kontrolli. Këtu po mendojmë për motivimin e grabitësit. Tani na mungojnë të dhëna për të pretenduar se ky incident ishte një sulm i planifikuar. Sidoqoftë - është e mundur. Le të provojmë të imagjinojmë një situatë, edhe pse hipotezike, por potencialisht shumë reale.

Sulmi ideal

ÇfarĂ« kemi? Supozoni se jeni njĂ« ofrues kalimi, qĂ« transmeton rrugĂ«t pĂ«r klientĂ«t tuaj. NĂ«se klientĂ«t tuaj kanĂ« njĂ« prani tĂ« shumtĂ« (multihome), atĂ«herĂ« do tĂ« merrni vetĂ«m njĂ« pjesĂ« tĂ« trafikut tĂ« tyre. Por sa mĂ« shumĂ« trafik — aq mĂ« shumĂ« tĂ« ardhura. Prandaj, nĂ«se filloni tĂ« njoftoni prefiksat e nĂ«nrrjetĂ«ve tĂ« kĂ«tyre rrugĂ«ve tĂ« njĂ«jtĂ« me AS_PATH-in e njĂ«jtĂ«, do tĂ« merrni pjesĂ«n tjetĂ«r tĂ« trafikut tĂ« tyre. Si pasojĂ«, do tĂ« keni pjesĂ«n tjetĂ«r tĂ« parave.

A do t'i ndihmojë këtu ROA? Ndoshta, po, nëse vendosni të braktisni plotësisht përdorimin maxLength. Për më tepër, është ekstremisht e papërshtatshme të keni regjistrime ROA me prefiks të mbivendosur. Për disa operatorë, këto kufizime janë të papranueshme.

Duke shqyrtuar mekanizmat e tjerë të sigurimit të rrugëtimit, në këtë rast ASPA gjithashtu nuk do ndihmojë (sepse përdoret AS_PATH nga ruta e lejuar). BGPSec është ende një mundësi e papërshtatshme për shkak të shkallës së ulët të pranimit dhe mundësisë për sulme downgrade.

Pra, kemi një përfitim të qartë për sulmuesin dhe mungesë të sigurisë. Një kombim i shkëlqyer!

Cila është tregu që të ndihmojë?

Hapi dhe hapi më radikal është rishikimi i politikës tuaj aktuale të ruteve. Ndani hapësirën tuaj adresare në copëza sa më të vogla (pa mbivendosje) që dëshiron të shpallni. Nënshkruani ROA vetëm për to, pa përdorur parametrin maxLength. Në këtë rast, POV aktual mund t'ju shpëtojë nga një sulm të tillë. Megjithatë, përsëri, për disa operatore një qasje e tillë nuk është e arsyeshme për shkak të përdorimit të përjashtuar të ruteve më specifike. Të gjitha problemet e gjendjes aktuale të ROA dhe objekteve të rutes do të përshkruhen në një nga materialet tona të ardhshme.

Përveç kësaj, mund të mundohemi të monitorojmë interceptime të ngjashme. Për këtë, na nevojitet informacion i saktë rreth prefikseve tuaja. kështu që, nëse vendosni një sesion BGP me kolektorin tonë dhe na jepni informacion rreth dukshmërisë suaj në Internet, ne mund të gjejmë fushën e shpërndarjes dhe për incidente të tjera. Për ata që nuk janë ende të lidhur me sistemin tonë të monitorimit, fillimisht na mjafton një listë rrugësh vetëm për prefiksin tuaj. Nëse keni vendosur një sesion me ne, ju lutemi kontrolloni që të gjitha rrugët tuaja të jenë dërguar. Fatkeqësisht, është e nevojshme të kujtohet këtë, pasi disa operatorë harrojnë një ose dy prefikse dhe kështu krijojnë pengesa për metodologjitë tona të kërkimit. Nëse bëhet gjithçka siç duhet, do të kemi të dhëna të besueshme për prefiksin tuaj, që në të ardhmen do të ndihmojnë në identifikimin dhe detektimin automatik të këtij (dhe llojeve të tjera) të interceptimeve të trafik për hapësirën tuaj adresë.

NĂ«se nĂ« kohĂ« reale keni mĂ«suar pĂ«r njĂ« interceptim tĂ« tillĂ« tĂ« trafikut tuaj, mund tĂ« pĂ«rpiqeni tĂ« kundĂ«rshtoni vetĂ«. Qasja e parĂ« — tĂ« njoftoni rrugĂ«t me kĂ«to more specific prefikse vetĂ«. NĂ« rast tĂ« njĂ« sulmi tĂ« ri ndaj kĂ«tyre prefikseve — pĂ«rsĂ«ritni.

Qasja e dytĂ« — tĂ« ndĂ«shkoni sulmuesin dhe ata pĂ«r tĂ« cilĂ«t ai Ă«shtĂ« njĂ« pikĂ« kritike (pĂ«r rrugĂ« tĂ« mira), duke i prerĂ« aksesin e rrugĂ«ve tuaja te sulmuesi. Kjo mund tĂ« bĂ«het duke shtuar ASN e sulmuesit nĂ« AS_PATH e rrugĂ«ve tuaja tĂ« vjetra dhe kĂ«shtu t'i bĂ«ni ata tĂ« shmangin kĂ«tĂ« AS, duke pĂ«rdorur mekanizmin e integruar tĂ« zb discovery tĂ« cikleve nĂ« BGP. pĂ«r mirĂ«qenien tuaj.

Burimi: habr.com

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster