SlideShare una empresa de Scribd logo
1 de 14
WordPress asennuksen
    suojaaminen

     Jukka Weissenfelt
       (@JukkaWe)
• WordPress lienee tämän hetken tunnetuimpia ja käytetyimpiä
  avoimen lähdekoodin web-sovelluksia.

• Tällä on tietysti hyviä ja huonoja puolia.


• Web-kehittäjät hyödyntävät valmiita tai puolivalmiita teemoja
  (themes), ilmaisia lisäosia (plugins) ja muita ilmaisia
  lisäominaisuuksia tuovia laajennuksia kuten prettyPhoto ja
  Timthumb.
• WordPress itsessään, valmiit teemat ja varsinkin Timthumb:n
  vanhat versiot ovat osoittautuneet tietoturvariskiksi, jolta
  voidaan suojautua.

• Seuraavilla kalvoilla on tarkoituksena käydä lävitse keinoja,
  miten voit tehdä WordPress asennuksesta huomattavasti
  alkuperäistä turvallisemman.

• Kalvot on suunnattu ensijaisesti web-kehittäjille, mutta
  käyttäjätkin voivat tehdä ainakin osan esitettävistä asioista.
WordPress asennuksen suojaaminen
• Hyvä lähtökohta WordPressin suojaamiseen on noudattaa
  WordPress:n omia ohjeita palvelun suojaamiseksi:
  http://codex.wordpress.org/Hardening_WordPress

• Erityisen tärkeä toimenpide on siirtää wp-config.php pois
  public_html kansiosta.
Asennuksen suojaaminen jatkuu
• .htaccess-tiedostoon kannattaa lisätä seuraavat koodit,
  jotka estävät käyttäjiä pääsemästä suoraan käsiksi wp-
  includes-kansioon.
# Block the include-only files.
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
# BEGIN WordPress
Estä kirjautumissivulle pääsy
• Luo wp-admin –kansioon .htaccess-tiedosto.
• Lisätään sinne salasanan kysely, mutta varmistetaan että admin-
  ajax.php:ta voidaan käyttää ilman salasanaa.
• Admin-ajax.php huolehtii esimerkiksi liitetiedostojen lataamisesta
  palvelimelle.

AuthType Basic
AuthName "Kirjaudu"
AuthUserFile /var/www/path/to/passwd
Require valid-user
<Files admin-ajax.php>
  Order allow,deny
  Allow from all
  Satisfy any
</Files>
Tunnus ja tietokanta
• WordPress luo oletuksena ‘admin’-nimisen
  käyttäjän. Korvaa ‘admin’ vaikka yrityksesi
  nimellä.

• Korvaa WordPressin automaattinen
  tietokantataulujen etuliite wp_ jollakin
  muulla.
Yleisiä neuvoja (lisäosat)
• Lisäosat vaikuttavat aina sivustosi tietoturvaan.
   – Sivustosi on yhtä turvallinen kuin heikoin koodinpätkäsi.
   – Suosittelen erityisesti välttämään lisäosia jotka tarvitsevat
     tietokantaoikeudet.


• Asenna vain ne lisäosat mitä todella tarvitset.

• Asenna vain lisäosia joilla on hyvät arvostelut ja useita,
  mieluiten satoja tai tuhansia käyttäjiä.

• Varmista, että lisäosa tukee sinun WordPress-asennuksesi
  versiota ja sitä päivitetään edelleen.
Lisäosat - jatkuu
• Asenna lisäosa vain jos et voi tehdä sitä itse.
   – Lisätoiminnallisuudet eivät ole rakettetiedettä.
   – Useat toiminnallisuudet voidaan ottaa käyttöön muokkaamalla
     functions.php-tiedostoa.
   – Google on kehittäjän paras kaveri.
• Muutamia esimerkkejä:
 http://www.wpbeginner.com/wp-tutorials/25-extremely-
  useful-tricks-for-the-wordpress-functions-file/
 http://www.catswhocode.com/blog/10-super-useful-
  wordpress-shortcodes
 http://www.catswhocode.com/blog/8-new-and-amazing-
  wordpress-hacks
