http://lynt.cz
Bezpečnost WordPressu
pro začátečníky
Vláďa Smitka
vladimir.smitka@lynt.cz
@smitka
Lynt services s.r.o. @LyntCz
13. 6. 2015 1
http://lynt.cz13. 6. 2015 2
Síťová infrastruktura
• Servery
• Firewally
• WiFi
• …
Webová řešení
• Informační systémy
• Webové stránky
• E-shopy
On-line marketing
• PPC
• Analytika
• SEO
Jakub Kašparů
Právě teď přednáší na
BarCampu v Českých
Budějovicích o
systému práce s PPC
Vláďa Smitka
14 let v sítích a
webovém vývoji
http://lynt.cz
Minislovníček
HTTP – protokol, který přenáší obsah stránek, požadavek - odpověď
HTTPS – HTTP přenášené šifrovaně s SSL certifikátem (brání odposlechnutí komunikace)
PHP – programovací jazyk, který generuje stránku na serveru
MySQL – databázový systém, jsou zde uloženy nastavení webu a jeho obsah (články)
JavaScript – programovací jazyk, který běží v prohlížeči (jsou v něm dělány např. různé efekty)
AJAX – funkcionalita JavaScriptu, která umožňuje komunikaci se serverem bez přenačtení
stránky, často je zneužitá k útokům
.htaccess – soubor, ve kterém lze upravit vlastnosti webového serveru (např. zakázat přístup
ke konkrétním souborům, přesměrovávat, nastavovat PHP), úpravy mohou znefunkčnit web
wp-config.php – soubor, ve kterém je uloženo základní nastavení WP (připojení k databázi,
šifrovací klíče, adresa stránek), častý cíl hackerů
Query parameter – část adresy za ? - http://můj-webík.cz/?page_id=2 – aplikaci se tak
předávají různé parametry, lze je zneužít, pokud není aplikace dobře napsána
SQL injection (SQLi) – typ útoku, který pozmění dotaz do databáze a získá tak citlivé
informace
XSS – typ útoku, který umožní na stránce spustit cizí JavaScript (například přes komentáře)
CSRF – typ útoku, který prostřednictvím uživatele vykoná požadavek pocházející z cizího
zdroje (donutí uživatele kliknout na odkaz, který vede do administrace a tam něco provede)
13. 6. 2015 3
http://lynt.cz
Na co se dnes podíváme?
• Uživatelská práva ve WP
• Zjednodušení aktualizace
• Bezpečnostní plugin WordFence
• Zálohovací plugin BackWPup
• Co udělat po útoku?
„Každý bude dříve či později řešit bezpečnostní
incident, je dobré být připraven!“
• Budu se snažit neupravovat soubory WordPressu a
.htaccess
13. 6. 2015 4
http://lynt.cz
Checklist – co potřebujeme
• Nastavit správná práva uživatelům
• Silná hesla
• Odstranění zbytečností
• Blokace spamu
• Omezení chybných přihlášení (Brute force)
• Informace o aktualizacích a problémech
• Blokace známých útoků
• Zálohování
13. 6. 2015 5
http://lynt.cz
Kdo tvořil web před 5 lety?
13. 6. 2015 6
http://lynt.cz
Kdo tvoří web dnes?
13. 6. 2015 7
http://lynt.cz
Uživatelé
13. 6. 2015 8
Vyčítání uživatelských jmen:
http://naswp.cz/?author=2 => http://naswp.cz/author/bigdrobek/
???!!
Lákavý
cíl Potřebuje
admin práva?
Zřejmě
nepoužívaný
Používejte reálná
jména, ať víte kdo
uživatelé opravdu jsou.
http://lynt.cz
Práva uživatelů
13. 6. 2015 9
• Návštěvník (Subscriber)
– Může pouze číst obsah, editovat svůj profil. Má jednodušší práci s komentáři.
• Spolupracovník (Contributor)
– Může psát nové příspěvky, ale publikovat je může až Admin nebo Šéfredaktor.
Nemá přístup do galerie médií (může ale vkládat obrázky z externích zdrojů) –
guest blogging.
• Redaktor (Author)
– Může spravovat své příspěvky včetně správy komentářů, nahrávat soubory do
galerie médií. Nemůže pracovat se stránkami.
• Šéfredaktor (Editor)
– Může spravovat veškerý obsah – příspěvky, stránky, komentáře, kategorie, v
jeho komentářích může být javascript.
• Administrátor (Administrator)
– Může spravovat vše – obsah, pluginy, šablony, widgety.
• SuperAdministrátor (pro WP multisite) – spravuje síť webů
http://lynt.cz
Jak přejmenovat uživatele admin
1. Vytvořit nového
uživatele s právy
Administrátora
2. Přihlásit se na nového
uživatele
3. Smazat původního
uživatele admin
4. Příspěvky přesunout
pod nového uživatele
13. 6. 2015 10
http://lynt.cz
Hesla
1. admin
2. heslo
3. karel91
4. Admin1234
5. mamradsvickovouomackusknedlikem
6. 2dfsg*jrkKR!R6Htt5Kh
13. 6. 2015 11
Používejte správce
hesel – silnější hesla s
menším úsilím.
http://lynt.cz
Správce hesel
13. 6. 2015 12
KeePass
http://keepass.info/
http://lynt.cz
Správce hesel
13. 6. 2015 13
Alternativa:
LastPass
https://lastpass.com/cs/
http://lynt.cz
Přihlašování
• Nepřipojovat se z neznámých sítí (pokud máte v
mobilu, tabletu, notebooku uložené sítě, kam se lze
připojit bez hesla, smažte je!)
• Omezení počtu pokusů (probereme později)
• HTTPS - https://wordpress.org/plugins/wordpress-https/
• Omezení přístupu k /wp-login.php,
nebo /wp-admin (je však potřeba
udělat výjimky pro admin-ajax.php
a admin-post.php)
13. 6. 2015 14
Do .htaccess:
<Files wp-login.php>
Order Deny,Allow
Deny from All
Allow from x.x.x.x
</Files>
http://mojeip.cz
http://lynt.cz
Cut the crap!
13. 6. 2015 15
http://můj-webík.cz/?p=1 => Ahoj všichni! - povolené komentáře!
http://můj-webík.cz/?p=2 => Zkušební stránka – povolené komentáře!
http://lynt.cz
Cut the crap!
13. 6. 2015 16
Pluginy:
- Potřebuji neaktivní pluginy? (mohou obsahovat chyby)
- Potřebuji opravdu všechny aktivní pluginy? Vím, co dělají? Nejsou duplicitní?
Šablony:
- Vhodné nechat jen aktivní šablonu a jednu základní (např. twenty fifteen)
- Při odstraňování pozor na zděděné šablony (child themes), je třeba ponechat
rodičovskou
- Podrobnosti šablony:
Nejste si jisti, co jaký
plugin dělá? Zeptejte se
svého vývojáře
http://lynt.cz
Co mohou externí uživatelé?
Registrovat se?
Nastavení – Obecné:
13. 6. 2015 17
Vkládat komentáře?
Nastavení – Komentáře:
Změna se neaplikuje na již vytvořené stránky a příspěvky! (Ahoj všichni!, Zkušební stránka)
http://lynt.cz
Hromadné zakázání
komentářů u existujícího obsahu
13. 6. 2015 18
http://lynt.cz
Já ale komentáře chci!
• Schvalování
• AntiSpam plugin
– Akismet – provádí analýzu obsahu příspěvku (pro
nekomerční použití za libovolný poplatek – i nulový)
– NoSpamNX – přidává do formuláře nástrahy
• Kontrola, zda byl komentář opravdu vložen ze stránek
– Umí různé bezpečnostní pluginy, ukážeme si dále
13. 6. 2015 19
Externí řešení např. https://disqus.com/
http://lynt.cz
Aktualizace
„Aktualizace jsou u opensource řešení zásadní“
Jádro – aktualizuje se automaticky v minoritních verzích (např. 4.2.x),
většinou bez problémů. Major verze je třeba aktualizovat ručně (lze to
nechat ale i na automatice).
Jakou verzi používám? Vhodné verze: 4.2.2, 4.1.5., 4.0.5, 3.9.5 (3.8.8, 3.7.8). V patičce v administraci:
Pluginy – kvalita je různá, často obsahují bezpečnostní chyby, lze
updatovat automaticky, ale je riziko, že něco fungovat nebude.
Šablony – problém s aktualizací, pokud se dělají úpravy v originální
šabloně => child themes; některé prémiové obsahují další pluginy!
13. 6. 2015 20
http://lynt.cz
Jak si zjednodušit aktualizaci
• Notifikace o dostupných aktualizacích na mail:
– WP Updates Notifier
– Funkce bezpečnostních pluginů (např. WordFence)
• Hromadná správa
– ManageWP – základní verze do 5 stránek zdarma
– WP Remote – méně funkcí, zdarma neomezeně
– iThemes Sync – do 10 stránek zdarma
– InfiniteWP – řešení na vlastním serveru
13. 6. 2015 21
http://lynt.cz
WP Updates Notifier
13. 6. 2015 22
Nastavení – Updates notifier
(základní nastavení je ok)
http://lynt.cz
Checklist – co potřebujeme
Nastavit správná práva uživatelům
Silná hesla
Odstranění zbytečností
Blokace spamu
• Omezení chybných přihlášení (Brute force)
• Informace o aktualizacích a problémech
• Blokace známých útoků
• Zálohování
13. 6. 2015 23
http://lynt.cz
Tipy pro pluginy a šablony
• Používat pouze ověřené zdroje - wordpress.org, codecanyon, themeforest
(nikdy torrent, uloz.to a podobné, warez fóra, nulled plugins)
• Neupravovat šablony přímo – použít child theme nebo změny provést ve
vlastním pluginu
• Ověřit, zda nemám známé zranitelné pluginy:
– https://wordpress.org/plugins/plugin-vulnerabilities/
13. 6. 2015 24
http://lynt.cz
Bezpečnostní plugin
13. 6. 2015 25
https://wordpress.org/plugins/wordfence/
http://lynt.cz
WordFence – po instalaci
13. 6. 2015 26
Level 2: začne posílat více upozornění, snižují se limity chybných přihlášení
Level 3: začínají se uplatňovat omezení provozu
Level 4: okamžitě blokuje neplatná jména
http://lynt.cz
WordFence – Live Traffic
13. 6. 2015 27
http://lynt.cz
WordFence – detekce změn
13. 6. 2015 28
http://lynt.cz
WordFence - notifikace
13. 6. 2015 29
Mohou to zkoušet útočníci,
kteří získali přístup k mailu
uživatele.
Čím více reálný uživatel
hesla zapomíná, tím
jednodušší nová nastavuje.
http://lynt.cz
WordFence - notifikace
13. 6. 2015 30
Přihlásil se někdo s administrátorským přístupem:
This email was sent from your website "#### " by the Wordfence plugin at Tuesday 9th of June 2015 at
08:46:14 AM
The Wordfence administrative URL for this site is: https://####.eu/wp-admin/admin.php?page=Wordfence
A user with username "####" who has administrator access signed in to your WordPress site.
User IP: ##.##.##.##
User hostname: ####
User location: Pilsen, Czech Republic
Je dostupný update:
This email was sent from your website „####" by the Wordfence plugin.
Wordfence found the following new issues on "####".
Alert generated at Wednesday 3rd of June 2015 at 05:40:42 PM
Critical Problems:
* The Plugin "ManageWP - Worker" needs an upgrade.
Změnil se soubor:
This email was sent from your website "####" by the Wordfence plugin.
Wordfence found the following new issues on "####".
Alert generated at Wednesday 27th of May 2015 at 01:47:13 PM
Warnings:
* Modified plugin file: wp-content/plugins/block-bad-queries/block-bad-queries.php
http://lynt.cz
WordFence – omezování provozu
13. 6. 2015 31
Bezpečné intervaly pro většinu použití, lze zpřísňovat
http://lynt.cz
WordFence – bezpečnost přihlášení
13. 6. 2015 32
http://lynt.cz
WordFence – další nastavení
13. 6. 2015 33
http://mojeip.cz
http://lynt.cz
WordFence – další nastavení
13. 6. 2015 34
http://lynt.cz
WordFence Premium – Country blocking
13. 6. 2015 35
http://lynt.cz
BBQ: Bad Block Queries
• WordFence poskytuje aktivní ochranu a
blokuje nevhodné chování
• Jako prevenci lze přidat i blokaci dotazů, které
se často používají k útokům
• https://wordpress.org/plugins/block-bad-
queries/
• Malý plugin bez konfigurace
• Doplněk pro vyladění - https://github.com/LyntServices/bbq-gui
13. 6. 2015 36
http://lynt.cz
Zálohování
„Zálohování je alfou a omegou práce na počítači“
13. 6. 2015 37
• Zálohování poskytuje většina webhosterů v rámci webhostingu.
• Je vhodné ale mít vlastní systém záloh.
• Ruční zálohování: zkopírování obsahu FTP a export databáze.
• Zálohování pluginem
• Lze nastavit pravidelné automatické zálohování
• BackWPup, BackupBuddy
Zjistěte si od svého
webhostera, jak řeší
zálohování.
http://lynt.cz
Zálohovací plugin BackWPup
13. 6. 2015 38
https://wordpress.org/plugins/backwpup/
Čeština: https://github.com/lynt-smitka/BackWPup-CZ
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 39
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 40
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 41
Kam zálohovat?
Do složky na serveru
- Ztracením přístupu přijdu i o zálohy
- Je třeba ošetřit, aby se k souboru
zálohy nikdo nedostal
Emailem
- Pokud se mi někdo nabourá do
mailu, získá zálohy
- Přenáší se nezabezpečeně
FTP
- Měl by se použít vyhrazený FTP
účet jen pro tento účel (heslo je
uložené ve WP)
- Přenáší se nezabezpečeně
Externí služby (Dropbox)
- Dobrá volba
- Opět je třeba zajistit, aby uložiště
bylo pouze k jednomu účelu
(Dropbox app – přistup pouze do
jedné složky)
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 42
Jak často zálohovat?
Je vhodné mít zálohy minimálně
měsíc zpětně => je třeba zvolit
interval podle velikosti úložiště.
Denním zálohováním by tedy mělo
být uloženo alespoň 30 záloh, nebo
týdenním alespoň 4 zálohy.
Dobrá metoda je nastavit více úloh:
1. Denní zálohu DB
2. Týdenní zálohu souborů
Jak zálohu spuštět?
WP-cron – funguje pouze když je na
webu návštěvnost.
Speciální odkaz – lze vložit do cron
na serveru nebo využít službu typu
https://www.easycron.com
=> Je jistota, že se záloha provede
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 43
_wfX - tabulky WordFence,
mimo _wfConfig není třeba
zálohovat
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 44
Zde je možné zašrtnout
např. složky cache pluginů:
wfcache
cache
w3tc
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 45
Ušetří trochu místa, po
obnově je třeba
přegenerovat náhledy:
https://wordpress.org/plugi
ns/regenerate-thumbnails/
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 46
Nastavit vhodný počet záloh
dle dostupné velikosti a
intervalu záloh
http://lynt.cz
Nastavení BackWPup
13. 6. 2015 47
Nechceme zpřístupnit celý
náš Dropbox, využijeme App
http://lynt.cz
Checklist – co potřebujeme
Nastavit správná práva uživatelům
Silná hesla
Odstranění zbytečností
Blokace spamu
Omezení chybných přihlášení (Brute force)
Informace o aktualizacích a problémech
Blokace známých útoků
Zálohování
13. 6. 2015 48
http://lynt.cz
Co udělat po útoku?
• Obnova ze zálohy (smazat infikovaný web a DB)
• Odstranění příčiny (často aktualizace)
• Změna hesla na FTP
• Změna hesla do DB
• Změna hesel uživatelů
• Nové šifrovací klíče do wp-config.php:
https://api.wordpress.org/secret-key/1.1/salt/
• Kontrola souborů pluginem (Wordfence, Sucuri
Scanner)
13. 6. 2015 49
http://lynt.cz
Co udělat zítra?
□ Zkontrolovat práva uživatelů
□ Zkontrolovat, zda nemám zranitelné pluginy
□ Smazat pluginy, co nepoužívám/byly jen k
jednorázové činnosti
□ Smazat zbytečné šablony (nechat jen jednu
výchozí z instalace a případně rodičovskou)
□ Aktualizovat, co lze
□ Zazálohovat
13. 6. 2015 50
http://lynt.cz
A to je vše, přátelé.
13. 6. 2015 51
Přečtěte si, jak je na tom WordPress v České republice:
http://lynt.cz/blog/wordpress-v-cz-velky-pruzkum
Podívejte se na mé předchozí přednášky o bezpečnosti:
http://edu.lynt.cz/

