Sagalana pisan goréng atawa tipe anyar interception lalulintas

13 Maret ka grup kerja anti nyiksa RIPE tawaran geus narima mertimbangkeun BGP ngabajak (hjjack) salaku palanggaran kawijakan RIPE. Upami proposalna ditampi, panyadia Internét anu diserang ku interception lalu lintas bakal ngagaduhan kasempetan pikeun ngirim pamundut khusus pikeun ngalaan panyerang. Lamun tim review ngumpulkeun cukup bukti ngarojong, LIR anu sumber intercept BGP bakal dianggap intruder sarta bisa dilucuti tina status LIR na. Aya ogé sababaraha argumen ngalawan ieu parobahan.

Dina publikasi ieu kami hoyong nunjukkeun conto serangan anu henteu ngan ukur panyerang nyata anu ditaroskeun, tapi ogé sadayana daptar awalan anu kapangaruhan. Leuwih ti éta, serangan kitu deui raises patarosan ngeunaan motif pikeun interceptions hareup jenis ieu lalulintas.

Sapanjang sababaraha taun katukang, ngan ukur konflik sapertos MOAS (Multiple Origin Autonomous System) anu katutupan ku pers salaku interceptions BGP. MOAS mangrupikeun pasualan khusus dimana dua sistem otonom anu béda ngiklankeun awalan anu bertentangan sareng ASN anu aya dina AS_PATH (ASN munggaran dina AS_PATH, anu salajengna disebut ASN asal). Najan kitu, urang bisa ngaranan sahenteuna 3 tipe tambahan interception lalu lintas, ngamungkinkeun panyerang pikeun ngamanipulasi atribut AS_PATH pikeun sababaraha tujuan, kalebet ngalangkungan pendekatan modern pikeun nyaring sareng ngawaskeun. Dipikawanoh tipe serangan Pilosova-Kapely - tipe panungtungan of interception misalna, tapi teu pisan pentingna. Ieu rada mungkin yen ieu persis jenis serangan urang geus katempo dina minggu kaliwat. Kajadian sapertos kitu ngagaduhan sipat anu kaharti sareng akibat anu cukup serius.

Anu milarian versi TL;DR tiasa ngagulung ka subjudul "Serangan Sempurna".

Latar tukang jaringan

(pikeun ngabantosan anjeun langkung ngartos prosés anu aya dina kajadian ieu)

Upami anjeun hoyong ngirim pakét sareng anjeun gaduh sababaraha awalan dina tabel routing anu ngandung alamat IP tujuan, anjeun bakal nganggo rute pikeun awalan anu panjangna pangpanjangna. Lamun aya sababaraha ruteu béda pikeun awalan sarua dina tabel routing, anjeun bakal milih hiji pangalusna (nurutkeun mékanisme Pilihan jalur pangalusna).

Nyaring sareng ngawaskeun pendekatan anu aya nyobian nganalisis rute sareng nyandak kaputusan ku nganalisa atribut AS_PATH. Router tiasa ngarobih atribut ieu kana nilai naon waé salami iklan. Kantun nambahkeun ASN nu boga di awal AS_PATH (salaku ASN asal) bisa jadi cukup pikeun bypass mékanisme mariksa asal ayeuna. Sumawona, upami aya rute ti ASN anu diserang ka anjeun, éta tiasa nimba sareng nganggo AS_PATH jalur ieu dina pariwara anjeun anu sanés. Sakur pamariksaan validasi AS_PATH-hijina pikeun pengumuman anu didamel anjeun antukna bakal lulus.

Aya kénéh sababaraha watesan patut mentioning. Anu mimiti, bisi panyaring awalan ku panyadia hulu, rute anjeun masih tiasa disaring (sanaos nganggo AS_PATH anu leres) upami awalan henteu kalebet kana kerucut klien anjeun anu dikonpigurasi di hulu. Kadua, AS_PATH anu valid tiasa janten teu sah upami rute anu diciptakeun diémbarkeun dina arah anu salah sareng, ku kituna, ngalanggar kabijakan rute. Panungtungan, jalur naon waé anu nganggo awalan anu ngalanggar panjang ROA tiasa dianggap teu sah.