Päivitä TimThumb
• TimThumbia käytetään kuvien muokkaamiseen ja käsittelyyn
  hyvin usealla WordPress-sivustolla.

• Helpoin tapa pitää TimThumb päivitettynä on asentaa
  Timthumb Vulnerability Scanner –lisäosa.

• Lisätietoa Timthumb-hyökkäyksistä.
Asenna WordPress Firewall 2
• WordPress Firewall 2 estää joitain
  automaattisia ja manuaalisia hyökkäyksiä.

• Valitettavasti lisäosaa ei ole hetkeen päivitetty.

• http://wordpress.org/extend/plugins/wordpre
  ss-firewall-2/
Estä “väärä salasana” ilmoitus

• Lisää functions.php-tiedostoon pieni koodinpätkä, joka
  estää erittelemästä onko käyttäjää olemassa vai ei.
• Huom. Jos olet jo suojannut WordPressin .htaccess
  salasanalla voi tämä tämä olla jo tarpeetonta.

// Remove default error message and replace with
  custom error message add_filter('login_errors',
  'login_error_mess'); function login_error_mess()
  { return '<span class="error"><strong>ERROR:
  </strong>Invalid username or password.</span>';
  }
Lopuksi
• Pidä WordPress-asennus aina ajantasalla!

• Päivitä teemasi, lisäosasi, Timthumb ja tietysti
  myös WordPress-asennus.
Anna palautetta
  E-mail: jukka@ebrand.fi
  Puhelin: +358 440 5544 08
  LinkedIn: Jukka Weissenfelt
  Facebook: jukkaw
  Twitter: @JukkaWe
  Google+: JukkaWe

http://www.whitefield.fi
http://www.ebrand.fi/blog

Más contenido relacionado

Similar a WordPress asennuksen suojaaminen

Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjille
Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjilleVähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjille
Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjilleSeravo
 
Tietoturvan perusteita
Tietoturvan perusteitaTietoturvan perusteita
Tietoturvan perusteitaHarto Pönkä
 
Verkkosivusto 30 minuutissa WordPressillä
Verkkosivusto 30 minuutissa WordPressilläVerkkosivusto 30 minuutissa WordPressillä
Verkkosivusto 30 minuutissa WordPressilläTeemu Suoranta
 
Web-sivustot
Web-sivustotWeb-sivustot
Web-sivustotjarfroy
 
Wordpress tutuksi päivässä
Wordpress tutuksi päivässäWordpress tutuksi päivässä
Wordpress tutuksi päivässäLumoLink
 
Windows 10 hallinnan näkökulmasta
Windows 10 hallinnan näkökulmastaWindows 10 hallinnan näkökulmasta
Windows 10 hallinnan näkökulmastaSovelto
 

Similar a WordPress asennuksen suojaaminen (6)

Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjille
Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjilleVähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjille
Vähemmän ja nopeammin – Välimuistivinkit WordPress-kehittäjille
 
Tietoturvan perusteita
Tietoturvan perusteitaTietoturvan perusteita
Tietoturvan perusteita
 
Verkkosivusto 30 minuutissa WordPressillä
Verkkosivusto 30 minuutissa WordPressilläVerkkosivusto 30 minuutissa WordPressillä
Verkkosivusto 30 minuutissa WordPressillä
 
Web-sivustot
Web-sivustotWeb-sivustot
Web-sivustot
 
Wordpress tutuksi päivässä
Wordpress tutuksi päivässäWordpress tutuksi päivässä
Wordpress tutuksi päivässä
 
Windows 10 hallinnan näkökulmasta
Windows 10 hallinnan näkökulmastaWindows 10 hallinnan näkökulmasta
Windows 10 hallinnan näkökulmasta
 

Más de Jukka Weissenfelt