Bezpečnost WordPress pro začátečníky

  • 1.
    http://lynt.cz Bezpečnost WordPressu pro začátečníky VláďaSmitka vladimir.smitka@lynt.cz @smitka Lynt services s.r.o. @LyntCz 13. 6. 2015 1
  • 2.
    http://lynt.cz13. 6. 20152 Síťová infrastruktura • Servery • Firewally • WiFi • … Webová řešení • Informační systémy • Webové stránky • E-shopy On-line marketing • PPC • Analytika • SEO Jakub Kašparů Právě teď přednáší na BarCampu v Českých Budějovicích o systému práce s PPC Vláďa Smitka 14 let v sítích a webovém vývoji
  • 3.
    http://lynt.cz Minislovníček HTTP – protokol,který přenáší obsah stránek, požadavek - odpověď HTTPS – HTTP přenášené šifrovaně s SSL certifikátem (brání odposlechnutí komunikace) PHP – programovací jazyk, který generuje stránku na serveru MySQL – databázový systém, jsou zde uloženy nastavení webu a jeho obsah (články) JavaScript – programovací jazyk, který běží v prohlížeči (jsou v něm dělány např. různé efekty) AJAX – funkcionalita JavaScriptu, která umožňuje komunikaci se serverem bez přenačtení stránky, často je zneužitá k útokům .htaccess – soubor, ve kterém lze upravit vlastnosti webového serveru (např. zakázat přístup ke konkrétním souborům, přesměrovávat, nastavovat PHP), úpravy mohou znefunkčnit web wp-config.php – soubor, ve kterém je uloženo základní nastavení WP (připojení k databázi, šifrovací klíče, adresa stránek), častý cíl hackerů Query parameter – část adresy za ? - http://můj-webík.cz/?page_id=2 – aplikaci se tak předávají různé parametry, lze je zneužít, pokud není aplikace dobře napsána SQL injection (SQLi) – typ útoku, který pozmění dotaz do databáze a získá tak citlivé informace XSS – typ útoku, který umožní na stránce spustit cizí JavaScript (například přes komentáře) CSRF – typ útoku, který prostřednictvím uživatele vykoná požadavek pocházející z cizího zdroje (donutí uživatele kliknout na odkaz, který vede do administrace a tam něco provede) 13. 6. 2015 3
  • 4.
    http://lynt.cz Na co sednes podíváme? • Uživatelská práva ve WP • Zjednodušení aktualizace • Bezpečnostní plugin WordFence • Zálohovací plugin BackWPup • Co udělat po útoku? „Každý bude dříve či později řešit bezpečnostní incident, je dobré být připraven!“ • Budu se snažit neupravovat soubory WordPressu a .htaccess 13. 6. 2015 4
  • 5.
    http://lynt.cz Checklist – copotřebujeme • Nastavit správná práva uživatelům • Silná hesla • Odstranění zbytečností • Blokace spamu • Omezení chybných přihlášení (Brute force) • Informace o aktualizacích a problémech • Blokace známých útoků • Zálohování 13. 6. 2015 5
  • 6.
    http://lynt.cz Kdo tvořil webpřed 5 lety? 13. 6. 2015 6
  • 7.
    http://lynt.cz Kdo tvoří webdnes? 13. 6. 2015 7
  • 8.
    http://lynt.cz Uživatelé 13. 6. 20158 Vyčítání uživatelských jmen: http://naswp.cz/?author=2 => http://naswp.cz/author/bigdrobek/ ???!! Lákavý cíl Potřebuje admin práva? Zřejmě nepoužívaný Používejte reálná jména, ať víte kdo uživatelé opravdu jsou.
  • 9.
    http://lynt.cz Práva uživatelů 13. 6.2015 9 • Návštěvník (Subscriber) – Může pouze číst obsah, editovat svůj profil. Má jednodušší práci s komentáři. • Spolupracovník (Contributor) – Může psát nové příspěvky, ale publikovat je může až Admin nebo Šéfredaktor. Nemá přístup do galerie médií (může ale vkládat obrázky z externích zdrojů) – guest blogging. • Redaktor (Author) – Může spravovat své příspěvky včetně správy komentářů, nahrávat soubory do galerie médií. Nemůže pracovat se stránkami. • Šéfredaktor (Editor) – Může spravovat veškerý obsah – příspěvky, stránky, komentáře, kategorie, v jeho komentářích může být javascript. • Administrátor (Administrator) – Může spravovat vše – obsah, pluginy, šablony, widgety. • SuperAdministrátor (pro WP multisite) – spravuje síť webů
  • 10.
    http://lynt.cz Jak přejmenovat uživateleadmin 1. Vytvořit nového uživatele s právy Administrátora 2. Přihlásit se na nového uživatele 3. Smazat původního uživatele admin 4. Příspěvky přesunout pod nového uživatele 13. 6. 2015 10
  • 11.
    http://lynt.cz Hesla 1. admin 2. heslo 3.karel91 4. Admin1234 5. mamradsvickovouomackusknedlikem 6. 2dfsg*jrkKR!R6Htt5Kh 13. 6. 2015 11 Používejte správce hesel – silnější hesla s menším úsilím.
  • 12.
    http://lynt.cz Správce hesel 13. 6.2015 12 KeePass http://keepass.info/
  • 13.
    http://lynt.cz Správce hesel 13. 6.2015 13 Alternativa: LastPass https://lastpass.com/cs/
  • 14.
    http://lynt.cz Přihlašování • Nepřipojovat sez neznámých sítí (pokud máte v mobilu, tabletu, notebooku uložené sítě, kam se lze připojit bez hesla, smažte je!) • Omezení počtu pokusů (probereme později) • HTTPS - https://wordpress.org/plugins/wordpress-https/ • Omezení přístupu k /wp-login.php, nebo /wp-admin (je však potřeba udělat výjimky pro admin-ajax.php a admin-post.php) 13. 6. 2015 14 Do .htaccess: <Files wp-login.php> Order Deny,Allow Deny from All Allow from x.x.x.x </Files> http://mojeip.cz
  • 15.
    http://lynt.cz Cut the crap! 13.6. 2015 15 http://můj-webík.cz/?p=1 => Ahoj všichni! - povolené komentáře! http://můj-webík.cz/?p=2 => Zkušební stránka – povolené komentáře!
  • 16.
    http://lynt.cz Cut the crap! 13.6. 2015 16 Pluginy: - Potřebuji neaktivní pluginy? (mohou obsahovat chyby) - Potřebuji opravdu všechny aktivní pluginy? Vím, co dělají? Nejsou duplicitní? Šablony: - Vhodné nechat jen aktivní šablonu a jednu základní (např. twenty fifteen) - Při odstraňování pozor na zděděné šablony (child themes), je třeba ponechat rodičovskou - Podrobnosti šablony: Nejste si jisti, co jaký plugin dělá? Zeptejte se svého vývojáře
  • 17.
    http://lynt.cz Co mohou externíuživatelé? Registrovat se? Nastavení – Obecné: 13. 6. 2015 17 Vkládat komentáře? Nastavení – Komentáře: Změna se neaplikuje na již vytvořené stránky a příspěvky! (Ahoj všichni!, Zkušební stránka)
  • 18.
    http://lynt.cz Hromadné zakázání komentářů uexistujícího obsahu 13. 6. 2015 18
  • 19.
    http://lynt.cz Já ale komentářechci! • Schvalování • AntiSpam plugin – Akismet – provádí analýzu obsahu příspěvku (pro nekomerční použití za libovolný poplatek – i nulový) – NoSpamNX – přidává do formuláře nástrahy • Kontrola, zda byl komentář opravdu vložen ze stránek – Umí různé bezpečnostní pluginy, ukážeme si dále 13. 6. 2015 19 Externí řešení např. https://disqus.com/
  • 20.
    http://lynt.cz Aktualizace „Aktualizace jsou uopensource řešení zásadní“ Jádro – aktualizuje se automaticky v minoritních verzích (např. 4.2.x), většinou bez problémů. Major verze je třeba aktualizovat ručně (lze to nechat ale i na automatice). Jakou verzi používám? Vhodné verze: 4.2.2, 4.1.5., 4.0.5, 3.9.5 (3.8.8, 3.7.8). V patičce v administraci: Pluginy – kvalita je různá, často obsahují bezpečnostní chyby, lze updatovat automaticky, ale je riziko, že něco fungovat nebude. Šablony – problém s aktualizací, pokud se dělají úpravy v originální šabloně => child themes; některé prémiové obsahují další pluginy! 13. 6. 2015 20
  • 21.
    http://lynt.cz Jak si zjednodušitaktualizaci • Notifikace o dostupných aktualizacích na mail: – WP Updates Notifier – Funkce bezpečnostních pluginů (např. WordFence) • Hromadná správa – ManageWP – základní verze do 5 stránek zdarma – WP Remote – méně funkcí, zdarma neomezeně – iThemes Sync – do 10 stránek zdarma – InfiniteWP – řešení na vlastním serveru 13. 6. 2015 21
  • 22.
    http://lynt.cz WP Updates Notifier 13.6. 2015 22 Nastavení – Updates notifier (základní nastavení je ok)
  • 23.
    http://lynt.cz Checklist – copotřebujeme Nastavit správná práva uživatelům Silná hesla Odstranění zbytečností Blokace spamu • Omezení chybných přihlášení (Brute force) • Informace o aktualizacích a problémech • Blokace známých útoků • Zálohování 13. 6. 2015 23
  • 24.
    http://lynt.cz Tipy pro pluginya šablony • Používat pouze ověřené zdroje - wordpress.org, codecanyon, themeforest (nikdy torrent, uloz.to a podobné, warez fóra, nulled plugins) • Neupravovat šablony přímo – použít child theme nebo změny provést ve vlastním pluginu • Ověřit, zda nemám známé zranitelné pluginy: – https://wordpress.org/plugins/plugin-vulnerabilities/ 13. 6. 2015 24
  • 25.
    http://lynt.cz Bezpečnostní plugin 13. 6.2015 25 https://wordpress.org/plugins/wordfence/
  • 26.
    http://lynt.cz WordFence – poinstalaci 13. 6. 2015 26 Level 2: začne posílat více upozornění, snižují se limity chybných přihlášení Level 3: začínají se uplatňovat omezení provozu Level 4: okamžitě blokuje neplatná jména
  • 27.
    http://lynt.cz WordFence – LiveTraffic 13. 6. 2015 27
  • 28.
  • 29.
    http://lynt.cz WordFence - notifikace 13.6. 2015 29 Mohou to zkoušet útočníci, kteří získali přístup k mailu uživatele. Čím více reálný uživatel hesla zapomíná, tím jednodušší nová nastavuje.
  • 30.
    http://lynt.cz WordFence - notifikace 13.6. 2015 30 Přihlásil se někdo s administrátorským přístupem: This email was sent from your website "#### " by the Wordfence plugin at Tuesday 9th of June 2015 at 08:46:14 AM The Wordfence administrative URL for this site is: https://####.eu/wp-admin/admin.php?page=Wordfence A user with username "####" who has administrator access signed in to your WordPress site. User IP: ##.##.##.## User hostname: #### User location: Pilsen, Czech Republic Je dostupný update: This email was sent from your website „####" by the Wordfence plugin. Wordfence found the following new issues on "####". Alert generated at Wednesday 3rd of June 2015 at 05:40:42 PM Critical Problems: * The Plugin "ManageWP - Worker" needs an upgrade. Změnil se soubor: This email was sent from your website "####" by the Wordfence plugin. Wordfence found the following new issues on "####". Alert generated at Wednesday 27th of May 2015 at 01:47:13 PM Warnings: * Modified plugin file: wp-content/plugins/block-bad-queries/block-bad-queries.php
  • 31.
    http://lynt.cz WordFence – omezováníprovozu 13. 6. 2015 31 Bezpečné intervaly pro většinu použití, lze zpřísňovat
  • 32.
    http://lynt.cz WordFence – bezpečnostpřihlášení 13. 6. 2015 32
  • 33.
    http://lynt.cz WordFence – dalšínastavení 13. 6. 2015 33 http://mojeip.cz
  • 34.
    http://lynt.cz WordFence – dalšínastavení 13. 6. 2015 34
  • 35.
    http://lynt.cz WordFence Premium –Country blocking 13. 6. 2015 35
  • 36.
    http://lynt.cz BBQ: Bad BlockQueries • WordFence poskytuje aktivní ochranu a blokuje nevhodné chování • Jako prevenci lze přidat i blokaci dotazů, které se často používají k útokům • https://wordpress.org/plugins/block-bad- queries/ • Malý plugin bez konfigurace • Doplněk pro vyladění - https://github.com/LyntServices/bbq-gui 13. 6. 2015 36
  • 37.
    http://lynt.cz Zálohování „Zálohování je alfoua omegou práce na počítači“ 13. 6. 2015 37 • Zálohování poskytuje většina webhosterů v rámci webhostingu. • Je vhodné ale mít vlastní systém záloh. • Ruční zálohování: zkopírování obsahu FTP a export databáze. • Zálohování pluginem • Lze nastavit pravidelné automatické zálohování • BackWPup, BackupBuddy Zjistěte si od svého webhostera, jak řeší zálohování.
  • 38.
    http://lynt.cz Zálohovací plugin BackWPup 13.6. 2015 38 https://wordpress.org/plugins/backwpup/ Čeština: https://github.com/lynt-smitka/BackWPup-CZ
  • 39.
  • 40.
  • 41.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 41 Kam zálohovat? Do složky na serveru - Ztracením přístupu přijdu i o zálohy - Je třeba ošetřit, aby se k souboru zálohy nikdo nedostal Emailem - Pokud se mi někdo nabourá do mailu, získá zálohy - Přenáší se nezabezpečeně FTP - Měl by se použít vyhrazený FTP účet jen pro tento účel (heslo je uložené ve WP) - Přenáší se nezabezpečeně Externí služby (Dropbox) - Dobrá volba - Opět je třeba zajistit, aby uložiště bylo pouze k jednomu účelu (Dropbox app – přistup pouze do jedné složky)
  • 42.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 42 Jak často zálohovat? Je vhodné mít zálohy minimálně měsíc zpětně => je třeba zvolit interval podle velikosti úložiště. Denním zálohováním by tedy mělo být uloženo alespoň 30 záloh, nebo týdenním alespoň 4 zálohy. Dobrá metoda je nastavit více úloh: 1. Denní zálohu DB 2. Týdenní zálohu souborů Jak zálohu spuštět? WP-cron – funguje pouze když je na webu návštěvnost. Speciální odkaz – lze vložit do cron na serveru nebo využít službu typu https://www.easycron.com => Je jistota, že se záloha provede
  • 43.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 43 _wfX - tabulky WordFence, mimo _wfConfig není třeba zálohovat
  • 44.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 44 Zde je možné zašrtnout např. složky cache pluginů: wfcache cache w3tc
  • 45.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 45 Ušetří trochu místa, po obnově je třeba přegenerovat náhledy: https://wordpress.org/plugi ns/regenerate-thumbnails/
  • 46.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 46 Nastavit vhodný počet záloh dle dostupné velikosti a intervalu záloh
  • 47.
    http://lynt.cz Nastavení BackWPup 13. 6.2015 47 Nechceme zpřístupnit celý náš Dropbox, využijeme App
  • 48.
    http://lynt.cz Checklist – copotřebujeme Nastavit správná práva uživatelům Silná hesla Odstranění zbytečností Blokace spamu Omezení chybných přihlášení (Brute force) Informace o aktualizacích a problémech Blokace známých útoků Zálohování 13. 6. 2015 48
  • 49.
    http://lynt.cz Co udělat poútoku? • Obnova ze zálohy (smazat infikovaný web a DB) • Odstranění příčiny (často aktualizace) • Změna hesla na FTP • Změna hesla do DB • Změna hesel uživatelů • Nové šifrovací klíče do wp-config.php: https://api.wordpress.org/secret-key/1.1/salt/ • Kontrola souborů pluginem (Wordfence, Sucuri Scanner) 13. 6. 2015 49
  • 50.
    http://lynt.cz Co udělat zítra? □Zkontrolovat práva uživatelů □ Zkontrolovat, zda nemám zranitelné pluginy □ Smazat pluginy, co nepoužívám/byly jen k jednorázové činnosti □ Smazat zbytečné šablony (nechat jen jednu výchozí z instalace a případně rodičovskou) □ Aktualizovat, co lze □ Zazálohovat 13. 6. 2015 50
  • 51.
    http://lynt.cz A to jevše, přátelé. 13. 6. 2015 51 Přečtěte si, jak je na tom WordPress v České republice: http://lynt.cz/blog/wordpress-v-cz-velky-pruzkum Podívejte se na mé předchozí přednášky o bezpečnosti: http://edu.lynt.cz/