WordPress - Beveiligen

Website Beveiligen - Introductie

Inleiding

WordPress is als website-ontwikkel-tool erg populair geworden wat veel voordelen met zich meebrengt. Zo ben je niet meer afhankelijk van één buro of persoon die de website kan maken of onderhouden en met enige basis kennis ben je zelf in staat om aanpassingen te verrichten aan de content.

Daarnaast is WordPress een “open platform” omgeving, waarmee de source-codes direct in te zien zijn en aan te passen zijn door ontwikkelaars. Voor WordPress worden ook vele 10-tallen duizenden thema’s gemaakt en uitbreidingen als plugins.

Veel mooie voordelen om WordPress te gebruiken voor een website of webshop. Aan al die voordelen kleven dan ook een aantal nadelen en één daarvan is dat beveiliging een steeds groter onderdeel wordt van het beheren van een website.

Steeds vaker komt er nieuws voorbij dat een lek zit in een plugin of thema. Met name de super populaire onderwerpen en daarvoor beschikbare plugins staan in de “picture” bij hackers. Het afgelopen jaar was (als voorbeeld) de AVG privacy wetgeving een hot-item. Om aan die wetgeving te voldoen kwam de plugin “WP GDPR Compliance” beschikbaar. Deze werd gehackt en was het mogelijk dat een nieuwe gebruiker zich eenvoudig kon registreren als beheerder.

De plugin werd snel offline gehaald en aangepast…

In deze serie gaan we verder in op het beveiligen en veilig houden van je WordPress website.

Waarom wordt ik gehackt ?

Regelmatig krijgen we de vraag “Waarom proberen ze mijn website te hacken ?” en dan met direct als argument “Er valt niets te halen, mijn website is puur informatief en zoveel bezoekers heb ik niet…”.

Hackers zijn niet alleen op zoek naar websites met veel verkeer of waar financiële transacties gedaan worden als bij een webshop. Veel hackers willen gebruik maken van jouw website (server) om SPAM rond te sturen. In die SPAM zitten dan bijvoorbeeld links om gegevens van jou bezoekers te verkrijgen of commerciële links, waar dan aan verdient wordt.

Een goede beveiliging kan dat voorkomen. Wordt er eenmaal SPAM vanaf jouw website verstuurd kan het zo maar gebeuren dat je op een “blacklist” bij Google geplaatst wordt. Gebeurd dit, wordt je niet door Google op de hoogte gebracht en zullen ook je normale e-mails en/of nieuwsbrieven die je via je website-mail-account verstuurd in de SPAM-box bij de ontvanger terecht komen.

Hoe wordt er gehackt?

De website WP White Security heeft onderzocht hoe WordPress websites gehackt worden, waar de oorzaken zijn en kwam met de volgende infographic:

WordPress Hack Methodes

WordPress Hack Methodes

Uit deze grafiek blijkt maar weer dat een goede hosting ook een belangrijke stap is bij het online brengen van een website. In Nederland is er een groot aanbod van hostingproviders. Ook hier is het advies, om goed te kijken wat zij doen aan beveiliging alvorens je je website bij hen onderbrengt. Mocht je daar niet uitkomen, neem dan geheel vrijblijvend contact met ons op.

Het gebruik van een “eenvoudig” wachtwoord komt nog steeds in 8% van de gevallen voor.

Stel dat je een goed beveiligde hosting hebt en de gekozen gebruikersnaam en wachtwoord zijn sterk, dan ligt 51% van de oorzaken van een gehackte website bij het gebruikte thema en/of plugins. Hiermee wordt dan nogmaals aangegeven dat het kiezen van een goed thema (of ontwikkelaar) en het juist gebruik van plugins een belangrijk onderdeel is van een veilige website.


Beveiliging Methodes

Nu we “grofweg” weten hoe hackers te werk gaan en waar zij zich voornamelijk op richten, kunnen we een aantal stappen ondernemen om onze WordPress website veiliger te maken.

Hieronder beschrijven we de basis-stappen welke genomen kunnen worden. In een aantal vervolg-artikelen gaan we dieper in op geavanceerde beveiligingsmethodes. Wil je daarvan op de hoogte blijven, volg ons dan simpelweg op Facebook.

Hosting

Een goede hosting is dus een belangrijk onderdeel van de beveiliging van je website. Hierbij dien je voornamelijk op te letten dat zij:

  • de laatste versies van PHP en MySQL ondersteunen;
  • zij een Firewall gebruiken;
  • en of zij ook backups maken op regelmatige basis.

Hostingproviders welke beveiliging serieus nemen, zullen dat doorgaans ook goed beschrijven op hun website. Kijk hier dus goed naar.


WordPress Installeren

Ook bij het installeren van WordPress kunnen we een aantal veranderingen aanbrengen waardoor je website voor hackers minder toegankelijk zal worden. Het installeren van WordPress is erg eenvoudig en tijdens de installatie worden er een paar vragen gesteld die veelal eenvoudig wordt beantwoord en er gekozen wordt voor de standaard instellingen van WordPress.

Gebruikersnaam en Wachtwoord

In de praktijk komt het regelmatig voor dat de gebruikersnaam te achterhalen valt uit de naam van de website. Heb je bijvoorbeeld een blog-website en heb je de website vernoemd naar jezelf; gebruik dan niet ook als gebruikersnaam je eigen naam. Dat ligt erg voor de hand.

Het wachtwoord dient bij voorkeur een sterk wachtwoord te zijn. Hackers maken gebruik van een geautomatiseerd script om wachtwoorden te achterhalen. Een eenvoudig wachtwoord vinden zij dan ook snel.