Sosiaalinen media ja nuoret 2013 - kuvatulokset
Sosiaalinen media ja nuoret 2013 - kuvatuloksetSosiaalinen media ja nuoret 2013 - kuvatulokset
Sosiaalinen media ja nuoret 2013 - kuvatuloksetJukka Weissenfelt
 
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013Jukka Weissenfelt
 
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...Jukka Weissenfelt
 
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä - Ma...
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä  - Ma...ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä  - Ma...
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä - Ma...Jukka Weissenfelt
 
Sosiaalinen media - Perusteita ja Yritysviestintää
Sosiaalinen media - Perusteita ja YritysviestintääSosiaalinen media - Perusteita ja Yritysviestintää
Sosiaalinen media - Perusteita ja YritysviestintääJukka Weissenfelt
 
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassa
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassaebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassa
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassaJukka Weissenfelt
 
Sosiaalinen media markkinoinnin työkaluna
Sosiaalinen media markkinoinnin työkalunaSosiaalinen media markkinoinnin työkaluna
Sosiaalinen media markkinoinnin työkalunaJukka Weissenfelt
 

Más de Jukka Weissenfelt (7)

Sosiaalinen media ja nuoret 2013 - kuvatulokset
Sosiaalinen media ja nuoret 2013 - kuvatuloksetSosiaalinen media ja nuoret 2013 - kuvatulokset
Sosiaalinen media ja nuoret 2013 - kuvatulokset
 
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013
Facebook markkinointi "tykkaa ja jaa" jukka weissenfelt ebrand Suomi 5.2.2013
 
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...
Ansaittu media ja sosiaalisen median trendit 2013 @ Kalevan digiaamiainen ebr...
 
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä - Ma...
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä  - Ma...ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä  - Ma...
ebrand - Pohjois-Suomen Kirjailijapäivät 28 12 2012 Kirjailija brändinä - Ma...
 
Sosiaalinen media - Perusteita ja Yritysviestintää
Sosiaalinen media - Perusteita ja YritysviestintääSosiaalinen media - Perusteita ja Yritysviestintää
Sosiaalinen media - Perusteita ja Yritysviestintää
 
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassa
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassaebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassa
ebrand suomi Oulun Yritystakomo - Sosiaalinen media liiketoiminnassa
 
Sosiaalinen media markkinoinnin työkaluna
Sosiaalinen media markkinoinnin työkalunaSosiaalinen media markkinoinnin työkaluna
Sosiaalinen media markkinoinnin työkaluna
 

