Lyhyt vastaus: selvitä ensin, onko sinulla juuri se osa
WordPress-haavoittuvuus on ohjelmointivirhe, jonka kautta ulkopuolinen voi tehdä sivustolla jotain, mihin hänellä ei ole oikeutta. Useimmiten aukko ei ole WordPressissä itsessään vaan yksittäisessä lisäosassa tai teemassa, ja se koskee vain tiettyjä versioita. Yrittäjän ensimmäinen tehtävä on siksi yksinkertainen: selvitä, onko sivustollasi kyseinen lisäosa tai teema, ja jos on, missä versiossa se on.
Jos sitä ei ole, uutinen ei koske sinua. Jos se on ja versio kuuluu haavoittuviin, päivitä se korjattuun versioon heti, kun olet ottanut varmuuskopion. Jos korjattua versiota ei vielä ole, poista osa käytöstä siihen asti, kunnes korjaus tulee.
Siinä on koko ensiapu. Loput tästä tekstistä käsittelee sitä, mikä näissä kolmessa askeleessa menee käytännössä pieleen, ja sitä, miten seuraavasta uutisesta tulee rutiinia eikä paniikkia.
Koskeeko haavoittuvuus minun sivustoani?
Haavoittuvuus koskee sivustoasi vain, jos sinulla on käytössä juuri se ohjelmisto ja juuri se versioalue, josta aukko on löydetty. Tietoturvailmoituksessa kerrotaan tavallisesti kolme asiaa: minkä lisäosan, teeman tai WordPressin osan ongelma koskee, mitkä versiot ovat haavoittuvia ja mikä versio korjaa sen.
Lue ilmoituksesta nimenomaan versiotieto. Otsikko ”suosittu lisäosa vaarassa” kuulostaa pahalta, mutta jos aukko koskee vain vanhoja versioita ja sinun sivustosi on päivittynyt jo viikkoja sitten, olet todennäköisesti turvassa.
Kiinnitä huomiota myös siihen, vaatiiko hyökkäys kirjautumisen. Osa aukoista toimii vain, jos hyökkääjällä on jo jokin tunnus sivustolle, esimerkiksi tilaajan tai kirjoittajan oikeudet. Toiset toimivat kenelle tahansa, joka osaa lähettää oikeanlaisen pyynnön. Jälkimmäiset ovat kiireellisempiä, koska niitä hyödynnetään koneellisesti ja laajasti heti, kun tieto on julkinen.
Jos et ymmärrä ilmoituksen teknistä kieltä, se ei ole sinun vikasi. Kysy sivustosi tekijältä tai ylläpitäjältä suoraan: onko meillä tämä, missä versiossa, ja milloin se päivitetään. Hyvä ylläpitäjä vastaa kolmeen kysymykseen samana päivänä.
Ydin, lisäosa vai teema: missä aukko yleensä on
WordPress koostuu kolmesta kerroksesta. Ydin on itse julkaisujärjestelmä, jota kehitetään avoimesti ja jonka pienet tietoturvapäivitykset asentuvat oletuksena automaattisesti. Teema määrää ulkoasun. Lisäosat tuovat kaiken muun: lomakkeet, verkkokaupan, hakukoneasetukset, varmuuskopiot, evästebannerit ja sivurakentajat.
Suurin osa julkisuuteen nousevista aukoista löytyy lisäosista. Syy on yksinkertainen. Lisäosia on valtava määrä, niitä tekevät kaikenkokoiset tekijät yksittäisistä harrastajista isoihin yrityksiin, ja niiden laatu vaihtelee sen mukaan. Jokainen asennettu lisäosa on koodia, jonka joku muu on kirjoittanut ja jonka virheet tulevat sinun palvelimellesi.
Tästä seuraa käytännön sääntö: sivustosi riski ei riipu siitä, onko se WordPress, vaan siitä, montako lisäosaa siinä on ja kuinka hyvin niitä pidetään yllä. Kuusi huolellisesti valittua ja päivitettyä lisäosaa on eri tilanne kuin kolmekymmentä, joista puolet on asennettu kokeiluun ja unohdettu.
Miten tarkistat lisäosien ja teeman version?
Lisäosien versiot näet WordPressin hallintapaneelista kohdasta Lisäosat, jossa jokaisen lisäosan kohdalla lukee sen versio ja tieto siitä, onko uudempi saatavilla. Teeman version löydät kohdasta Ulkoasu ja sieltä Teemat, kun avaat käytössä olevan teeman tiedot.
Kolmas hyödyllinen paikka on Ohjausnäkymän alla oleva Päivitykset-sivu. Se kokoaa yhteen kaikki odottavat päivitykset: ytimen, lisäosat, teemat ja käännökset. Jos lista on pitkä, sivustoa ei ole päivitetty vähään aikaan, ja se on jo itsessään löydös.
Työkalut-valikon Sivuston terveys -näkymä kertoo lisäksi, onko palvelimen PHP-versio ajan tasalla ja onko sivustolla käyttämättömiä lisäosia tai teemoja, jotka kannattaisi poistaa. Se ei etsi haavoittuvuuksia, mutta se näyttää monta niistä asioista, jotka tekevät sivustosta alttiin.
Kirjoita tarkistuksen tulos ylös: lisäosan nimi, versio ja päivämäärä. Kun seuraava uutinen tulee, sinulla on lista, jota vasten sitä voi verrata minuutissa, eikä tarvitse kirjautua sisään kiireessä.
Kun et itse pääse hallintapaneeliin
Moni yrittäjä huomaa tässä kohdassa, ettei hänellä ole tunnuksia omaan sivustoonsa. Sivuston teki toimisto tai tuttava, tunnukset ovat hänellä, ja yrittäjällä on korkeintaan oikeus julkaista uutisia.
Se on ongelma jo ennen haavoittuvuutta, mutta haavoittuvuus tekee siitä kiireellisen. Jos tekijä ei vastaa, olet riippuvainen ihmisestä, joka ei ehkä enää hoida asiaa, eikä kukaan päivitä sivustoa.
Pyydä itsellesi oma ylläpitäjän tunnus omalla nimelläsi ja yrityksen sähköpostiosoitteella. Se ei tarkoita, että sinun pitää alkaa päivittää sivustoa itse. Se tarkoittaa, että pääset tarkistamaan tilanteen ja antamaan pääsyn jollekulle toiselle, jos nykyinen tekijä katoaa.
Jos sivustosi on palvelussa, jossa palveluntarjoaja päivittää kaiken puolestasi, kysy häneltä suoraan, onko kyseinen päivitys asennettu. Vastauksen pitää olla kyllä tai ei, ei ”järjestelmämme on turvallinen”.
Päivitä oikeassa järjestyksessä
Päivittäminen on oikea vastaus haavoittuvuuteen, mutta sokkona tehty päivitys on itsessään riski. Järjestys ratkaisee, kuinka pahasti yksi epäonnistunut päivitys voi sattua.
- Varmuuskopio ensin. Sekä tiedostot että tietokanta, ja kopio muualle kuin samalle palvelimelle.
- Haavoittuva osa ensimmäisenä. Jos kiire on yhden lisäosan takia, päivitä se yksin ja tarkista sivusto ennen muita päivityksiä.
- Loput yksi kerrallaan. Kun päivität kaksikymmentä lisäosaa yhdellä napilla ja sivusto hajoaa, et tiedä mikä sen rikkoi.
- Tarkista tärkeimmät toiminnot. Etusivu, lomakkeen lähetys, ajanvaraus tai kassa, ja sama vielä puhelimella.
Tämä vie aikaa varttitunnin sijaan ehkä tunnin. Se on silti nopeampaa kuin kokonaisen iltapäivän selvittely, kun sivusto on rikki eikä kukaan tiedä miksi.
Miksi päivitys voi rikkoa sivuston?
Päivitys voi rikkoa sivuston, koska WordPress-sivusto on yhdistelmä, jonka osia kehittävät eri tekijät eri tahtiin, eikä kukaan testaa juuri sinun yhdistelmääsi. Lisäosan tekijä testaa uuden version tavallisimpien teemojen kanssa. Hän ei testaa sitä sinun teemasi, sinun kahdentoista muun lisäosasi ja palvelimesi PHP-version kanssa.
Tyypillisimmät syyt ovat nämä:
- Kaksi lisäosaa riitelee. Uusi versio muuttaa jotain, johon toinen lisäosa luotti, ja sivulta katoaa valikko tai lomake lakkaa lähettämästä.
- Teemaa on muokattu suoraan. Jos joku on kirjoittanut muutokset teeman omiin tiedostoihin lapsiteeman sijaan, päivitys kirjoittaa ne yli ja ulkoasu palaa oletukseksi.
- PHP-versio ei sovi. Uusi lisäosa vaatii uudemman PHP:n kuin palvelimella on, tai vanha lisäosa ei toimi uudella.
- Välimuisti näyttää vanhaa. Sivusto näyttää rikkinäiseltä vain siksi, että osa tiedostoista tulee vanhasta välimuistista.
Mikään näistä ei ole syy jättää päivittämättä. Ne ovat syy tehdä se hallitusti ja pitää varmuuskopio käden ulottuvilla.
Testiympäristö: päivitys kokeillaan ensin kopioon
Testiympäristö on sivustostasi tehty kopio, joka ei näy asiakkaille ja jossa päivitykset voi kokeilla ennen kuin ne tehdään oikeaan sivustoon. Moni palveluntarjoaja tarjoaa sen valmiina yhdellä painalluksella.
Pienellä esittelysivustolla testiympäristö voi tuntua raskaalta. Verkkokaupassa, ajanvarauksessa tai jäsensivustossa se on perusasia, koska rikkinäinen kassa maksaa jokaisen tunnin, jonka se on rikki, ja ongelma huomataan usein vasta kun asiakas soittaa.
Kiireellinen tietoturvapäivitys on poikkeus. Jos aukkoa jo hyödynnetään, sitä ei jätetä odottamaan viikon testikierrosta. Silloin päivitetään suoraan, varmuuskopio tallessa, ja tarkistetaan sivusto heti perään.
Testiympäristössä on yksi ansa, joka kannattaa tietää. Jos kopio on julkisesti netissä ilman salasanaa, Google voi löytää sen ja alkaa näyttää sitä hakutuloksissa oikean sivuston rinnalla. Testikopio suojataan aina salasanalla tai estetään hakukoneilta.
Jos korjattua versiota ei vielä ole
Joskus aukko julkaistaan ennen kuin tekijä on ehtinyt korjata sen, tai lisäosaa ei enää kehitetä lainkaan. Silloin päivittäminen ei ole vaihtoehto, ja jäljelle jää kolme tietä.
Ensimmäinen on poistaa lisäosa käytöstä ja elää hetki ilman sitä ominaisuutta. Jos kyse on esimerkiksi sivun alareunan somesyötteestä, menetys on pieni. Toinen on korvata lisäosa toisella, jota ylläpidetään aktiivisesti. Kolmas on palomuuri, joka suodattaa hyökkäysyritykset ennen kuin ne pääsevät lisäosaan asti. Monella palveluntarjoajalla sellainen on valmiina, mutta se on väliaikainen suoja eikä korjaus.
Kannattaa myös muistaa, että pelkkä käytöstä poisto ei aina riitä. Lisäosan tiedostot jäävät palvelimelle, ja osa aukoista toimii suoraan niiden kautta. Lisäosa, jota et tarvitse, poistetaan kokonaan, ei vain kytketä pois päältä.
Jos lisäosaa ei ole päivitetty vuosiin, ota tilanteesta opiksi: se olisi pitänyt vaihtaa jo ennen tätä uutista.
Merkit siitä, että sivusto on jo murrettu
Murrettu sivusto ei aina näytä murretulta. Hyökkääjän tavoite on harvoin sotkea etusivu, vaan käyttää sivustoa johonkin muuhun: roskapostin lähettämiseen, hakukonehuijauksiin tai kävijöiden ohjaamiseen muualle. Siksi merkit ovat usein epäsuoria.
- Googlen hakutuloksissa näkyy sivustosi nimellä sivuja, joita et ole tehnyt, usein vieraalla kielellä ja lääkkeitä tai uhkapelejä myyden.
- Kävijä ohjautuu puhelimella toiselle sivustolle, mutta sinun tietokoneellasi kaikki näyttää normaalilta.
- Käyttäjälistassa on ylläpitäjä, jota kukaan ei tunnista.
- Palveluntarjoaja ilmoittaa epätavallisesta liikenteestä tai sulkee tilin.
- Search Console lähettää ilmoituksen tietoturvaongelmasta, tai selain varoittaa sivustostasi.
Viimeinen on syy siihen, miksi Search Console kannattaa ottaa käyttöön ennen kuin mitään tapahtuu. Se on usein ensimmäinen, joka kertoo. Ohjeet löydät kirjoituksesta Google Search Consolen käyttöönotto.
Mitä tehdä jos sivusto on jo murrettu?
Jos sivusto on jo murrettu, älä ala poistaa tiedostoja umpimähkään, vaan ota ensin kopio nykytilasta, vaihda kaikki salasanat ja palauta sivusto puhtaasta varmuuskopiosta tai puhdista se järjestelmällisesti. Järjestys on tärkeä, koska hätäinen siivous hävittää jäljet ja jättää usein takaoven paikalleen.
- Kopio nykytilasta. Myös murrettu versio tallennetaan, jotta jälkikäteen voidaan selvittää mitä tapahtui.
- Kaikki salasanat vaihtoon. WordPressin tunnukset, palveluntarjoajan hallinta, tiedostonsiirto, tietokanta ja sivustoon liittyvät sähköpostit.
- Ilmoitus palveluntarjoajalle. Heillä on lokit, joista näkee mistä murto tuli, ja usein myös apua puhdistukseen.
- Palautus tai puhdistus. Palautetaan varmuuskopio ajalta ennen murtoa, tai käydään tiedostot ja käyttäjät läpi.
- Aukko kiinni. Palautettu sivusto päivitetään heti, muuten se murretaan samasta kohdasta uudelleen.
- Tarkistuspyyntö Googlelle. Search Consolen kautta, kun sivusto on puhdas.
Varmuuskopion arvo näkyy juuri tässä. Jos sinulla on puhdas kopio kahden viikon takaa, palautus kestää tunnin. Jos ei ole, puhdistus voi kestää päiviä. Tästä lisää kirjoituksessa verkkosivujen varmuuskopiot ja palautuminen.
Asiakastiedot ja ilmoitusvelvollisuus
Jos sivustollasi käsitellään henkilötietoja, murto voi olla myös henkilötietojen tietoturvaloukkaus. Yhteydenottolomakkeet, ajanvaraukset, verkkokaupan tilaukset ja uutiskirjeen tilaajat ovat kaikki henkilötietoja.
EU:n tietosuoja-asetuksen mukaan rekisterinpitäjän on ilmoitettava henkilötietojen tietoturvaloukkauksesta valvontaviranomaiselle ilman aiheetonta viivytystä ja mahdollisuuksien mukaan 72 tunnin kuluessa siitä, kun loukkaus on tullut tietoon, ellei loukkauksesta todennäköisesti aiheudu riskiä ihmisille. Suomessa valvontaviranomainen on tietosuojavaltuutetun toimisto. Tarkista ajantasainen ohje ja ilmoituslomake tietosuojavaltuutetun sivuilta, koska yksityiskohdat ratkaistaan tapauskohtaisesti.
Käytännössä tämä tarkoittaa, että murron selvittelyssä pitää heti alussa kysyä myös, pääsikö hyökkääjä käsiksi lomakkeiden tai tilausten tietoihin. Jos vastaus on ehkä, asiaa ei jätetä odottamaan puhdistuksen valmistumista.
Miten vähennät riskiä pysyvästi?
Riski vähenee pysyvästi, kun sivustolla on vähemmän koodia, joku päivittää sen säännöllisesti ja tunnukset on suojattu. Mikään yksittäinen tietoturvalisäosa ei korvaa näitä.
- Karsi lisäosat. Käy lista läpi ja kysy jokaisesta, mitä se tekee ja käytetäänkö sitä. Tarpeettomat poistetaan kokonaan.
- Valitse ylläpidetyt. Lisäosa, jota on päivitetty viime kuukausina ja jolla on paljon käyttäjiä, on turvallisempi kuin vuosia hiljaa ollut.
- Ei laittomia kopioita. Ilmaiseksi jaetut kopiot maksullisista lisäosista sisältävät usein haittakoodia valmiina.
- Automaattiset päivitykset harkiten. Tietoturvapäivitykset voi antaa asentua itsestään, isot versiopäivitykset kannattaa tehdä valvotusti.
- Kaksivaiheinen tunnistus. Ylläpitäjän tunnuksiin aina, ilman poikkeuksia.
- Varmuuskopio muualle. Päivittäin, ja palautus kokeiltu ainakin kerran.
Listan tärkein kohta on ensimmäinen. Jokainen poistettu lisäosa on aukko, jota ei koskaan tule.
Kenen vastuulla päivitykset ovat
Useimmissa murretuissa yrityssivustoissa ei ole tapahtunut mitään erikoista. Niitä ei ole vain päivitetty, koska kukaan ei tiennyt, että se on hänen tehtävänsä. Toimisto luuli, että asiakas hoitaa, ja asiakas luuli, että toimisto hoitaa.
Vastuu kannattaa kirjoittaa auki. Jos teet päivitykset itse, varaa niille vakioaika, esimerkiksi kerran viikossa sama aamu. Jos kumppani tekee ne, sopimuksessa pitää lukea, kuinka usein päivitetään, kuka tarkistaa sivuston päivityksen jälkeen, kuka ottaa varmuuskopiot ja kuinka nopeasti kiireelliseen aukkoon reagoidaan.
Ylläpitosopimuksen arvo ei ole napin painaminen. Sen arvo on siinä, että joku seuraa tiedotteita puolestasi ja reagoi ennen kuin luet uutisen. Siksi ylläpito kannattaa ostaa taholta, joka ymmärtää sivustosi rakenteen, eikä erikseen halvimmalta napin painajalta.
Kysy nykyiseltä ylläpitäjältäsi yksi asia: milloin sivustosi päivitettiin viimeksi. Jos vastausta ei tule saman päivän aikana, sinulla ei käytännössä ole ylläpitoa.
Yhteenveto
Kun uutisissa on WordPress-aukko, kysy kolme asiaa: onko meillä tämä osa, missä versiossa, ja onko korjattu versio asennettu. Useimmiten vastaus rauhoittaa. Jos ei rauhoita, varmuuskopio, päivitys ja tarkistus ovat tunnin työ.
Varsinainen työ tehdään ennen uutista. Vähän lisäosia, säännölliset päivitykset, suojatut tunnukset ja kokeiltu varmuuskopio tekevät seuraavasta uutisesta rutiinin. Ilman niitä jokainen uutinen on arpapeli, jossa panoksena on sivusto.
