Proč jsou weby napadané tak snadno
Bezpečnost webu často nepadá na „sofistikovaný hackerský útok“, ale na kombinaci zanedbané údržby a lidské chyby. Podle dlouhodobých reportů bezpečnostních firem tvoří velkou část incidentů automatizované skeny, brute-force útoky na přihlašování a zneužití známých zranitelností v pluginech, šablonách nebo CMS. Útočník si nevybírá jen velké značky – naopak, malé a střední weby bývají lákavější, protože mají slabší zabezpečení a menší dohled.
Nejčastější vstupní body jsou překvapivě prozaické: slabé heslo administrátora, chybějící vícefaktorové ověření, neaktuální WordPress nebo plugin, nezabezpečený hosting a absence použitelné zálohy. Pokud nějaká z těchto vrstev selže, stačí málo. U webu bez HTTPS může útočník snadněji odposlouchávat komunikaci na nezabezpečené síti, u webu bez 2FA se dostane do administrace přes prolomené heslo a bez záloh je pak oprava často dražší než samotný incident.
HTTPS není „jen ikonka zámku“, ale základ důvěry i ochrany dat
HTTPS chrání přenos dat mezi prohlížečem a serverem pomocí TLS šifrování. Prakticky to znamená, že přihlašovací údaje, kontaktní formuláře, objednávky i cookies nejsou posílány v otevřené podobě. Dnes je HTTPS standard, ne bonus. Google už roky používá HTTPS jako lehký ranking signál a moderní prohlížeče navíc označují nešifrované stránky jako „nezabezpečené“, což snižuje důvěru i konverze.
Nasazení certifikátu není složité. U většiny hostingů stačí Let’s Encrypt, který je zdarma a automaticky se obnovuje. Kontrolujte ale, že web skutečně přesměrovává všechny varianty na jednu kanonickou verzi: http → https, www → non-www nebo obráceně, podle zvolené strategie. Bez správného přesměrování vzniká duplicitní obsah, problémy v indexaci a zbytečné bezpečnostní mezery.
Praktický postup ověření:
- zkontrolujte, zda celý web běží na HTTPS, včetně obrázků, skriptů a fontů,
- otestujte certifikát v nástroji SSL Labs, ideálně na známku A nebo A+,
- zapněte HSTS až po důkladném testu, aby prohlížeč vynucoval HTTPS,
- v CMS a databázi nahraďte staré interní odkazy na HTTP, jinak vznikne mixed content.
Mixed content je častý problém po migraci. Stránka sice běží na HTTPS, ale načítá část obsahu přes HTTP. Výsledkem jsou varování v prohlížeči, horší důvěra a někdy i rozbitý layout. U WordPressu se vyplatí použít nástroje jako Better Search Replace nebo WP-CLI a všechny odkazy přepsat hromadně.
2FA je nejrychlejší způsob, jak zastavit zneužití hesla
Dvoufaktorové ověření (2FA) výrazně zvyšuje šanci, že se útočník do administrace nedostane ani s odcizeným heslem. Microsoft dlouhodobě uvádí, že vícefaktorové ověřování blokuje naprostou většinu automatizovaných útoků na účty; v praxi jde o jednu z nejefektivnějších ochran s minimálními náklady. A přitom ji mnoho webů stále nemá aktivovanou.
Pro administraci webu používejte ideálně aplikaci typu Google Authenticator, Microsoft Authenticator nebo Authy, případně hardwarový klíč YubiKey. SMS verifikace je lepší než nic, ale z hlediska bezpečnosti slabší kvůli SIM swap útokům a přesměrování zpráv. U citlivějších projektů je vhodné kombinovat 2FA s omezením přístupu podle IP adresy nebo VPN.
U WordPressu doporučuji tyto kroky:
- zapnout 2FA pro všechny administrátory a editory,
- omezit počet pokusů o přihlášení pomocí pluginu nebo firewallu,
- zakázat nebo chránit výchozí URL /wp-login.php a /wp-admin,
- používat unikátní silná hesla uložená v password manageru, například 1Password nebo Bitwarden.
Velmi častá chyba je, že 2FA má jen „hlavní admin“, ale ostatní účty zůstávají bez ochrany. Útočník si pak najde nejslabší článek. Stejně problémové je sdílení jednoho účtu mezi více lidmi – z hlediska auditu i odpovědnosti je to bezpečnostní i organizační chyba.
Zálohy nejsou archiv, ale pojistka proti výpadku i vydírání
Nezálohovaný web je v praxi jen otázka času. Záloha není důležitá jen při hacknutí, ale také při chybné aktualizaci, konfliktu pluginů, poškození databáze, útoku ransomware nebo lidské chybě. Pokud web prodává, generuje leady nebo sbírá data, každá hodina výpadku znamená přímou ztrátu.
Správná záloha musí splňovat pravidlo 3-2-1: tři kopie dat, na dvou různých médiích, jedna mimo hlavní server. Ideální je mít automatizované denní zálohy databáze a alespoň týdenní plnou zálohu webu. U e-shopů a aktivních webů s objednávkami nebo formuláři může být vhodná i častější frekvence, například každých 6 až 12 hodin.
Co má mít kvalitní zálohovací systém:
- automatizaci bez ručního zásahu,
- off-site uložení například do S3, Google Drive, Dropboxu nebo jiného vzdáleného úložiště,
- verzování, aby šlo vrátit i starší čistou kopii,
- šifrování záloh, hlavně pokud obsahují osobní údaje,
- test obnovy alespoň jednou měsíčně.
Na WordPressu se často používají pluginy jako UpdraftPlus, BlogVault nebo Duplicator. U profesionálního hostingu bývají dostupné snapshoty a serverové zálohy, ale na ně nespoléhejte jako na jedinou vrstvu ochrany. Pokud provider řeší incident na úrovni celé infrastruktury, chcete mít i vlastní kopii mimo jeho systém.
Aktualizace, práva a monitoring: tři vrstvy, které rozhodují
Většina napadených webů má společný problém: dlouho neaktualizovaný systém. U WordPressu bývají rizikové zejména pluginy s malou údržbou, nulovým počtem aktivních instalací nebo podezřele častými bezpečnostními opravami. Na serverové úrovni jsou problémem staré verze PHP, databáze, nepoužívané moduly a otevřené služby, které nemají co dělat na veřejném internetu.
Praktický bezpečnostní audit by měl obsahovat:
- kontrolu verzí CMS, pluginů, šablon a serverového stacku,
- odstranění nepoužívaných pluginů a témat, ne jen jejich deaktivaci,
- omezení práv uživatelů podle role,
- změnu výchozích prefixů a účtů, kde to dává smysl,
- kontrolu souborových práv na serveru, typicky 644 pro soubory a 755 pro adresáře.
Monitoring je často podceňovaný, přestože dokáže zkrátit dobu detekce útoku z dnů na minuty. Používejte nástroje jako Wordfence, Sucuri nebo serverové monitoringové služby. Sledujte neobvyklé přihlašování, změny souborů, nové administrátorské účty a podezřelé odchozí požadavky. Když se něco děje, chcete dostat alert hned, ne až od zákazníka, že web přesměrovává na podivnou doménu.
U větších webů se vyplatí i WAF (Web Application Firewall), například přes Cloudflare nebo specializované bezpečnostní řešení. WAF umí odfiltrovat část botů, blokovat známé útoky na formuláře, XML-RPC nebo pokusy o injekce. Neřeší ale špatnou správu. Je to další vrstva, ne náhrada za aktualizace a 2FA.
Bezpečnost webu jako proces, ne jednorázová instalace
Nejlepší výsledky má kombinace jednoduchých, ale důsledně dodržovaných návyků. Pro menší firemní web nebo e-shop stačí často zavést základní bezpečnostní rámec během jednoho až dvou dnů: HTTPS přes Let’s Encrypt, 2FA pro všechny účty, automatické zálohy mimo server, pravidelné aktualizace a monitoring. Tím odstraníte většinu běžných rizik, na která útočníci spoléhají.
Pokud chcete postupovat systematicky, nastavte si měsíční bezpečnostní checklist:
- ověřit platnost SSL certifikátu a stav HTTPS,
- zkontrolovat aktualizace CMS, pluginů a serveru,
- otestovat obnovu zálohy na stagingu,
- projít seznam administrátorů a odstranit nepoužívané účty,
- prohlédnout logy přihlášení a bezpečnostní upozornění.
U firem, které web berou jako obchodní nástroj, se bezpečnost vyplatí měřit stejně jako výkon nebo konverze. Výpadek webu, únik dat nebo zneužití administrace nejsou jen technický problém. Jsou to náklady na reputaci, ztracené objednávky, právní riziko a často i zhoršení SEO výkonu, pokud se web dostane na blacklist nebo začne vracet chyby. A právě proto je lepší investovat do prevence než řešit obnovu pod tlakem, když už je škoda hotová.
