„Proč je nutné provádět aktualizaci WordPressu? Nehrozí, že update WordPressu bude nekompatibilní s pluginy? Nejsme specialisti na váš obor, z našeho pohledu chceme mít klid a řešit svou práci a nezabývat se aktualizacemi.“ Takové a podobné otázky jsou zcela na místě. Pojďme se tedy vysvětlit, co jsou aktualizace a proč je nutné je provádět a instalovat.
Vývojový cyklus WordPressu
Web postavený na WordPressu se skládá ze tři typů „součástek“: je to hlavní software, redakční systém WordPress, pak jsou to jeho doplňující komponenty – pluginy (čteme [pluginy] ne „plužiny“, česky někdy zásuvné moduly) a témata vzhledu (template, čteme [templejt], česky také šablony). Každá z těchto komponent je různě aktivním způsobem vyvíjena. WordPress v současné době vychází v několika větvích – jedna je hlavní (4.5), další pak opravné verze (4.5.3).
Hlavní verze se objevuje každý duben, srpen a prosinec – kompletní přehled najdete na této stránce. Opravné verze se objevují, když jsou potřeba, někdy i dvě za sebou během 14 dnů. Existují také zpětné opravné verze, to jsou opravy chyb pro starší verze (udržuje se předchozí hlavní řada). Je to nutné z hlediska bezpečnosti, konzervativní uživatelé mohou používat starší verze záměrně, mohou je považovat za odladěné a bezpečnější. Takže když vyjde oprava typu 4.5.3, objeví se stejné opravy chyb také pro starší řadu 4.4, tedy např. 4.4.2.
Jak je to s pluginy a tématy vzhledu
Pluginy a témata vzhledu, které pocházejí z úložiště na wordpress.org, prošly a procházejí určitým základním bezpečnostním auditem, aby se nestalo, že budou pro uživatele nebezpečné. Jejich vývoj je samozřejmě v rukou jejich autora, ale pokud uživatelé nahlásí závažnou chybu, správci úložiště reagují a aktivně se podílejí na jejím odstranění. Pokud by autor nespolupracoval, tento doplněk může být v krajním případě vyřazen z katalogu jako nebezpečný. Většinou je ale opraven velmi rychle a uživatelé uvidí ve svém WordPressu informaci, že je nutné plugin/šablonu aktualizovat.
V tomto ohledu jsou velmi nebezpečné pluginy a šablony z různých tržišť, kde si za pár dolarů můžete koupit plugin na cokoliv nebo úžasnou designovou šablonu. Důvěřujete autorovi, že jeho kód vykonává, co potřebujete a že jeho doplněk váš web nijak nepoškodí. Při nákupu nicméně vybírejte jen ověřené dodavatele (tzn. aktivního jak ve vývoji, tak v komunikaci se zákazníky), ujistěte se, že doplněk prošel nějakým bezpečnostním testem (vyhledejte Googlem název pluginu/šablony + security) a nenakupujte na neznámých webech.
Bohužel zde neplatí úměra, že co je populární, je nejlepší – tedy nejkvalitnější, nejbezpečnější a nejvýhodnější. Lidé milují Revolution Slider, stejně jako tvůrci šablon, kteří ho zakomponovali do svých produktů. Jenže je to nejhorší kousek mezi pluginy, co se bezpečnosti týká. Uvádí se například, že kauza Panama papers začala právě tímto pluginem:
- Wordfence.com: Panama Papers: Email Hackable via WordPress, Docs Hackable via Drupal
- Sucuri: Slider Revolution Plugin Critical Vulnerability Being Exploited
Tím se dostáváme ke skrytému nebezpečí, které představuje vážný bezpečnostní problém.
Skryté riziko: Neohlášené aktualizace
Pluginy a šablony, které si koupíte na některém z tržišť (CodeCanyon.com, Envato a další) je totiž nutné aktivovat s platným licenčním kódem, abyste byli informováni o jeho aktualizacích. Licence obvykle platí na rok a jeden web. Často se setkáváme s tím, že platnost licence skončí a majitel webu ji neprodlouží, protože nevidí důvod. Plugin či šablona stále funguje, lze ušetřit pár desítek dolarů (podporu přece nepotřebujeme, když vše funguje) a vlastně jsme všichni spokojení.
Je to falešný pocit. Plugin nebo šablona totiž často nehlásí nové verze a vy tak netušíte, že máte na webu kukaččí vejce – tedy velkou bezpečnostní díru. Odpovědný dodavatel vydává nové verze třeba každé tři měsíce. Pokud doplněk neaktualizujete třeba rok, vystavujete se obrovskému riziku. V kombinaci s nefunkčními zálohami vašeho webu se jedná o hodně hořký koktejl, který na vás jako majitele webu čeká.
Extra zákeřnou specialitou jsou pluginy, které jste koupili jako součást šablony, např. onen uvedený Revolution Slider. Je možné ho sublicencovat, což ale znamená, že k němu v takovém případě nedostanete podporu ani aktualizace! V praxi to znamená, že si koupíte šablonu za 59 dolarů, jejíž součástí je také např. Revolution Slider bez zajištěných aktualizací. Zatímco šablona se řádně aktualizuje a má podporu, v ní vložený slider nikoliv. Neupozorňuje na nové dostupné verze, protože je do šablony zabudovaný a ani ho aktualizovat nelze. Pokud si ho koupíte zvlášť i s podporou, je možné, že šablona s touto verzí odmítne spolupracovat, protože potřebovala onu původní upravenou verzí.
Nechci měnit aktuální stav webu, vyhovuje mi to
Můžete si také říct, že nechcete měnit nastavení webu a aktualizovat pluginy, protože by mohly přidávat nové funkce. Připadá vám, že vám autor pluginu vnucuje něco, co se vám nehodí a rádi byste ponechali současný stav. Uvedu příklad z praxe.
Na webu, kde běží WooCommerce, je použita poměrně zastaralá šablona, která už nemá aktualizace. E-shop si vede velmi dobře a v systému je několik pluginů pro podporu prodeje – remarketing, provizní systém, enhanced e-commerce (tedy sledování nákupního chování zákazníka) a plugin vkládající značky Google Tag Manager. Zákazník nám volal, že přestalo fungovat tlačítko, které v košíku umožňuje měnit množství objednaných produktů. Jeho zákazníci pak nabyli dojmu, že tlačítko je tam jen naoko a ve skutečnosti jim e-shop zamezuje měnit počet produktů, tedy že jimi někdo manipuluje. Z toho důvodu bylo potřeba chování tlačítka opravit.
Jenže kde hledat chybu? Šablona už aktualizace nemá a který z desítky specializovaných pluginů může být napojen na toto tlačítko a proč? Jak dlouho to nefunguje a jak zjistíme příčinu
Byl to Google Tag Manager, jehož předchozí aktualizace stav zapříčinila a nová aktualizace zase opravila. Tato chyba byla přímo uvedena v poznámkách k aktualizaci. Autoři pluginu prostě udělali chybu, tak vydali novou opravnou verzi, která chybu odstranila. Tak celý systém funguje. Nemá cenu na něco čekat, stav ignorovat nebo předstírat, že v softwaru chyby nejsou. Jsou a jsou jeho součástí, je potřeba s nimi pracovat.
Proč je tedy nutné aktualizovat?
Z textu by měly vyplynout následující důvody, proč je nezbytné redakční systém a komponenty aktualizovat:
- Odstranění chyb a bezpečnostních rizik, která mohou ohrozit vaše data nebo zneužít váš web pro další útoky (rozesílání spamu). Pro vás by to měl být hlavní a dominantní důvod, protože pouze aktualizovaný a funkční web vám může dobře sloužit.
- Nové funkce a vlastnosti, které do aplikací přidávají jejich autoři.
- V globálním pohledu jde o bezpečnost celého internetu, pokud si uvědomíme, že WordPress pohání 4,5 % světových webových stránek (zdroj).
Náš kouzelník říká, že se to nesmí aktualizovat, jinak se to rozbije
Pokud vám zakáže aktualizace – ať už jako doporučení, nebo fyzicky zablokuje jejich provádění – je to špatný kouzelník. Jinými slovy vám říká: Vím, že se prostředí internetu stále mění, na váš web pořád někdo útočí a v softwaru jsou chyby. Ale strčíme hlavu do písku a budeme dělat, že tady nejsme. Všichni okolo si toho všimnou a určitě nás nechají na pokoji, takže náš web bude trvale zabezpečený několik let a nebude třeba se o něj starat. A k tomu nám pomůže Velký Ignorant, ke kterému se teď společně pomodlíme.
Vyměňte kouzelníka.
A pak aktualizujte. Přečtěte si při tom, co všechno patří do měsíční správy WordPressu.