Kajadian

Sababaraha minggu ka tukang kami nampi keluhan ti salah sahiji pangguna urang. Kami ningali rute kalayan awalan ASN sareng /25 na, sedengkeun pangguna ngaku yén anjeunna henteu ngiklankeunana.

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

Conto pengumuman awal April 2019

NTT dina jalur pikeun awalan /25 ngajadikeun eta utamana curiga. LG NTT henteu terang kana jalur ieu nalika kajadian éta. Janten enya, sababaraha operator nyiptakeun sakabéh AS_PATH pikeun awalan ieu! Mariksa dina routers séjén nembongkeun hiji ASN husus: AS263444. Saatos ningali rute anu sanés nganggo sistem otonom ieu, urang mendakan kaayaan ieu:

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

Coba tebak naon anu salah di dieu

Nembongan yen batur nyokot awalan ti ruteu, dibeulah jadi dua bagian, sarta diémbarkeun jalur kalawan AS_PATH sarua pikeun dua awalan éta.

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

Conto rute pikeun salah sahiji pasangan awalan pamisah

Sababaraha patarosan timbul sakaligus. Geus saha sabenerna diusahakeun tipe ieu interception dina prakna? Naha aya anu nyandak rute ieu? Prefiks naon anu kapangaruhan?

Ieu tempat kagagalan urang dimimitian sareng kuciwa anu sanés ku kaayaan kaséhatan Internét ayeuna.

Jalan kagagalan

hal kahiji kahiji. Kumaha urang bisa nangtukeun mana routers katampa sapertos dicegat ruteu na nu lalulintas bisa rerouted kiwari? Kami panginten urang mimitian ku awalan /25 sabab "saukur teu tiasa gaduh distribusi global." Sakumaha anjeun tiasa nebak, kami salah pisan. Métrik ieu tétéla ribut teuing sareng rute kalayan awalan sapertos kitu tiasa muncul bahkan ti operator Tier-1. Salaku conto, NTT ngagaduhan kira-kira 50 awalan sapertos kitu, anu disebarkeun ka klienna sorangan. Di sisi anu sanésna, métrik ieu goréng kusabab awalan sapertos kitu tiasa disaring upami operator nganggo nyaring awalan leutik, dina sagala arah. Ku alatan éta, métode ieu teu cocog pikeun manggihan sakabeh operator anu lalulintas dialihkeun salaku hasil tina kajadian kitu.

gagasan alus sejen kami pikir éta kasampak di POV. Utamana pikeun ruteu anu ngalanggar aturan maxLength tina ROA pakait. Ku cara ieu urang tiasa mendakan jumlah ASN asal anu béda sareng statusna Invalid anu katingali ku AS anu dipasihkeun. Tapi, aya masalah "leutik". Rata-rata (median sareng mode) jumlah ieu (jumlah ASN asal anu béda) sakitar 150 sareng, sanaos urang nyaring awalan leutik, éta tetep di luhur 70. Kaayaan ieu ngagaduhan katerangan anu saderhana: ngan ukur aya sababaraha operator anu geus ngagunakeun ROA- saringan kalawan kawijakan "ngareset ruteu teu valid" dina titik Éntri, ku kituna dimana wae jalur kalawan palanggaran ROA mucunghul di alam nyata, eta bisa propagate dina sagala arah.

Dua pendekatan panungtungan ngamungkinkeun urang pikeun manggihan operator anu nempo kajadian urang (saprak éta cukup badag), tapi sacara umum aranjeunna henteu lumaku. Oké, tapi urang bisa manggihan intruder? Naon fitur umum tina manipulasi AS_PATH ieu? Aya sababaraha asumsi dasar:

  • Awalan teu acan katingal di mana waé sateuacanna;
  • Asal ASN (pangeling-eling: ASN munggaran di AS_PATH) sah;
  • ASN terakhir di AS_PATH nyaéta ASN panyerang (upami tatanggana mariksa ASN tatangga dina sadaya rute anu asup);
  • Serangan asalna ti panyadia tunggal.

