Tietoturva-aukot altistavat murroille

Nykyään yhä useampi sivusto käyttää jotain avoimeen lähdekoodiin perustuvaa sisällönhallintajärjestelmää kuten esimerkiksi WordPress, Joomla tai Drupal (W3tech: Usage of content management systems for websites)  Ohjelmistot ja niiden lisäosat voivat helposti altistua murroille, jos niitä ei päivitetä säännöllisesti. Sama riski koskee mitä tahansa dynaamista sisältöä, johon käytetystä koodista voidaan hyödyntää mahdollisia tietoturva-aukkoja. Tästä hyvänä esimerkkinä PHP:n vanhat versiot, joihin ei ole enää saatavissa tietoturvapäivityksiä. (PHP-päivitys)

Lisätietoa julkaisujärjestelmistä ja näiden tietoturvasta tästä artikkelista.

Sivuilleni on murtauduttu, mikä avuksi?

Murto voi esiintyä monella eri tavalla. Hyvin usein sivustolle on syötetty jotain sisältöä tai haitallista koodia, joka ei sinne kuulu ja ilmenee usein sivuston toiminnassa. Tässä vaiheessa on syytä kirjautua palvelimelle ja tarkistaa sivuston lähdekoodi.

Selaimessa näkyviä murtoesimerkkejä

Screen Shot 2016-06-02 at 11.07.50

Julkinen sisältö on muutettu. Voi liittyä esimerkiksi ajankohtaisiin poliittisiin konflikteihin.

Screen Shot 2016-06-02 at 11.15.15

Sivustolta ajetaan haitallisia koodia käyttäjän selaimessa. F-Securen virustorjuntaohjelmisto estää pääsyn sivustolle.

Screen Shot 2016-06-02 at 11.17.01

Sivustolla on käyttäjälle haitallista koodia. Google ilmoittaa asiasta ja estää pääsyn sivustolle.

Screen Shot 2016-06-02 at 15.47.57

Sivustolle on murtauduttu ja olemme jo estäneet haitallisen koodin suorittamisen (chmod 700.) Sivusto antaa Apachen 403 Forbidden-virheilmoituksen.

Haitallisen koodin havaitseminen

– Sivuston tietokannassa voi olla ylimääräinen sisällönhallintajärjestelmän käyttäjätunnus, jolla on ylläpitäjän oikeudet sivustoon. Käyttäjätunnus voi esimerkiksi olla muotoa ”abcdadmin”, jossa abdc on satunnainen kirjainjono.

– Sisällönhallintajärjestelmän pääkäyttäjätunnuksen kirjautumistunnus voi olla muutettu eri muotoon. Lisäksi sen salasana on vaihdettu. Tällaisessa tapauksessa sivuston hallintaan normaalisti käytettävät tunnukset eivät enää toimi.

– Sivustoon voi olla asennettu haitallisia liitännäisiä (plugin), vaikka itse sivusto vaikuttaisikin päällisin puolin toimivan normaalisti.

Jos käytätte SSH-yhteyttä, niin oheinen komento näyttää PHP-tiedostot, joihin on tehty muutoksia viimeisen 10 päivän aikana:

find . -ctime -10 -name *.php

Voitte myös tarkistaa muutokset tiedostoissa haluamallanne tiedonsiirto-ohjelmalla, muistakaa kuitenkin tarkistaa myös kaikki alikansiot.

Screen Shot 2016-06-02 at 11.47.23

WordPressin tiedostonäkymä Filezilla-ohjelmalla.

Lisäksi suosittelemme tarkastamaan sivuston lokit kuten esimerkiksi access-loki, joka on saatavissa palveluhallinnan valikosta ”Lokitiedostot”.

Lisätty haittakoodi voi näyttää esimerkiksi tältä:

Screen Shot 2016-06-02 at 13.40.38

Murron ja haittakoodin siivoaminen

1) Palauta ja varmista

Paras keino siivota murron jäljet on palauttaa varmuuskopio murtoa edeltävältä ajalta (sivuston varmuuskopiointi) ja välittömästi paikata kaikki mahdolliset tietoturva-aukot. Jos kyseessä on sisällönhallintajärjestelmä, niin päivitä ohjelmisto, lisäosat ja teemat (Julkaisujärjestelmät ja tietoturva.) Jos käytöstä löytyy jotain lisäosia tai teemoja, joihin ei ole aikoihin tullut uusia päivityksiä, niin on syytä miettiä onko näiden käyttö tietoturvallista.

2) Uudelleenasenna

Ota talteen kaikki sivustoon liittyvä oleellinen sisältö ja tuo sisältö täysin puhtaasti uudelleenasennettuun julkaisujärjestelmään. Varmista että käytössä on viimeisin versio julkaisujärjestelmästä ja ettet käytä tietoturvattomia teemoja tai lisäosia.

3) Siivoa haitallinen koodi

Murron jälkeen on tärkeää poistaa kaikki mahdollinen haitallinen koodi, mutta monesti tämä ei riitä. Murtaja on saattanut mm. jättää koodiin huomaamattoman takaportin, joka mahdollistaa välittömän uuden murron, kun sivusto taas avataan.

Ennen sivuston uudelleenavaamista tulee huolehtia ettei lähdekoodista tai tietokannasta löydy mitään haitallista koodia tai mahdollista takaporttia.

HUOM! Jos tietoturva-aukkoa ei paikata, niin murto toistuu hyvin todennäköisesti.