5 pilierov nedobytného WordPress webu
Ak máte osobnú alebo firemnú stránku, je veľká pravdepodobnosť, že beží práve na WordPresse. Nečudo, veď poďľa štatistík stránky w3techs.com je WordPress najpoužívanejšie CMS zo všetkých dostupných CMS systémov a poďalšie, na CMS systéme WordPress „beží“ skoro 40% zo všetkých stránok na internete.
Tieto, verím, že prekvapujúce čísla, predstavujú však veľmi veľkú hrozbu. A tou sú internetoví podnodníci a útočníci, ktorí sa snažia ukradnúť vám data (napr. emaily) alebo pridať spambota na stránku, aby rozosielal spam 🙂
Z dôvodu, že WordPress je skutočne najpoužívanješí systém, je práve toto CMS terčom týchto podvodníkov, pretože môžu takpovediac zaútočiť na skoro každú tretiu stránku na internete.
Aksi vravíte, že by ste mali preto prestať používať WordPress, ste na veľkom omyle. WordPress je skutoćne bezpečný systém, pretože poháňa weby, ako napr:
Teraz sa naskytuje otázka, prečo tieto „veľké“ weby ešte neboli, ľudovo povedané, „hacknuté“? Dôvodom je, že bezpečnosť týchto stránkok nebola braná na ľahkú váhu a pri vývoji šablony na bezpečnosť stránky určite mysleli.
Veľakrát sa stáva, že programátori, ktorí nemajú dostatočné skúsenosti s vývojom WordPressu, jednoducho nemajú šancu vedieť, čo Vašu stránku čaká, až ju vypustíte do sveta.
Práve preto v tomto článku zhrniem 5 najdôležitejšich bodov, ktoré by mala každá WordPres stránka spĺňať, uvediem zopár bonusových tipov a nakonci Vám ukážem, ako taký „hack stránky“ vyzerá.
Poďme na to 👇
5 pilierov nedobytného WordPress webu:
1. Rola „Administrátor“ slúži len k administrácii webu
A k ničomu inému.
Rola „Administrátor“ nesúži na to, aby ste sa ňou každý deň prihlasovali do Vašej stránky a písali články.
Rola „Administrátor“ slúži na nastavovanie šablóny, inštaláciu pluginov, pridanie nového používateľa, odstránenie nepotrebného používateľa a to je všetko.
Myslite na to, že táto rola má skutočne neobmedzené právomoci vo Vašej WordPress stránke a za predpokladu, že sa jej niekto zmocní, tak doslova „ste nahratí“.
Z toho dôvodou, že veľmi dobrým prístupom (ktorý som osobne používal skoro 10 rokov na weboch klientov), že klient má na webe minimálne 2 účty:
- administrátorský
- autor/editor
Administrátorský účet klient skoro vôbec nepoužíva A ak ho aj použije, tak sa prihlási raz za 3 mesiace a spustí napr. aktualizáciu WordPressu, alebo aktualizuje plugin, potom sa odhlási.
Autorský/editorský účet slúži na pridávanie/úpravu obsahu, teda článkov, stránok, produktov a podobne.
V takomto nastavení používateľ s rolou administrátor vôbec nie je vystavený verejnosti (na túto rolu nelinkuje žiaden článok, ani stránka) a tak je riziko, že útočník bude skúšať prelomiť administrátorské heslo, minimálna.
A po ďalšie, u používateľa s autorskou/editorskou rolou je riziko hacknutia vždy vysoké, ale prípadné následky budú skutočne minimálne, pretože ak by aj takýt používateľský účet bol hacknutý, tak jediné, čo môže útočník docieliť je, źe Vám vymaže/upraví obsah webu – ale toto má prípadnú jednoduchú nápravu – proste obnovíte databázu stránky zo zálohy a máte pôvodbný obsah naspäť.
2. Administrátorský účet sa nemá volať „admin“
Ale hocijak inak.
Dlhé roky mala však inštalácia WordPressu v sebe ukrytý mini zádrheľ. Prednastavený používateľ, ktorý mal rolu „Administrátor“ sa volal „admin“.
V čom tu nastáva problém? Jednoducho v tom, že ak viem, že niekto má WordPress stránku, tak je veľká pravdepodobnosť, že sa tam nachádza prednastavený používateľ s rolou „Administrátor“ a menom „admin“, a ja idem „skúšat heslá“. A pokiaľ má daná stránka jednoduché heslo, tak nebude trvať dlho, dokiaľ heslo uhádnem.
Z toho dôvodu pomenujte Váš administrátorský účet hocijak inak, ako len admin. Môže to byť napr mucinko129
, kolovratokStiavnicky
alebo aj Segedin
. Za predpokladu, že to potrebujete trochu formálnejšie, skúste napr vasastranka2021
, wordpress2021
, hlavnyucet
a podobne. Hoci tieto formálnejšie názvy nie sú úplne unikátne, ale pravdepodobnosť, že to niekto uhádne sa rapídne znižuje v porovnaní s menom „admin“.
Plus, myslite na to, že v prvom kroku sme zabezpečili, že administrátorský účet nie je prístupný verejnosti, nemusíte sa báť, že napr na Vašej stránke niekto nájde účet so zahanbujúcim názvom. 🤭
3. Editor súborov je zakázaný
Vedeli ste, že ak ste prihlásený do WordPressu ako administrátor, tak môžete sami sebe hacknúť stránku? Takúto funkciu Vám povoľuje sám WordPress!
Totižto, ak ste prihlásený do WordPress administrácie, skúste si rozkliknúť z boćného menu Vzhľad -> Editor a zjaví sa Vám editor zdrojového kódu v prehliadači. Tento slúži na rýchle úpravy šablón, napr. na opravu tlačových chýb v textoch, výmenu obrázkov a podobne.
Avšak práve toto miesto je jednou z najčastejšie využívaných zraniteľností, ktorú útočníci používajú.
Teda napr po získaní Vášho administrátorského hesla sa pokúsia upraviť súbory Vašej šablóny práve cez spomínaný editor a do niektorých zo súborov vložia nebezpečný kód.
Ako tomu predísť?
Jednoducho. Zakázať so.
Presne tak, zakázať WordPressu zobrazovať spomínaný editor súborov.
Stačí, ak do súboru functions.php
Vašej šablóny programátor pridá nasledujúci kód.
define( 'DISALLOW_FILE_EDIT', true ); //disables file editor
Ten povie WordPressu, nech zakáže zobrazovanie editora súborov a týmto jednoduchým krokom ste zabezpečili, že hoci ak by Vám niekto ukradol administrátorské heslo, tak neexistuje možnosť, ako Vám cez editor súborov pridať nebezpečný kód do stránky.
4. Heslo k FTP nemá byť ľahko zapamätaťeľné
Adresa: ftp.mojastranka.sk
Používateľ: ftp.mojastranka.sk
Heslo: mojastranka
Za predpokladu, že aj Vaše prihlasovacie údaje vyzerajú podobne. Ste opäť nahratí. Hacknutie stránky uhádnutím hesla na FTP je tiež častý spôsob hacknutia WordPress webu, avšak je veľmi jednoducho „predíditeľný“.
Pri FTP údajoch je väčšinou len heslo, ktoré si viete nastaviť. Adresa FTP a rovnako používateľ je prednastavený hostingovou spoločnosťou a Vám ostáva si len nastaviť heslo.
Samozrejme, v súčastnosti už webhostingové spoločnosti dovoľujú zmeniť aj adresu a prihlasovacie meno, ale popravde máloktorý užívateľ toto nastavenie mení, ak nemusí.
Preto, ak už nič iné, stačí nastaviť heslo, ktoré je minimálne trochu komplikovanejšie ako to, ktoré Vam napadne naprvú (napr. 123456, admin, password a pod.). Napr. ak by sme sa držali príkladu vyššie, tak ak by sme nastavili heslo napr. na 19pomarancov
, mojastrankaaaaa
, uzgýfžáh
, alebo uplneNahodneHesloKtoreVymyslim
tak pravdepodobnosť, že ho niekto uhádne sa rapídne znižuje, ako keby bolo heslo len čisto názov Vašej stránky.
5. Pozor na pluginy
Ak máte WordPress web, predpokladám, že na doplnenie funkcionality používate rôzne pluginy. Či už napr. k pridaniu Google Analytics kódu, pridanie e-commerce funkcionality alebo pridanie sitemapy.
Musíte mať však na pamäti, že plugin je jednoducho povedané kód, ktorý napísala osoba, ktorú nepoznáte. A tak je potrebné k tomu pristupovať.
Pri inštalácii pluginov je si treba vždy pozrieť, kto je vydavateľ pluginu, aké sú hodnotenia pluginu, počet inštalácii a následne zhodnotiť, či plugin vyzerá dôveryhodne. Ak to tak nie je, neinštalujte ho.
Nie je to tak dávno, čo sa zjavila bezpečnostná diera v plugine, ktorý bol dodávaný s každou inštaláciou WordPress 🙂
Preto, ak potrebujete nainštalovať plugin napr na vloženie Google Analytics alebo SEO meta tagov, poraďte sa najskôr so svojím programátorom, či by to nevedel vložiť do šablóny rýchlejšie.
A nakoniec ako mini-bonus, myslite na to, že čím menej pluginov, tým rýchlejšie vaša stránka.
Bonusové tipy
Aký by to bol článok na tipy k zabezpećeniu WordPress stránky, ak by tu neboli bonusové tipy. Tak poďme na to:
1. Zakážte inštaláciu pluginov
Tak ako som spomínal vyššie, editor súborov prostredníctvom administrácie predstavuje veľmi veľké bezpečnostné riziko. Avšak nejde priamo o editor súborov, ako o modifikáciu súborov na FTP cez prehliadač.
S tým súvisí aj inštlalácia nových pluginov z bočného menu (Pluginy -> Pridať nový).
Jednoducho povedané, CMS systém má slúžiť na správu obsahu, nie na úpravu zdrojových súborov alebo pridávanie funkcionality. Preto by takáto moźnosť povolená byť nemala.
Na zakázanie inštalácie pluginov prostredníctvom administrácie sa používa nasledujúci kód:
define( 'DISALLOW_FILE_MODS', true );
2. Zdrojový kód na „gite“
Git je v súčastnosti najpoužívanejší systém na správu zdrojového kódu pre developerov. Tento systém dokáže odhaliť každú zmenu v zdrojovom kóde, a za predpokladu, že máte podozrenie, že Vaša stránka bola hacknutá, stačí prostredníctvom tohoto systému skontrolovať zdrojové kódy. Ak sa nájde nejaká neznáma zmena, stačí jednoducho vrátiť verziu zdrojových kódov do poslednej známej verzie (a následne podniknúť kroky, ktoré zabezpečia, že útočník nebude mať ďalej právomoc meniť súbory, napr. pomeniť heslá a pod.)
3. Používať generátor hesiel
V bodoch článku vyšsie som odporúčal, že by ste mali používať heslá typu 19pomarancov
, mojastrankaaaaa
, uzgýfžáh
, alebo uplneNahodneHesloKtoreVymyslim
a podobne.
Dôvod takéhoto odporúčania je, aby ste sa za každú cenu vyhli heslám, ako napr „111111“, „123456“, „password“, „admin“, „nbs123sr“, „wordpress“ a podobne.
Tieto heslá sú umiestnené na prvých priečkach v tzv. „brute force dictionaries“, čo je anglické pomenovanie súboru , kde sa nachádzajú najčastejšie používané heslá na internete (útočníci heslá neskúšajú písaním na klávesníci, použijú práve takýto slovník a nechajú program (automatizovaný bot) skúšat hesla za nich a raz sa to podarí).
No a hoci sú heslá ako „Segedin“ alebo „kolovratokStiavnicky“ dosť jednoduché, jedná sa o slovenské, kvázi náhodné slová, ktoré pravdepodobne nebudú mať s vami ani s vašou stránkou nič spločné, preto by nikomu nenapadlo také heslo použiť.
Poďalšie, sú omnoho viac zapamätateľné, ako napr vygenerované heslo: `%T()vb-}BrKb6PH
.
To je však podstatou tohoto bodu, a práve vygenerované heslá typu `%T()vb-}BrKb6PH
by ste mali používať všade. Aj pre administrátorský, aj pre autorský účet, aj pre ftp a podobne.
Vygenerované hesla nie sú takisto neuhádnuteľné, avšak poskytujú omnoho väčšiu mieru bezpečnosti, ako ktorékoľvek vymyslené heslo.
Ako na bezpečnejšiu WordPress stránku?
Odpoveď zhrniem do 1 vety, a to, že nezáleží, koľko máte bezpečnostných pluginov na webe, nezáleží aké bezpečné máte heslo, pretože bezpečnosť Vášho webu nie je 1 krok, ale práve niekoľko krokov, ktoré keď zvládnete, môžete mať skutočne pokoj na duši, že Váš WordPress web bude chránený.
Ak by ste aj vy potrebovali pomôcť s bezpečnosťou Vášho webu, či už napr. zabezpečiť bezpečnostné prvky, prekontrolovať stav bezpečnosti alebo konzultáciu, ozvite sa na kontaktné údaje nižšie:

Zdroje k článku:
- WordPress market share 40%: https://w3techs.com/technologies/details/cm-wordpress
- WordPress usage: https://wordpress.org/showcase/
- NBS jednoduché heslo: https://www.cas.sk/clanok/179283/nbu-chranilo-jednoduche-heslo-nbusr123-fungovalo-asi-5-rokov/
- WordPress default admin account: https://mainwp.com/change-default-wordpress-admin-username/
- WordPress file editor: https://wordpress.org/support/article/editing-files/
- Aksimet hack: https://www.evilbox.ro/linux/wordpress-hacked-through-akismet-plugin-and-twentyeleventwentyten-theme/
Poďakovanie:
- prezentačný obrázok: mohamed Hassan from Pixabay