WordPress asennuksen suojaaminen

  • 1. WordPress asennuksen suojaaminen Jukka Weissenfelt (@JukkaWe)
  • 2. • WordPress lienee tämän hetken tunnetuimpia ja käytetyimpiä avoimen lähdekoodin web-sovelluksia. • Tällä on tietysti hyviä ja huonoja puolia. • Web-kehittäjät hyödyntävät valmiita tai puolivalmiita teemoja (themes), ilmaisia lisäosia (plugins) ja muita ilmaisia lisäominaisuuksia tuovia laajennuksia kuten prettyPhoto ja Timthumb.
  • 3. • WordPress itsessään, valmiit teemat ja varsinkin Timthumb:n vanhat versiot ovat osoittautuneet tietoturvariskiksi, jolta voidaan suojautua. • Seuraavilla kalvoilla on tarkoituksena käydä lävitse keinoja, miten voit tehdä WordPress asennuksesta huomattavasti alkuperäistä turvallisemman. • Kalvot on suunnattu ensijaisesti web-kehittäjille, mutta käyttäjätkin voivat tehdä ainakin osan esitettävistä asioista.
  • 4. WordPress asennuksen suojaaminen • Hyvä lähtökohta WordPressin suojaamiseen on noudattaa WordPress:n omia ohjeita palvelun suojaamiseksi: http://codex.wordpress.org/Hardening_WordPress • Erityisen tärkeä toimenpide on siirtää wp-config.php pois public_html kansiosta.
  • 5. Asennuksen suojaaminen jatkuu • .htaccess-tiedostoon kannattaa lisätä seuraavat koodit, jotka estävät käyttäjiä pääsemästä suoraan käsiksi wp- includes-kansioon. # Block the include-only files. RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] # BEGIN WordPress
  • 6. Estä kirjautumissivulle pääsy • Luo wp-admin –kansioon .htaccess-tiedosto. • Lisätään sinne salasanan kysely, mutta varmistetaan että admin- ajax.php:ta voidaan käyttää ilman salasanaa. • Admin-ajax.php huolehtii esimerkiksi liitetiedostojen lataamisesta palvelimelle. AuthType Basic AuthName "Kirjaudu" AuthUserFile /var/www/path/to/passwd Require valid-user <Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
  • 7. Tunnus ja tietokanta • WordPress luo oletuksena ‘admin’-nimisen käyttäjän. Korvaa ‘admin’ vaikka yrityksesi nimellä. • Korvaa WordPressin automaattinen tietokantataulujen etuliite wp_ jollakin muulla.
  • 8. Yleisiä neuvoja (lisäosat) • Lisäosat vaikuttavat aina sivustosi tietoturvaan. – Sivustosi on yhtä turvallinen kuin heikoin koodinpätkäsi. – Suosittelen erityisesti välttämään lisäosia jotka tarvitsevat tietokantaoikeudet. • Asenna vain ne lisäosat mitä todella tarvitset. • Asenna vain lisäosia joilla on hyvät arvostelut ja useita, mieluiten satoja tai tuhansia käyttäjiä. • Varmista, että lisäosa tukee sinun WordPress-asennuksesi versiota ja sitä päivitetään edelleen.
  • 9. Lisäosat - jatkuu • Asenna lisäosa vain jos et voi tehdä sitä itse. – Lisätoiminnallisuudet eivät ole rakettetiedettä. – Useat toiminnallisuudet voidaan ottaa käyttöön muokkaamalla functions.php-tiedostoa. – Google on kehittäjän paras kaveri. • Muutamia esimerkkejä:  http://www.wpbeginner.com/wp-tutorials/25-extremely- useful-tricks-for-the-wordpress-functions-file/  http://www.catswhocode.com/blog/10-super-useful- wordpress-shortcodes  http://www.catswhocode.com/blog/8-new-and-amazing- wordpress-hacks
  • 10. Päivitä TimThumb • TimThumbia käytetään kuvien muokkaamiseen ja käsittelyyn hyvin usealla WordPress-sivustolla. • Helpoin tapa pitää TimThumb päivitettynä on asentaa Timthumb Vulnerability Scanner –lisäosa. • Lisätietoa Timthumb-hyökkäyksistä.
  • 11. Asenna WordPress Firewall 2 • WordPress Firewall 2 estää joitain automaattisia ja manuaalisia hyökkäyksiä. • Valitettavasti lisäosaa ei ole hetkeen päivitetty. • http://wordpress.org/extend/plugins/wordpre ss-firewall-2/
  • 12. Estä “väärä salasana” ilmoitus • Lisää functions.php-tiedostoon pieni koodinpätkä, joka estää erittelemästä onko käyttäjää olemassa vai ei. • Huom. Jos olet jo suojannut WordPressin .htaccess salasanalla voi tämä tämä olla jo tarpeetonta. // Remove default error message and replace with custom error message add_filter('login_errors', 'login_error_mess'); function login_error_mess() { return '<span class="error"><strong>ERROR: </strong>Invalid username or password.</span>'; }
  • 13. Lopuksi • Pidä WordPress-asennus aina ajantasalla! • Päivitä teemasi, lisäosasi, Timthumb ja tietysti myös WordPress-asennus.
  • 14. Anna palautetta E-mail: jukka@ebrand.fi Puhelin: +358 440 5544 08 LinkedIn: Jukka Weissenfelt Facebook: jukkaw Twitter: @JukkaWe Google+: JukkaWe http://www.whitefield.fi http://www.ebrand.fi/blog