WordPressin suojaaminen

WordPress-saittia ylläpitävän kannattaa käyttää hetki turvallisuutensa pohtimiseen. Vaikka omaa saittia ei sinänsä kenelläkään olisi syytä uhata, hakkerit pommittavat löytämiään WordPress-saitteja testeillä, jotka paljastavat tunnettuja heikkouksia, joiden kautta on mahdollista päästä sisään.

Jos seuraa omalle saitille tehtyjä epäonnistuneita kyselyitä (JH 404 Logger on erinomainen apuväline tähän), voi huomata, kuinka hakkerit lataavat eri teemojen style.css-tiedostoa tai kokeilevat, onko saitille asennettu tiettyjä plugineita. Ajatus on se, että jos teema tai plugini löytyy, hakkerit käyttävät sitä murtautuakseen sisään.

Näitä testejä ajetaan varmasti täysin automaattisesti, joten mikä tahansa julkinen saitti voi joutua niiden kohteeksi. Tästä jutusta löydät muutaman niksin, joilla lisäät turvallisuuttasi.

wp-content hakemiston uudelleennimeäminen

Yksinkertainen suojakeino on muuttaa wp-content-hakemiston nimi joksikin muuksi. Näin hakkerit, jotka olettavat teemojen ja pluginien olevan wp-content-hakemistossa, eivät niitä löydä. Lisää wp-config.php-tiedostoon seuraavat rivit:

define ('WP_CONTENT_DIR',$_SERVER['DOCUMENT_ROOT'] . '/sisalto');
define ('WP_CONTENT_URL','http://www.example.com/sisalto');

Nyt voit nimetä wp-content-hakemiston nimellä ’sisalto’ ja WordPressin pitäisi toimia entisellään, mutta turvallisemmin, kun hakkerit eivät voi koputella ja etsiä viallisia teemoja ja plugineita.

Huomaa, että osa plugineista ja teemoista on sen verran huolimattomasti tehty, että tämä muutos rikkoo niiden toiminnan. Mallikelpoinen plugini tai teema ei oleta, että wp-content-hakemiston nimi on wp-content, mutta kaikki koodarit eivät ole tulleet ajatelleeksi asiaa. Kannattaa siis varautua siihen, että jotain menee rikki. Korjaaminen on onneksi helppoa.

wp-configin suojaaminen

Ihan näppärää on myös suojata WordPressin asetustiedosto wp-config.php. Kenellekään ei ole mitään syytä kajota siihen WordPressin ulkopuolelta, joten yksinkertainen säätö .htaccess-tiedostoon varmistaa, ettei näin pääse tapahtumaan. Lisää vain seuraava teksti .htaccess-tiedostoon WordPress-hakemistoosi.

<Files wp-config.php>
    Order Allow,Deny
    Deny from all
</Files>

Tiedosto on jo valmiina, jos olet tehnyt WordPressin osoiterakenteeseen muutoksia (toivottavasti olet), muuten sinun täytyy tehdä se itse. Tämä muutos ei vaikuta sivujesi toimintaan millään tavalla, mutta estää ulkopuolisia pääsemästä asetustiedostoon käsiksi. Tiedostossa ovat muun muassa tietokantatunnuksesi ja -salasanasi, joten se on hyvä suojata.

TimThumb-haavoittuvuus

Yksi roistojen hyödyntämä haavoittuvuus on TimThumb-apuohjelmassa, joka tekee thumbnail-kuvia automaattisesti. Tämä ei ole mitenkään WordPressin yksinoikeutta, mutta TimThumbia käytetään monissa teemoissa.

Jos teemasi tekee automaattisia thumbnail-kuvia, kannattaa tarkistaa käyttääkö se TimThumbia. Jos käyttää, teeman tiedostoista löytyy jostain timthumb.php. Se tulee ehdottomasti päivittää uuteen versioon. Nykyinen löytyy täältä. Korvaa tiedoston sisältö vaikka WordPressin tiedostomuokkaimella tuolla uudella versiolla, niin kaikki toimii kuten ennenkin, mutta haavoittuvuus on korjattu.

Kysy tai kommentoi

  • (ei näy muille)

XHTML: Voit käyttää näitä tägejä: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

11 kommenttia – uusimmat ensin, eli kysymykset löytyvät vastausten jälkeen

  1. Mikko Saari

    .htaccess-tiedostoon, sen pitäisi olla jo olemassa. Sellainen varoitus kyllä tähän kohtaan, että jos et tiedä asiasta mitään, ei välttämättä kannata kajota, koska tuolla saat kyllä särjettyä koko sivustosi jos teet jonkun virheen.

  2. Riku

    Kiitos Mikko vastauksesta.

    Minne siis lisään tuon ”koodin”. Pitääkö luoda tiedosto (nimi?). Lisäänkö / muokkaanko koodia wp-login vai wp-adminia?

  3. Mikko Saari

    Riku, lisää tiedoston alkuun tämä:


    order deny,allow
    Deny from all
    allow from xx.xxx.xx.xx

    ja korvaa tuo xx.xxx.xx.xx halutulla IP-osoitteella.

  4. Riku

    Hei, Mikko

    kuinka suojaan wp-login(.htaccess) voidaan suojata, että pääsy on vain oman ip-osoitteen kautta?
    Jos tähän saisi helpot ohjeet näin aloittelijalle, niin olisin kiitollinen.

    Kiitos

    Yst. RR

  5. Mikko Saari

    Hyvä huomio, korjasin.

  6. Eero

    Koodissa virhe: $_SERVER[’DOCUMENT_ROOT’]

    Jälkimmäinen lainausmerkki on väärä.

  7. Mikko Saari

    Rickard, kyllä nämä konstit toimivat edelleen.

  8. Rickard

    Moi Mikko

    toimiiko tuo WordPressin suojaaminen vielä tuolla tekemälläsi ohjeella vai suositteletko jotakin lisäosaa tämän ohjeen sijasta? Olen itse WordPress aloittelija joten tietoturva tulisi tässä vaiheessa ajankohtaiseksi.

    Kiitos sinulle jo etukäteen!

    Terveisin,
    Rickard Räsänen

  9. Mikko Saari

    Marke, hyvin pitkälle pääsee sillä, että pitää WordPressin, teemat ja pluginit päivitettyinä uusimpiin versioihinsa. Nämä tässä esitetyt turvakeinot ovat vähän sellaista hifistelyä, joka ei välttämättä ole erityisen tarpeellista.

  10. Marke

    Miten tämmöinen tavantallaaja, joka pitää blogia ko. sivustolla (lähinnä vain tekstiä, joissain liitettynä kuva), voi korjata (vai onko tarpeen) haavoittuvuudet ettei levitä harvoille lukijoilleen mitään haittaohjelmia – kun ei ole mitään hajua noista tiedostoista tai skripteistä…