You are here: TUTWiki>Tietoturva/Tutkielmat>ManintheBrowser (revision 2)

”Man-in-the-Browser”-hyökkäys (MitB)

Johdanto

Man-in-the-Browser eli suomennettuna "mies selaimessa" on eräs Man-in-the-Middle (MitM) hyökkäyksen variaatio, jossa Internet selaimeen asentuu troijan-hevonen, joka pystyy muokkaamaan sivujen ulkomuotoa. Erityisen uhan MitB-hyökkäyksestä tekee se, että se toimii käyttäjän ja selaimen välissä, jolloin suojamekanismit kuten SSL eivät toimi sitä vastaan. Tässä raportissa selvitämme tavanomaisimpia tapoja toteuttaa MitB-hyökkäys ja kartoitetamme vaihtoehtoja siltä suojautumiseen.

Hieman taustaa

Man-in-the-Middle-hyökkäys tapahtuu nimensä mukaisesti kahden kohteen välissä esittäytyen molemmille kohteille olevansa toinen osapuoli ja antaen molempien käsittää yhteyden olevan kunnossa, mutta muokkaakin viestien sisältöä molempiin suuntiin. MitM toimii vain jos hyökkäyksen toteuttaja saa molemmat kohteet vakuuttuneiksi siitä, että on toinen osapuoli. MitM hyökkäyksen mahdolliset uhat ovat selviä ja sen torjuntaankin on useissa turvaprotokollissa varauduttu. Tässä raportissa keskitymme MitM:n erikoistuneeseen muotoon MitB:hen, joka toimii käyttäjän ja selaimen välissä kiertäen suojauksia ja luoden uusia uhkia.

MitB-hyökkäyksen uhka esiteltiin ensikertaa Augusto Paes de Barrosin portugalinkielisessä esitelmässä[1] vuonna 2005. Vuonna 2007 Philipp Gühring nimesi hyökkäyksen MitB:ksi asiantuntijaraportissaan[2] (engl. White Paper) Concepts against Man-in-the-Browser Attacks, jossa hän käy läpi hyökkäyksestä aiheutuvia ongelmia, metodeja sen toteutukseen, riskianalyysiä, sekä mahdollisia ratkaisuja hyökkäyksen estämiseksi. MitB-hyökkäyksestä on olemassa myös yksinkertaisempi versio, joka on nimetty Boy-in-the-Browser-hyökkäykseksi[3], mutta BitB:hen emme tässä raportissa sen enempää paneudu.

Hyökkäyksen toiminta

MitB on hyökkäys, jossa haittaohjelma pääsee käyttäjän ja selainyhteyksien väliin ja pystyy tarkkailemaan ja muokkaamaan käyttäjälle näytettyä dataa, huolimatta käytetyistä salauksista.

Kohteet ja motivaatio[4]

Yksittäisiä käyttäjiltä ja organisaatioilta varastetaan vuosittain miljoonia euroja. Otollinen ryöstökohde on verkkopankkitoiminta ja varsinkin suurien yrityksien pankkiasiointi, jossa on mahdollisuus päästä käsiksi suuriin rahasummiin. Siinä missä pankkien tietoturva mekanismit ja käytännöt paranevat, kehittävät myös verkkorikolliset uusia tekniikoita niiden kiertämiseen. Näiden tekniikoiden kehittyessä ja levitessä saattaa olla, että hyökkäykset tavallistenkin käyttäjien pankki-istuntoihin yleistyvät.

Metodit

MitB-hyökkäyksen kohteena voivat olla selain, sähköpostiohjelma ja jopa autentikointijärjestelmät. Hyökkäyksen perustana on kohteen koneelle asentuva troijan-hevonen (Zeus, SilentBanker, ym.), joka asentuu esimerkiksi selaimen lisäosana (Extension / Browser Helper Object), Active X komponenttina tai UserScriptinä. Myös ohjelmointirajapinnan kaappaus (API-Hooking) ja koko koneen virtualisointi ovat mahdollisia hyökkäys metodeja, mutta niitä on hankala toteuttaa.

MitB-hyökkäys voi edetä esimerkiksi seuraavalla tavalla[2][4]:
  1. Troijalainen saastuttaa käyttäjän koneen ja asentaa selaimeen haittaohjelman (lisäosan), tämä yleensä tapahtuu huijaamalla käyttäjä tekemään jotain epäviisasta kuten saadaan käyttäjä käymään sivulla jossa troijalainen esitetään esimerkiksi videon pyörittämiseen tarvittavaksi koodekiksi.

  2. Seuraavan kerran selaimen käynnistyessä haittaohjelma aktivoidaan ja se aloittaa seuraamaan käyttäjän jokaista sivunlatausta, kuitenkaan muokkaamatta mitään. Kuitenkin jokaisen latauksen yhteydessä tarkastetaan onko ladattava sivu yksi hyökkäyksen kohteiksi valituista sivuista.

  3. Kun käyttäjä kirjautuu (haittaohjelma ei edes välttämättä ota näitä tietoja talteen, sillä se ei niitä tarvitse onnistuneeseen hyökkäykseen) jollekin kohteena olevalle sivustolle, kuten verkkopankkiin. Tällöin haittaohjelma aktivoituu.

  4. Kun käyttäjä kirjaa uuden maksun ja painaa hyväksy nappia, jolloin haittaohjelma kaappaa käyttäjän syöttämät tiedot ja muokkaa tilalle uuden tilinumeron ja summan ja lähettää tämän pankille.

  5. Tähän pankin palvelin lähettää vahvistuksen, jossa on haittaohjelman asettamat uudet tiedot, jotka haittaohjelma muokkaa näyttämään takaisin alkuperäisiltä ja näyttää ne käyttäjälle.

  6. Käyttäjä katsoo, että kaikki on kunnossa ja vahvistaa siirron jollain metodilla. Jonka jälkeen pankki palvelin saa vahvistuksen siirrosta ja rahat ovat ryöstetty, kummankaan osapuolen sitä tajuamatta.