Upami sadayana asumsi leres, maka sadaya rute anu salah bakal nunjukkeun ASN panyerang (iwal ASN asal) sareng, janten, ieu mangrupikeun titik "kritis". Diantara pembajak leres éta AS263444, sanaos aya anu sanés. Malah lamun urang dipiceun ruteu kajadian tina tinimbangan. Naha? Titik kritis tiasa tetep kritis sanajan pikeun rute anu leres. Bisa jadi hasil tina konektipitas goréng di hiji wewengkon atawa watesan dina pisibilitas urang sorangan.

Hasilna, aya cara pikeun ngadeteksi panyerang, tapi ngan upami sadayana kaayaan di luhur kacumponan sareng ngan ukur nalika interception cukup ageung pikeun ngalangkungan ambang ngawaskeun. Upami sababaraha faktor ieu henteu kapendak, teras urang tiasa ngaidentipikasi awalan anu ngalaman interception sapertos kitu? Pikeun operator tangtu - enya.

Nalika panyerang nyiptakeun rute anu langkung spésifik, awalan sapertos kitu henteu diémbarkeun ku anu gaduh leres. Upami anjeun gaduh daptar dinamis sadaya awalan na, teras anjeun tiasa ngadamel perbandingan sareng mendakan rute anu langkung spésifik. Kami ngumpulkeun daptar awalan ieu nganggo sesi BGP kami, sabab kami henteu ngan ukur masihan daptar lengkep rute anu katingali ku operator ayeuna, tapi ogé daptar sadaya awalan anu hoyong diiklankeun ka dunya. Hanjakalna, ayeuna aya sababaraha belasan pangguna Radar anu henteu ngalengkepan bagian anu terakhir kalayan leres. Kami bakal ngabéjaan aranjeunna sakedap sareng nyobian ngabéréskeun masalah ieu. Sadayana tiasa gabung sareng sistem ngawaskeun kami ayeuna.

Upami urang uih deui ka kajadian aslina, panyerang sareng daérah distribusi dideteksi ku urang ku milarian titik kritis. Ahéng, AS263444 henteu ngirimkeun rute anu didamel ka sadaya klienna. Sanajan aya jurus muhrim.

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

Hiji conto panganyarna tina usaha intercept spasi alamat urang

Lamun leuwih husus dijieun pikeun awalan urang, AS_PATH dijieun husus dipaké. Sanajan kitu, AS_PATH ieu teu bisa geus dicokot tina salah sahiji ruteu saméméhna. Urang malah teu boga komunikasi jeung AS6762. Ningali rute anu sanés dina kajadian éta, sababaraha di antarana ngagaduhan AS_PATH nyata anu saacanna dianggo, sedengkeun anu sanésna henteu, sanaos sigana anu asli. Ngarobah AS_PATH Sajaba teu make akal pikiran praktis, saprak lalulintas bakal dialihkeun ka panyerang atoh, tapi ruteu kalawan "goréng" AS_PATH bisa disaring ku ASPA atawa mékanisme inspeksi séjén. Di dieu urang mikir ngeunaan motivasi pembajak. Kami ayeuna teu gaduh inpormasi anu cukup pikeun mastikeun yén kajadian ieu mangrupikeun serangan anu direncanakeun. Sanajan kitu, éta mungkin. Hayu urang coba ngabayangkeun, sanajan masih hypothetical, tapi berpotensi rada nyata, hiji situasi.

Serangan Sampurna

