Microsoftin Egde ja Internet Explorer -selaimissa korjaamaton XSS-haavoittuvuus | Traficom

Microsoftin Egde ja Internet Explorer -selaimissa korjaamaton XSS-haavoittuvuus

1. huhtikuuta 2019 klo 13.12

Tietoturvatutkija James Lee on löytänyt Microsoftin Edge ja Internet Explorer -selaimista haavoittuvuuden, jonka avulla hyökkääjä voi ohittaa selaimen suojauksia ja asettaa haitallista koodia muille sivustoille.

Lee on julkaissut Twitterissä haavoittuvuuksista demonstraatioita, jossa Universal Cross Site Scripting (UXSS) -haavoittuvuuden toimintaa esitellään lisäämällä sivuille harmitonta sisältöä.

Maaliskuun lopulla julkaistut haavoittuvuudet mahdollistavat haitallisen webisivun hakemaan sisältöä miltä tahansa sivulta, jolla uhri on aiemmin vierailut haavoittuvalla selaimella. Haavoittuvuuden avulla hyökkääjän on mahdollista asettaa toiselle verkkosivulle haitallista ohjelmakoodia houkuttelemalla ensin uhri omalle sivustolleen. Tämä voi tapahtua myös käyttäjän huomaamatta. Hyökkääjän ohjelmakoodin asettaminen vieraille verkkosivuille mahdollistaa mm. käyttäjätunnuksien ja salasanojen urkkimisen, kirjautuneen session haltuunottamisen sekä altistaa käyttäjän haittaohjelmalatauksille tai muulle haitalliselle sisällölle. Haavoittuvuutta on kuvattu universaaliksi siksi, että se ei toimiakseen edellytä haavoittuvuuksia kohdesivustossa, vaan hyväksikäyttää selaimen haavoittuvuuksia.

Hyökkäys ohittaa ns. Same Origin Policy (SOP) -suojauksen, joka toimiessaan estää vieraita sivuja asettamasta ohjelmakoodia toisille verkkosivustoille.

SOP on moderneissa selaimissa oleva tietoturvaominaisuus, joka estää yhdestä osoitteesta ladattavan resurssin (kuten websivun tai skriptin) interaktion toisessa paikassa sijaitsevan resurssin kanssa. Toisin sanoen SOP mahdollistaa sen, että sivusto voi ladata sisältöä vain samasta domainista, jolla sivusto itse on.

Päivitystä odotellessa ongelmaa voi rajoittaa käyttämällä vaihtoehtoista verkkoselainta.

Työasemat ja loppukäyttäjäsovellukset

Työasemien ja tavallisten käyttäjien sovellusten haavoittuvuudet koskevat usein monia käyttäjiä. Kohteena voi olla esimerkiksi Windows-käyttöjärjestelmä tai tekstinkäsittelyohjelma. Ero palvelinsovellusten ja loppukäyttäjäsovellusten välillä on joskus häilyvä, esimerkiksi samaa käyttöjärjestelmää voidaan käyttää sekä palvelimessa että työasemassa.

Etäkäyttö

Etäkäyttöisesti tehtävän hyökkäyksen voi tehdä tietoverkkoyhteyden tai vastaavan kautta ilman että pääsee itse kohteena olevan järjestelmän luokse.

Ilman käyttäjän toimia

Ilman käyttäjän toimia tapahtuva hyökkäys kohdistuu suoraan haavoittuvuuteen ilman että järjestelmän käyttäjältä vaaditaan mitään toimia hyökkäyksen onnistumiseksi. Käyttäjän ei esimerkiksi tarvitse selailla www-sivuja tai käynnistää ohjelmaa tietokoneessa, vaan hyökkäys onnistuu ilman käyttäjän apua.

Ilman kirjautumista

Hyökkäys ei vaadi kohteena olevaan järjestelmään kirjautumista. Vastakohtana ovat sellaiset hyökkäykset, jotka vaativat käyttäjätunnuksen ja salasanan käyttöä ja esimerkiksi komentojen suorittamista järjestelmään kirjautuneena.

Suojauksen ohittaminen

Suojauksen ohittamisella tarkoitetaan sitä, että haavoittuvuutta hyväksikäyttämällä ohitetaan järjestelmän käytön rajoittamiseksi tehty suojaus esimerkiksi liikennöimällä palomuurin ohi suojattuun verkkoon.

Käyttövaltuuksien laajentaminen

Käyttövaltuuksien laajentaminen mahdollistaa järjestelmän käyttämisen esimerkiksi pääkäyttäjänä, tavallista käyttäjää laajemmin valtuuksin.

Tietojen muokkaaminen

Järjestelmään talletettujen tietojen muokkaaminen ei välttämättä edellytä komentojen suorittamista, käyttövaltuuksien laajentamista tai järjestelmään kirjautumista. Esimerkiksi käyttämällä hyväksi www-palvelinohjelmiston haavoittuvuutta voi hyökkääjä luvatta muuttaa palvelimella näkyvien verkkosivujen sisältöä.

Luottamuksellisen tiedon hankkiminen

Luottamuksellisten tietojen hankkiminen kohdejärjestelmästä edellyttää sitä, että sen tietosisältöä, esimerkiksi kiintolevylle talletettuja tiedostoja, pääsee lukemaan luvatta ja välittämään edelleen.

Haavoittuvuuden havainnollistava esimerkkikoodi

Proof of concept.

Ongelman rajoittaminen

Vaikka varsinaista korjausta haavoittuvuuteen ei aina ole saatavilla, sen vaikutuksia voidaan useimmiten rajoittaa esimerkiksi pidättäytymällä tilapäisesti jonkin ominaisuuden käytöstä tai rajoittamalla verkkoliikennettä kohdejärjestelmään sopivasti.

Ei päivitystä

Haavoittuvuuden tultua julki ei korjausta siihen ole välttämättä heti saatavilla. Kohdejärjestelmät ovat alttiita haavoittuvuuden hyväksikäytölle jos niiden suojaamiseksi ei ryhdytä toimenpiteisiin.