Een wachtwoord kun je altijd achteraf (na de installatie) nog wijzigen. De gebruikersnaam niet. Kies die beide dus heel bewust en goed bij het installeren van WordPress.

Table Prefix

Tijdens installatie dienen we ook op te geven wat de naam is van de database, de gebruikersnaam en een database-wachtwoord. Veelal worden deze door de hostingprovider aangeleverd. Bij voorkeur stellen we deze gegevens zelf in door bij de hostingprovider handmatig een database aan te maken en zelf de database-gegevens op te geven. Dan kunnen we ook hier niet gebruikelijke benamingen kiezen voor het “hart” van onze WordPress website.

In datzelfde scherm tijdens de installatie is er ook een veld genaamd “Table Prefix”. Standaard staat daar de waarde “wp_”.

Met die waarde worden alle belangrijke tabellen benoemd. Laten we die op “wp_” staan, dan is de database ook weer meer gevoelig voor hackers.

Het advies is hier, dat bij installatie die “Table Prefix” in een onvoorspelbare tekst gewijzigd wordt. Dat kan ook achteraf maar daarvoor is enige kennis van MySQL voor nodig en met name kennis van de opbouw van de WordPress database-structuur.


Na Installatie

Is WordPress dan geïnstalleerd kunnen we nog een paar extra beveiligingen aanbrengen alvorens we verder met WordPress aan de slag gaan.

Salt Keys

Door middel van deze “keys” versleuteld WordPress allerlei informatie die wordt opgeslagen, zoals bijvoorbeeld het wachtwoord. Die codes staan in het wp-config.php bestand:

define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');

Om daar unieke codes van te maken kun je gebruik maken van de generator van WordPress. De link: WordPress SALT Keys zal die codes genereren welke je dan kunt kopiëren en plakken in het wp-config.php bestand.

Het is aan te raden om een 3-4 keer per jaar die codes te wijzigen.

WP-Config.php

In het wp-config.php bestand staan de meest belangrijke gegevens welke nodig zijn om de website te kunnen laten functioneren. Hier staan de gegevens om te communiceren met de database en de hiervoor genoemde SALT-keys.

Om ervoor te zorgen dat dat bestand niet te openen en dus te wijzigen is kunnen we de volgende regels toevoegen aan het .htaccess-bestand:

<files wp-config.php>
order allow,deny
deny from all
</files>

Met deze paar regels is het bestand niet meer benaderbaar via de website-browser maar nog wel door WordPress.

Bestandsrechten

Alle mappen en de bestanden in die mappen krijgen zgn. bestandsrechten. Die zijn via een FTP-programma (als bijvoorbeeld FileZilla) in te stellen. De meest uitgebreide rechten zijn “777”. Daarmee mag iedereen (vanuit de webbrowser) de map en de bestanden in die map openen, beschrijven en uitvoeren.

WordPress adviseert de volgende instellingen:

  • mappen: 755 of 750;
  • bestanden: 644 of 640;
  • wp-config.php: 600.

Controleer dus of die instellingen correct staan en niet alle op “777”.

Readme.html

Dit is een bestand met allerlei informatie over WordPress. Het bestand doet verder niets en wordt ook niet gebruikt, maar is wel een erg herkenbaar bestand voor een WordPress standaard installatie.

Ons advies, gewoon verwijderen.

WordPress Versie Nummer

Via het WordPress versienummer is veel informatie terug te vinden. Bijvoorbeeld: in de update van WordPress versie 5.1 naar 5.1.1 zijn een aantal beveiligingsupdates doorgevoerd. Die beveiligingsupdates worden uitvoerig beschreven op WordPress.org waardoor hackers precies weten waar er een beveiligings-lek zit.

Is het versienummer van jouw WordPress installatie dan achterhaalbaar weet een hacker dus precies waar en hoe ze kunnen aanvallen.

Het versienummer wordt op diverse plaatsen in de code van je website geplaatst. Zo staat het vaak als generator-tag in de header en wordt het getoond in de broncode bij de stijles en scripts.

Die versienummers kunnen we verwijderen door de volgende Code Snippet toe te voegen aan het functions.php bestand:

/* Verwijder versienummer bij de generator meta tag */
function qwain_remove_wp_version_number-meta() {
return '';
}
add_filter('the_generator', 'qwain_remove_wp_version_number-meta');

function qwain_remove_scripts_version_number( $src ) {
    if ( strpos( $src, 'ver=' . get_bloginfo( 'version' ) ) )
        $src = remove_query_arg( 'ver', $src );
    return $src;
}
add_filter( 'style_loader_src', 'qwain_remove_scripts_version_number');
add_filter( 'script_loader_src', 'qwain_remove_scripts_version_number');

 

 

Samenvatting

Met voorgaande stappen is een eerste stap gezet naar een betere beveiliging van je WordPress website.

In het vervolg hierop gaan we verder in op het nog beter beveiligen van de inlog en het gebruik en toepassen van updates. Tevens zullen we dan een aantal tools bespreken waarmee je kunt controleren of je website (inclusief thema en plugins) nog aan de laatste standaarden van WordPress voldoet.

Tevens kunnen we niet vaak genoeg benadrukken dat het regelmatig maken van een goede backup, ook door jezelf, noodzakelijk is.

Vragen & Info

Wij van QWAIN, nemen het beveiligen van door ons ontworpen websites serieus. Wil je weten of jouw website volledig beschermd is, vraag dan geheel vrijblijvend een advies aan via: info@qwain.nl.

Vragen over dit artikel, geef dan een reactie via onderstaand reactie-formulier.

Op de hoogte blijven van alle WordPress Nieuwtjes, Tips & Tricks… volg ons dan op Facebook .

 

Overige Artikelen


Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *