Kdo se stará o váš web? Aktualizace, zálohy, hacknutí

Odpověď hned: Firemní web není hotová věc, ale běžící systém, který bez údržby degraduje: neaktualizovaný redakční systém a pluginy se stávají vstupní branou pro automatizované útoky, expirovaný certifikát nebo doména web položí ze dne na den a hostingová „záloha” často nepřežije právě ten incident, kvůli kterému ji potřebujete. Správa webových stránek znamená čtyři věci pravidelně: aktualizace po záloze, funkční zálohy mimo hosting, monitoring dostupnosti a kontrolu, že web nešíří malware nebo SEO spam. Pokud dnes neumíte odpovědět, kdo má přístupy k webu a kdy proběhla poslední ověřená záloha, nikdo se o váš web nestará.

Většina firemních webů vznikla jako projekt: někdo je postavil, předal, vyfakturoval — a tím to skončilo. Web pak roky „nějak funguje”, dokud jednoho dne nefunguje. Přestane odesílat poptávkový formulář, začne v Googlu nabízet japonské repliky hodinek, nebo prostě zmizí i s hostingem. Tenhle text popisuje, co se s neudržovaným webem reálně děje, jak poznáte, že je hacknutý, a co konkrétně obnáší měsíční správa webu, když se dělá pořádně.

Web se kazí, i když na něj nikdo nesahá

To je pro majitele firem nejméně intuitivní část. Auto chátrá, když s ním jezdíte. Web chátrá, i když s ním neděláte vůbec nic — protože se mění všechno kolem něj.

Neaktualizovaný WordPress a pluginy

Velká část firemních webů v Česku běží na WordPressu nebo podobném redakčním systému. Samotné jádro WordPressu je udržované slušně; skutečný problém jsou pluginy a šablony. Typický firemní web jich má nainstalovaných deset až třicet — formuláře, galerie, page builder, SEO plugin, zálohování, cookie lišta. Každý z nich je kód od jiného autora, s jinou kvalitou údržby, a každý může obsahovat zranitelnost.

Zveřejněná zranitelnost v rozšířeném pluginu funguje jako startovní výstřel. Útočníci neprocházejí weby ručně — automatizované skenery prohledávají internet a hledají weby se zranitelnou verzí. Nikdo si váš web „nevybral”. Byl jen na seznamu adres, kde stará verze pluginu odpověděla.

K tomu přičtěte PHP, tedy jazyk, ve kterém WordPress běží. Starší verze PHP postupně přestávají dostávat bezpečnostní záplaty, hostingy je dříve či později vypínají — a web, který nikdo neudržoval, se v ten moment buď rozbije, nebo zůstane běžet na verzi bez záplat. Obojí je špatně, jen každé jinak rychle.

Certifikát, doména, hosting

Vedle kódu má web i provozní závislosti, na které se zapomíná ještě snáz:

  • HTTPS certifikát. Certifikáty Let’s Encrypt platí 90 dní a obnovují se automaticky — dokud automatika funguje. Když se rozbije, prohlížeče začnou návštěvníkům ukazovat celostránkové varování a poptávky se zastaví ten den.
  • Doména. Expirace domény znamená, že web i firemní e-maily přestanou existovat. Obnova bývá možná, ale ochranná lhůta není nekonečná a účet u registrátora často vedl někdo, kdo už ve firmě není.
  • Hosting. Faktura chodí na e-mail bývalého zaměstnance, přístupy zná agentura, která už neexistuje. Dokud se platí kartou automaticky, nikdo si problému nevšimne — do první zamítnuté platby.

Tohle nejsou katastrofické scénáře, ale běžná praxe. Poznáme to pokaždé, když od nové firmy přebíráme IT: seznam přístupů k webu je první věc, která chybí. Stejný vzorec — infrastruktura, o které nikdo neví, kdo ji vlastně spravuje — potkáváme i ve firemních sítích, jak popisujeme v článku o auditu počítačové sítě a kabeláže.

Jak poznáte, že je web hacknutý

Hollywoodská představa hacknutého webu je zčernalá stránka s lebkou. Realita je nenápadnější a horší: dnešní útoky se snaží, abyste si ničeho nevšimli co nejdéle. Hacknutý firemní web má pro útočníka hodnotu, jen dokud funguje — rozesílá spam, hostuje phishing, nebo parazituje na vaší pozici ve vyhledávání.

SEO spam: parazit, kterého v prohlížeči nevidíte

Nejčastější podoba, se kterou se u malých firemních webů setkáte, je SEO spam. Útočník do webu vloží tisíce vygenerovaných stránek — typicky nabídky padělků, léků nebo hazardu — a využije důvěryhodnost vaší domény k tomu, aby se umístily ve vyhledávání. Známý je takzvaný „japanese keyword hack”, kdy se výsledky vyhledávání pro váš web zaplní japonským textem.

Zákeřné je, že spam bývá maskovaný technikou zvanou cloaking: vyhledávači se podstrčí spamový obsah, běžnému návštěvníkovi normální stránka. Majitel se na svůj web podívá, vypadá v pořádku — a mezitím Google indexuje tisíce podvržených stránek. Proto se na hack často přijde až přes důsledky:

  • ve výsledcích vyhledávání se u webu objeví cizí jazyk nebo nesmyslné produkty;
  • Google Search Console (pokud ji má kdo číst) hlásí skokový nárůst indexovaných stránek nebo ruční akci;
  • prohlížeče začnou web blokovat varováním o klamavém obsahu;
  • firemní e-maily padají do spamu, protože doména získala reputaci rozesílače;
  • web znatelně zpomalí — cizí kód a tisíce stránek navíc něco stojí.

Proč nestačí „smazat ty divné soubory”

Vyčištění hacknutého webu není smazání pár souborů. Útočník si při průniku typicky založí zadní vrátka — nenápadný soubor v adresáři s obrázky, upravený soubor šablony, vlastního administrátora v databázi, naplánovanou úlohu, která infekci obnoví. Když smažete jen viditelný spam, do týdne je zpátky.

Pořádná obnova znamená: zjistit, kudy útočník přišel (a tu díru zavřít), porovnat soubory s čistou verzí, projít databázi, zneplatnit všechna hesla a klíče, a teprve pak žádat vyhledávače o revizi. A hlavně — mít čistou zálohu, ze které se dá vyjít. Logika je stejná jako u zašifrovaného NAS, o kterém píšeme v článku o ransomwaru na NAS: bez nezávislé zálohy se z incidentu neobnovujete, ale vyjednáváte s ním.

Zálohy webu: hosting vás nezachrání

„Hosting to přece zálohuje” je nejdražší věta správy webu. Hostingové zálohy reálně mívají tři slabiny:

  1. Krátká historie. Bývá to několik dní až týdnů zpět. SEO spam přitom na webu typicky žije týdny až měsíce, než si ho někdo všimne — a to už je infikovaná každá dostupná záloha.
  2. Stejný košík. Záloha leží u stejného poskytovatele, často na stejné infrastruktuře jako web. Incident na straně hostingu — nebo jen zablokovaný účet kvůli neuhrazené faktuře — vezme web i zálohu najednou.
  3. Nikdo je nikdy nezkusil obnovit. Záloha, kterou nikdo netestoval, je domněnka, ne záloha.

Funkční záloha webu má dvě části: soubory (šablona, pluginy, nahrané obrázky a dokumenty) a databázi (texty, objednávky, uživatele). Obojí se musí zálohovat spolu, pravidelně, s dostatečně dlouhou historií verzí — a alespoň jedna kopie musí ležet mimo hosting, u jiného poskytovatele nebo na firemním úložišti. Je to stejné pravidlo 3-2-1, které rozebíráme u externího disku jako jediné zálohy — jen se místo rodinných fotek hraje o web, který firmě nosí poptávky.

A jednou za čas je potřeba zkusit obnovu naostro: vzít zálohu, postavit z ní web na testovací adrese a ověřit, že opravdu funguje. Teprve pak víte, že zálohu máte.

Co obnáší měsíční správa webu

Správa webu není „být po ruce, kdyby něco”. Je to opakující se rutina, která se dá popsat konkrétním checklistem:

  • Aktualizace s rozmyslem. Jádro, pluginy a šablona se aktualizují pravidelně — ale vždy po záloze a s kontrolou, že aktualizace nic nerozbila. Slepé automatické aktualizace umí web položit stejně spolehlivě jako žádné.
  • Zálohy a jejich kontrola. Nejen „záloha běží”, ale i namátkové ověření, že se z ní dá obnovit.
  • Monitoring dostupnosti. O výpadku se má správce dozvědět od monitoringu do několika minut, ne od zákazníka druhý den.
  • Bezpečnostní kontrola. Sken souborů na malware, kontrola integrity, kontrola nových administrátorských účtů, přehled pokusů o přihlášení.
  • Hlídání expirací. Certifikát, doména, hosting — s připomínkou dřív, než se z toho stane výpadek.
  • Search Console a výkon. Kontrola indexace (právě tam se SEO spam ukáže nejdřív), rychlosti a chyb.
  • Drobné úpravy obsahu. Změna otevírací doby, nový ceník, aktuální reference — věci, kvůli kterým se jinak čeká týdny na „někoho, kdo to umí”.

Nic z toho není jednotlivě složité. Pointa je v tom, že se to děje každý měsíc, doložitelně a s odpovědností jedné konkrétní firmy — ne „až bude čas”. U nás je správa webu součástí IT služeb pro firmy: web přebíráme včetně přístupů, dáme do pořádku zálohy a aktualizace, a když web žádný nemáte nebo ten současný poptávky nenosí, umíme dodat nový a rovnou se o něj starat. Nejrychlejší první krok je ozvat se přes kontakt — projdeme, v jakém stavu web je a co ho reálně ohrožuje.

Kolik takový web a jeho správa stojí, je téma samo o sobě — rozsah se u malé firmy liší podle toho, jestli jde o vizitku, nebo o e-shop, a zaslouží si samostatný rozbor. Tady je podstatné něco jiného: vědět, co si za správu webu máte objednat, abyste neplatili za „údržbu”, která se nikdy neděje.

Pět otázek, na které byste měli znát odpověď

Jestli chcete stav svého webu prověřit za pět minut, zkuste odpovědět:

  1. Kdo má přístupy k administraci webu, hostingu a doméně — a jsou uložené ve firmě, ne u třetí strany?
  2. Kdy proběhla poslední záloha a kdy ji naposledy někdo zkusil obnovit?
  3. Kdo se dozví o výpadku webu a za jak dlouho?
  4. Kdy se naposledy aktualizoval redakční systém a pluginy?
  5. Kdo web opraví, když v pondělí ráno místo úvodní stránky naběhne varování prohlížeče?

Pokud u dvou a více otázek krčíte rameny, o váš web se nestará nikdo — jen o tom zatím nevíte. Za marketing se přitom firmy nebojí utrácet statisíce; jak snadno se točí peníze do reklamy nad webem, o který se nikdo nestará, popisujeme v článku o milionu protočeném za marketing. Reklama vede lidi na web — a web bez údržby je umí spolehlivě otočit ve dveřích.

Často se ptáte

Web mi dělala agentura. Nestará se o něj automaticky?

Většinou ne. Dodání webu a jeho správa jsou dvě různé služby a dvě různé smlouvy. Pokud nemáte výslovně sjednanou údržbu (a nechodí vám o ní pravidelný výstup), web po předání jen běží — bez aktualizací a často i bez funkčních záloh.

Jak poznám, že je můj web hacknutý, když vypadá normálně?

Vyhledejte si v Googlu site:vasedomena.cz a projděte, co je pod vaší doménou zaindexované. Cizí jazyk, léky, hodinky nebo hazard znamenají SEO spam. Dále pomůže Google Search Console (skoky v počtu stránek, ruční akce) a kontrola, jestli prohlížeč u webu nezobrazuje varování.

Stačí na zálohy plugin ve WordPressu?

Zálohovací plugin je dobrý začátek, ale sám o sobě nestačí: pokud ukládá zálohy na tentýž hosting, vezme je incident i výpadek účtu spolu s webem. Klíčové je mít kopii mimo hosting, dostatečnou historii verzí a jednou za čas ověřenou obnovu.

Web mi hacknuli. Mám ho smazat a postavit znovu?

Ne hned. Nejdřív je potřeba zjistit, kudy útočník přišel — jinak nový web postavíte se stejnou dírou a dopadne stejně. Vyčištění zahrnuje uzavření vstupní cesty, kontrolu souborů i databáze, výměnu všech hesel a poté žádost o revizi u vyhledávačů, aby zmizela varování.

Co když nevím, kde vůbec web běží a kdo má přístupy?

Nejste sami — je to nejčastější výchozí stav, který přebíráme. Dohledat se dá skoro vždy: z DNS záznamů, faktur a registrátora domény. Právě proto má smysl začít inventurou přístupů a stavu webu, ne až řešením havárie.