Naon anu urang gaduh? Anggap anjeun panyadia transit rute siaran pikeun klien anjeun. Upami klien anjeun gaduh sababaraha ayana (multihome), maka anjeun ngan ukur nampi bagian tina lalu lintasna. Tapi beuki lalulintas, beuki panghasilan Anjeun. Janten upami anjeun ngamimitian ngiklankeun awalan subnet tina rute anu sami sareng AS_PATH anu sami, anjeun bakal nampi sesa lalu lintasna. Hasilna, sesa duit.

Naha ROA bakal ngabantosan di dieu? Panginten enya, upami anjeun mutuskeun pikeun ngeureunkeun ngagunakeunana lengkep maxLength. Sajaba ti éta, kacida teu dihoyongkeun boga rékaman ROA kalawan intersecting awalan. Kanggo sababaraha operator, larangan sapertos kitu henteu tiasa ditampi.

Tempo mékanisme kaamanan routing séjén, ASPA moal mantuan dina hal ieu boh (sabab ngagunakeun AS_PATH ti jalur valid). BGPSec masih teu hiji pilihan optimal alatan ongkos nyoko low jeung kamungkinan serangan downgrade sésana.

Janten urang gaduh kauntungan anu jelas pikeun panyerang sareng kurangna kaamanan. campuran hébat!

Kamarana atuh?

Léngkah anu atra sareng paling drastis nyaéta marios kabijakan routing anjeun ayeuna. Pecahkeun rohangan alamat anjeun kana sakumpulan pangleutikna (henteu aya tumpang tindih) anu anjeun hoyong iklankeun. Asupkeun ROA pikeun aranjeunna wungkul, tanpa ngagunakeun parameter maxLength. Dina hal ieu, POV anjeun ayeuna tiasa nyalametkeun anjeun tina serangan sapertos kitu. Sanajan kitu, deui, pikeun sababaraha operator pendekatan ieu teu lumrah alatan pamakéan ekslusif tina ruteu leuwih husus. Sadaya masalah sareng kaayaan ROA ayeuna sareng objék rute bakal dijelaskeun dina salah sahiji bahan anu bakal datang.

Salaku tambahan, anjeun tiasa nyobian ngawas interceptions sapertos kitu. Jang ngalampahkeun ieu, kami peryogi inpormasi anu tiasa dipercaya ngeunaan awalan anjeun. Janten, upami anjeun ngadamel sési BGP sareng kolektor kami sareng masihan kami inpormasi ngeunaan pisibilitas Internét anjeun, kami tiasa mendakan ruang lingkup kajadian anu sanés. Pikeun anu henteu acan nyambung ka sistem ngawaskeun kami, mimitina, daptar rute ngan ukur nganggo awalan anjeun bakal cekap. Upami anjeun gaduh sési sareng kami, mangga parios yén sadaya rute anjeun parantos dikirim. Hanjakal, ieu patut remembering sabab sababaraha operator poho hiji atawa dua awalan sahingga ngaganggu métode pilarian urang. Upami dilakukeun leres, kami bakal gaduh data anu tiasa dipercaya ngeunaan awalan anjeun, anu bakal ngabantosan urang otomatis ngaidentipikasi sareng ngadeteksi ieu (sareng) jinis interception lalu lintas pikeun rohangan alamat anjeun.

Upami anjeun sadar kana interception sapertos kitu tina lalu lintas anjeun sacara real waktos, anjeun tiasa nyobian counteract sorangan. Pendekatan kahiji nyaéta ngiklankeun rute nganggo awalan anu langkung khusus ieu nyalira. Dina kasus serangan anyar dina awalan ieu, ulang.

Pendekatan kadua nyaéta pikeun ngahukum panyerang sareng anu anjeunna mangrupikeun titik kritis (pikeun rute anu saé) ku cara motong aksés rute anjeun ka panyerang. Ieu tiasa dilakukeun ku cara nambihan ASN panyerang kana AS_PATH tina rute lami anjeun sahingga maksa aranjeunna pikeun ngahindarkeun éta AS nganggo mékanisme deteksi loop anu diwangun dina BGP pikeun kapentingan anjeun sorangan.

sumber: www.habr.com

Tambahkeun komentar