Suojautuminen

Markkinoilla on useita ratkaisuja MitB-hyökkäykseltä suojautumiseen, joista vain muutama on käytännöllinen ja toimiva. On vielä useampia suojautumiskeinoja, jotka eivät toimi MitB-hyökkäystä vastaan. Tietoturva yritys Entrust ja Philipp Gühring lajittelevat useita toimivia ja ei toimivia keinoja hyökkäyksen torjuntaan. Tässä luettelemme niistä osan:
Eivät toimi:
  • Käyttäjän tunnistaminen (haasteet, biometriikka)

  • Kertakäyttökoodit

  • Älykortit

  • Yhteyden salaukset

    • Mikään yllä olevista ei toimi, koska haittaohjelma voi odottaa vaiheiden ohi, joidenka jälkeen vasta aloittaa toimintansa.

Saattavat toimia:
  • Antivirus ohjelmistot

    • Haittaohjelmat kehittyvät jatkuvaa vauhtia, eivätkä virutorjuntaohjelmistot välttämättä pysy uusiempien muutosten tai hyvin kohdistettujen hyökkäysten perässä.

Toimivat, mutta ovat epäkäytännöllisiä:
  • Erillinen tietokone pelkästään pankkiasiointiin.

    • Vaatii kuria siihen miten konetta käytetään, eli konetta ei siis saisi käyttää mihinkään muuhun. Vaatii myös paljon aikaa ja haaskaisi paljon resursseja. (Huom. Voisi olla käytännöllinen uusien virtualisoivien käyttöjärjestelmien, kuten Qubes OS, yhteydessä.)

  • ”Kovetettu” selain, esimerkiksi jollain ei-muokattavalla medialla, kuten muistitikulla, sijaitseva selain, jolloin siihen ei voi asentaa lisäosia.

    • Haittaohjelmalla tulee olemaan vaikeuksia hyökätä selaimeen, mutta käytössä on sama kone, jolloin mahdollisuus säilyy. Lisäksi useissa organisaatioissa on estetty muistitikuilta ohjelmien ajaminen, jolloin metodia ei voi käyttää.

  • Ulkoiset varmenteen laskevat laitteet, joille käyttäjä syöttäisi transaktiotiedot.

    • Kyseiseen tarkoitukseen pitäisi tehdä sekä ohjelma, että omistaa laite. Käyttäjän pitäisi näpytellä laitteeseen, jonka näppäimistö ja käytettävyys eivät välttämättä ole kovin hyviä, transaktion tiedot.

  • Käyttäjän fyysisesti suorittama helpohko tietojen kryptaus.

    • Vaatii kuria, kovin moni käyttäjä ei varmastikkaan jaksaisi tehdä kyseistä operaatiota tai se olisi liian työlästä/vaikeaa. Lisäksi se saattaisi olla liian helppoa MitB haittaohjelmalle purkaa.

Toimivat:
  • Toinen varmistuskanava, eli käyttäjältä varmistetaan jotain toista kanavaa pitkin transaktion yksityiskohdat. Esimerkiksi tekstiviesti, jossa lukee siirron tiedot.

    • Helppokäyttöinen ja käyttäjä saa tiedon näkyviin itselleen, jolloin jotain hämärää huomatessaan voi keskeyttää siirron. On epätodennäköistä, että hyökkääjä pääsisi käsiksi myös toiseen varmistuskanavaan. Ongelmaksi nousee lähinnä, että varmistuskanavan muuttamisesta tulisi tehdä tässä tapauksessa turvallista, jottei haittaohjelma pääse muuttamaan kyseistä tietoa.

Päätelmät / yhteenveto

MitB-hyökkäykseltä on vaikea suojautua sen huomaamattomuuden ansiosta ja havaintokin tapahtuu usein liian myöhään. Keinoja suojautumiseen on sekä käyttäjän toiminnan, että erinäisten tekniikoiden avulla, mutta niiden käyttö ei ainakaan vielä näy normaalilla käyttäjällä. MitB-hyökkäykset saattavat yleistyä yhä enemmän uusien hyökkäystekniikoiden kehittyessä ja vanhojen muuttuessa edullisemmiksi. Verkossa asioivien tulisi olla yhä enemmän varuillaan MitB-hyökkäysten kaltaisia uhkia vastaan, sekä uusia tekniikoita tulisi ottaa käyttöön turvaamaan käyttäjien tietoturvaa.

Lähteet

SivuTiedotLaajennettu edit

Vaativuus Jatko
Valmius Valmisteilla
Tyyppi Ydin
Luokitus Uhkat
Mitä Luottamuksellisuus
Miltä Ihmisetön uhka
Missä Organisaatio
Kuka Titu-ammattilainen
Milloin Ennakolta
Miksi Hyvä tapa
Print version |  PDF  | History: r7 | r4 < r3 < r2 < r1 | 
Topic revision: r2 - 22 Nov 2011 - 19:51:40 - JoonasRuohonen
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback