Používejte kvalitní pluginy a šablony

Používejte pluginy a šablony od známých autorů, díky tomu je šance že plugin bude vyvíjen a pravidelně aktualizován a s tím i záplaty. Stejně používejte i šablony. Pokud instalujete nový plugin, podívejte se, kdy byl naposledy aktualizován, jestliže je to více jak půl roku, tak to začíná být podezřelé. Také pravidelně aktualizujte WordPress.

Méně pluginů a šablon znamená více

Používejte méně pluginů, čím méně tím méně bezpečnostních hrozeb. Nenechávejte neaktivní pluginy a šablony na hostingu, rovnou je vždy smažte. Výjimkou jsou obě nativní šablony WordPressu „2010“ a „2011“.

Používejte výhradně SFTP

Používejte k nahrávání na hosting jen SFTP protokol místo starého FTP protokolu. Například FileZilla SFTP umí, a je zdarma. Můj poskytovatel hostingu navíc umožňuje zapnout FTP CZ/SK IP štít.

Nastavte silné heslo

Tohle se všude opakuje dokola, ale věřte, že to je velmi důležité. Nastavte si heslo tak, aby mělo minimálně 8 znaků z toho minimálně dvě písmena velká, dvě malá, dvě číslovky a dva znaky: AAbb11– a to v jakémkoli pořadí.

Nepoužívejte uživatelské jméno „admin“

Při instalaci WordPressu nepoužívejte uživatelské jméno admin. Je to protože dříve bylo admin nativně nastavené uživatelské jméno pro administrátora. Pokud již admin uživatele máte díky starší instalaci blogu, vytvořte nového administrátora a smažte admina nebo ho změnte na návštěvníka.

Natavte správná práva pro adresáře a soubory

Nastavení práv pluginem WP Security Scan

Obecně platí že pro WordPress by mělo být nastaveno 755 pro složky a 644 pro soubory. Já používám plugin WP SECURITY SCAN, kde na druhé záložce uvidíte adresáře s informací jaké práva tam jsou a jaké by měly být.

Změňte prefix databáze wp_ 

  1. Změňte při instalaci prefix databáze WordPressu z nativně nastaveného wp_ na rk_ nebo cokoli_  prostě dle vašeho uvážení.
  2. Pokud již ale máte WordPress nainstalovaný postupujte podle tohoto návodu na změnu prefixu wp_ (anglicky). Před tím však zálohujte databázi. Mnoho mysql injection útoků jsou automatizovány a napadají (automaticky) prefix wp_. Změnu prefixu také umožňuje několik bezpečnostních pluginů.

 .htaccess

Pokud tento soubor nemáte (není součástí instalace WordPressu), vytvořte soubor htaccess.txt v textovém editoru (Windows má notepad). Nahrajte na server do rootu do instalace WordPressu , přejmenujte na .htaccess a pak nastavte práva na  CHMOD 644.

# Vypne zobrazení informací o serveru
ServerSignature Off

# Zakáže procházení adresářů vašeho serveru
Options -Indexes

#Zakáže přímý přístup přes prohlížeč k souborům htaccess a htpasswd, a všem s příponou ini,txt,phps,fla,psd,log,sh,bak,backup,back,set a hlavně sql
<FilesMatch ".(htaccess|htpasswd)$">
Order Allow,Deny
Deny from all
</FilesMatch>
<FilesMatch ".(ini|txt|phps|fla|psd|log|sh|bak|backup|back|set|sql)$">
Order Allow,Deny
Deny from all
</FilesMatch>

#Ochrání důležitý soubor wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>

#Zakázat závorku ([) v URL - dle tohoto článku by odkaz tuto závorku neměl obsahovat, a jednoduchým příkazem v .htaccess to zakážeme
RedirectMatch 403 [

Robots.txt

Zamezení robotům v procházení určitých souborů. Je-li váš blog v sub-adresáři, vložte prefix před níže uvedené záznamy s názvem adresáře blogu (ex: / blog / adresář). Aktuální nastavení robots.txt najdete zde.
User-agent: *
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: /tag
Disallow: /author
Disallow: /wget/
Disallow: /httpd/
Disallow: /cgi-bin
Disallow: /images/
Disallow: /search
Disallow: /feed
Disallow: /feed/
Disallow: /trackback/
Disallow: /rss
Disallow: /comments/feed
Disallow: /feed/$
Disallow: /*/feed/$
Disallow: /*/feed/rss/$
Disallow: /*/trackback/$

Varianta 2:
User-agent: *
Disallow: /feed/
Disallow: /trackback/
Disallow: /wp-admin/
Disallow: /wp-content/
Disallow: /wp-includes/
Disallow: /xmlrpc.php
Disallow: /wp-

wp-config.php

    • Přesunout wp-config.php soubor - již delší dobu je možné posunout tento soubor o úroveň výše nad root. Avšak některé pluginy a šablony s tím mohou mít problém. Nutno otestovat kvůli pluginům a šablonám. Detail zde.
    • Zakázání vkládání nefiltrovaného html pro všechny uživetele včetně administrátora. Vložte násleující kód do souboru wp-config.php před hlášku /* That's all, stop editing! Happy blogging. */

define( 'DISALLOW_UNFILTERED_HTML', true );

    • Bezpečnostní klíče -  dnes je to již automatika při instalaci WordPressu, ale pokud máte problémy s bezpečností, doporučujeme vygenerovat nové bezpečnostní klíče na této adrese: https://api.wordpress.org/secret-key/1.1/salt/

define('AUTH_KEY', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('SECURE_AUTH_KEY', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('LOGGED_IN_KEY', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('NONCE_KEY', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('AUTH_SALT', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('SECURE_AUTH_SALT', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('LOGGED_IN_SALT', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');
define('NONCE_SALT', 'unikátní kombinace textu--lz8$tj&i?to*@D+vB:xb1d+Cud ');

Hlídejte automaticky změny souborů, složek a databáze

Existuje hned několik služeb a pluginů, které hlídají změny v souborech a pokud se něco změní, posílají Vám emailem alarm. Seznam pluginů a online služeb, které to umí:

  • Exploit Scanner - Tento plugin vyhledává soubory na webu, příspěvky a komentáře v tabulkách databáze na cokoliv podezřelého. Také zkoumá seznam aktivních pluginů pro neobvyklé názvy souborů. Plugin nic nemaže, to je ponecháno na uživateli.
  • WordPress File Monitor - neaktualizovaný plugin
  • WP Security Scan v kombinaci s online službou websitedefender.com
  • Placená služba sucuri.net poskytuje pravidelné skenování stránek a vyčištění od malwaru

On-line scanovací nástroje

Zatím jsem objevil jen jednu službu, která Vám zjistí jestli Váš web obsahujete malware, jestli jste díky tomu na blacklistu a jestli máte aktuální verzi sw (WordPressu v tomto případě):

Pluginy na zvýšení bezpečnosti

Zde uvedu seznam zajímavých pluginů a vlastností které pomáhají chránit web. Většinou stačí instalovat jeden plugin, a není třeba je instalovat všechny. Nemám je všechny otestované, takže pokud máte nějaká doporučení sem s nimi. Zajímavé je že za pluginy stojí společnosti nikoli jedinci.

Better WP Security   (od bit51.com)
  1. Remove the meta "Generator" tag
  2. Removes login error messages
  3. Change the urls for backend functions including login, admin, and more
  4. Limit admin access to specified IP or range of IP addresses
  5. Ban troublesome bots and other hosts
  6. Completely turn off the ability to login for a given time period (away mode)
  7. Prevent brute force attacks by banning hosts and users with too many invalid login attempts
  8. Display a random version number to non administrative users anywhere version is used (often attached to plugin resources such as scripts and style sheets)
  9. Remove theme, plugin, and core update notifications from users who do not have permission to update them (useful on multisite installations)
  10. Remove Windows Live Write header information
  11. Remove RSD header information
  12. Strengthen .htaccess settings
  13. Enforce strong passwords for all accounts of a configurable minimum role
  14. Detect attempts to attack your site
  15. Rename "admin" account
  16. Security checker
  17. Change the WordPress database table prefix
  18. Force SSL for admin pages (on supporting servers)
  19. Change wp-content path
  20. Turn off file editing from within WordPress admin area
  21. Works on multi-site (network) and single site installations
Secure WordPress  (od www.websitedefender.com)

Secure WordPress beefs up the security of your WordPress installation by removing error information on login pages, adds index.html to plugin directories, hides the WordPress version and much more.

  1. Removes error-information on login-page
  2. Adds index.php plugin-directory (virtual)
  3. Removes the wp-version, except in admin-area
  4. Removes Really Simple Discovery
  5. Removes Windows Live Writer
  6. Removes core update information for non-admins
  7. Removes plugin-update information for non-admins
  8. Removes theme-update information for non-admins (only WP 2.8 and higher)
  9. Hides wp-version in backend-dashboard for non-admins
  10. Removes version on URLs from scripts and stylesheets only on frontend
  11. Blocks any bad queries that could be harmful to your WordPress website
Block Bad Queries (BBQ) (od digwp.com - neaktualizovaný)

Block Bad Queries (BBQ) helps protect WordPress Against Malicious URL Requests. BBQ checks for excessively long request strings (i.e., greater than 255 characters), as well as the presence of either “eval(” or “base64″ in the request URI.

WP Security Scan (opět od www.websitedefender.com)
  1. Passwords
  2. File permissions
  3. Database security
  4. Version hiding
  5. WordPress admin protection/security
  6. Removes WP Generator META tag from core code

BulletProof Security (od www.ait-pro.com)

  1. One-click .htaccess website security protection from within the WP Dashboard
  2. Secure .htaccess protection blocks XSS, RFI, CSRF, Base64_encode, Code Injection and SQL Injection hacking attempts
  3. Permanent online backup and restore
  4. Built-in File Editing, File Downloading and File Uploading
  5. WordPress readme.html and /wp-admin/install.php protected with .htaccess security protection
  6. wp-config.php and bb-config.php files protected with .htaccess security protection
  7. php.ini and php5.ini files protected with .htaccess security protection
  8. WordPress database errors turned off - Verification and function insurance
  9. WordPress version is not displayed / not shown - WordPress version is removed
  10. WP Generator Meta Tag filtered - not displayed / not shown
  11. The Administrator username admin check - check WP DB for admin username
  12. System Information Page PHP, MySQL, Server Info, Memory Usage, Upload size, etc.
  13. Security Status Page - Displays all website security status information
  14. File and Folder Permission Checking
  15. Help & FAQ page - links to BPS Guide and other detailed Help & Info pages
  16. Extensive Read Me! help hover ToolTips throughout the BulletProof Security plugin pages
  17. Backup and Restore your original existing .htaccess files
  18. Backup and Restore customized / modified .htaccess files
  19. Use, modify, edit add too the provided BulletProof Security .htaccess Master files
  20. Create your own .htaccess Master files and use BulletProof Security to manage them
  21. Website Developer Maintenance Mode (503 website open to Developer / Site Owner ONLY)
  22. Log in / out of your website while in Maintenance Mode
  23. Customizable 503 Website Under Maintenance page w/Javascript countdown timer
  24. Detailed Success / Error message display / HUD
  25. BPS Pro Modules - BPS Pro Modules are installed separately
Limit Login Attempts (od Johanee)
  1. Limit the number of retry attempts when logging in (for each IP). Fully customizable
  2. Limit the number of attempts to log in using auth cookies in same way
  3. Informs user about remaining retries or lockout time on login page
  4. Optional logging, optional email notification
  5. Handles server behind reverse proxy

Zdroje informací

Návody
wordpress.org
Videa
Comments (3)
Leave a reply

Name (required)

Website