Napad na Border Gateway Protocol

Matej Kovačič

5. sep 2008 ob 11:04:21

Border Gateway Protocol (BGP) je temeljni usmerjevalni protokol interneta, s pomočjo katerega usmerjevalniki pošiljajo podatkovne pakete od enega IP naslova do drugega. Konec avgusta pa sta Anton "Tony" Kapela ter Alex Pilosov na konferenci DefCon pokazala, kako je mogoče spreminjati pot podatkovnih paketov ter tako neopazno prestrezati internetni promet iz kjerkoli na svetu.

Tehnika seveda ni uporabna za običajne uporabnike interneta, saj je potrebno imeti povezavo na eno izmed internetnih hrbtenic ter BGP usmerjevalnik (ki si ga lahko tudi sami naredite), vendar pa lahko tehniko povsem neopazno izvaja katerakoli vlada ali velika korporacija.

Za kaj gre?

Raziskovalca sta odkrila, da ima BGP protokol že v sami zasnovi nekatere resne pomankljivosti. Glavna težava je v tem, da v BGP protokol ni vgrajenih ustreznih mehanizmov zaupanja. BGP protokol namreč deluje tako, da ko npr. uporabnik v svoj brskalnik vnese naslov spletne strani (npr. www.youtube.com), DNS brskalniku sporoči IP naslov tega strežnika, zahtevek za ogled te spletne strani pa je nato poslan na ta IP naslov. Usmerjevalnik uporabnikovega ponudnika dostopa do interneta nato v posebni BGP tabeli preveri najboljšo povezavo do ciljnega IP naslova ter nato izbere najhitrejšo pot do tega ciljnega IP naslova.

BGP tabela pa je sestavljena iz tim. "obvestil", ki jih pošljejo ponudniki dostopa do interneta in druga omrežja (tim. Autonomni Sistemi ali AS-i), ki sporočajo nabor IP naslovov na katere preusmerjajo podatkovni promet.

Problem nastopi, ko nek BGP usmerjevalnik sebe predstavi kot najhitrejšo pot do ciljnega IP naslova. Posledica tega je, da se bo ves promet namenjen temu IP naslovu preusmeril preko tega usmerjevalnika.

Kapela in Pilosov sta tudi odkrila kako tako prestrežen promet nato neopazno preusmerjati do pravega ciljnega naslova (zanimivo je predvsem skrivanje napada s pomočjo tim. TTL adjustment-a).

Zanimivo pa je, da Kapela in Pilosov nikakor nista prva raziskovalca, ki sta opozorila na ta problem. Član hekerske skupine L0pht Peiter "Mudge" Zatko je podoben napad s katerim bi bilo mogoče povsem sesuti internet v 30 minutah, predstavil v ameriškem Kongresu 18. maja 1998. Za Wired je tudi izjavil, da so tehniko podrobno predstavili tudi ameriškim tajnim službam. Podobno demonstracijo so predstavnikom ameriškega Ministrstva za domovinsko varnosti in Ministrstva za obrambo pred nekaj leti predstavili v podjetju BBN Technologies.

Podobno tehniko so v članku A Study of Prefix Hijacking and Interception in the Internet leta 2007 opisali tudi Hitesh Ballani, Xinyang Zhang ter Paul Francis iz Cornell University, Steve Bellovin iz Columbia University pa je o tem problemu pisal že leta 1989 (!), leta 1999 pa sta Steve Bellovin in Steve Kent v članku opozorila, da sta problem BGP usmerjanja in DNS protokolov dve največji grožnji internetu. Kljub opozorilom, se napaka ni odpravila.

Kapela in Pilosov sta v svoji predstavitvi predlagala tim. Secure BGP (SBGP), ki bi zahteval, da bodo vsi BGP usmerjevalniki vsako prej omenjeno obvestilo digitalno podpisali, hkrati pa bodo vsi usmerjevalniki tudi imeli ustrezne digitalne certifikate, s katerimi se bo zagotavljala njihova prava identiteta.

Za tehniko zlorabe (pravzaprav ne gre za zlorabo, pač pa za normalno delovanje BGP protokola) so dolgo časa menili, da je zgolj teoretična. Vendar pa se je v začetku leta pokazalo, da ima lahko resne posledice tudi v praksi. 24. februarja letos je namreč pakistansko sodišče zaradi objave spornega posnetka prepovedalo dostop do YouTubea, pakistanski ponudniki dostopa do interneta pa so prepoved implementirali s pomočjo BGP usmerjanja. Posledica je bila, da se je večina celotnega svetovnega internetnega prometa preusmerila na pakistanski strežnik, ki je obiskovalce obveščal, da je dostop do YouTubea prepovedan.

Morda pa bo to dovoljšen razlog za investicijo v varnost BGP protokola?