Meer veiligheid voor je WP website is een kwestie van gezond verstand
Niemand heeft erom gevraagd, maar het internet is sinds de oorlog in de Oekraine een minder veilige plaats geworden. Voor meer veiligheid voor je WP website is het dus goed om te beseffen welke risico’s je vandaag de dag loopt.
Om te beginnen. De veiligheid van jouw website begint met de veiligheid van het werkstation waarmee je inlogt op je website. En die veiligheid wordt onder meer gewaarborgd door een goede virusscanner. En hier begint eigenlijk het eerste probleem. Ik vraag je niet eens of je een virusscanner hebt geinstalleerd, maar hoe betrouwbaar is de virusscanner die je hebt?
Voor meer dan een decennium was de Kasparsky virusscanner één van de beste voor wat betreft de prijs/kwaliteit verhouding. Ik heb zelf deze scanner vele jaren met vertrouwen gebruikt.
Maar het ‘Kasparsky labs’, het bedrijf achter deze scanner is een ‘Putin vriendelijk bedrijf’ en na de waarschuwing die de Duitse veiligheidsdienst af gaf, besloot ik, dat het inderdaad verstandig was mijn virusscanner door een andere te vervangen.
Unieke wachtwoorden
Wanneer ik toegang vraag voor de WordPress website van een klant, vraag ik nooit om hun inloggegevens, maar om een inlog aan te maken. Eén belangrijke reden is omdat wanneer de klant en ik samen zijn ingelogd onder dezelfde naam, WordPress niet zal waarschuwen, dat we mogelijk dezelfde pagina tegelijkertijd aan het bewerken zijn. Dus wanneer we op één pagina werken, zal WordPress jouw wijzigingen met de mijne overschrijven, of omgekeerd. Hebben we allebei een eigen login, zal de ‘laatste’ een waarschuwing krijgen, dat iemand de pagina al aan het bewerken is.
Maar nog veel belangrijker is, dat ik niet wil, dat ik wachtwoorden van klanten weet. Soms is het onmogelijk. Wanneer een klant bijvoorbeeld een gratis e-mail account voor MailChimp heeft, dan is mijn enige manier om ‘in te loggen’ op MailChimp gebruik te maken van dat wachtwoord. Ik vraag dus altijd mijn klant om voor en na mijn activiteiten het password te veranderen. Of ze dit werkelijk doen is hun verantwoordelijkheid.
Maar alsjeblieft, wanneer je jouw eigen privacy en de privacy van je klanten verantwoordelijk neemt, zorg voor uniek wachtwoorden per site. Nu is er een aantal mogelijkheden om dat te doen. En die mogelijkheden deel ik graag met je.
Een password manager gebruiken
De makkelijkste manier is een password manager te gebruiken. Dat is echter niet zonder risico. Eén van de meest populaire password managers (lastpass) is zo vaak gehackt, dat ik er absoluut geen vertrouwen in heb.
Moderne browsers zoals Chrome, FireFox en Edge hebben een ‘ingebouwde password manager’. En ondanks het feit, dat er minder rapporten zijn over het hacken van deze password managers, heb ik er toch niet al te veel vertrouwen in.
Jouw eigen password manager
Ik gebruik al jaren een compleet ander alternatief. Ik moet eerlijk toegeven, dat een password manager een stuk makkelijker is, maar voor de veiligheid van je WP Website zou niet ‘gemak’ je eerste probleem moeten zijn. Ik gebruik een PHP script wat op basis van één geheim wachtwoord en de inlog URL een uniek wachtwoord genereert.
Stel je voor. Mijn algemene ‘geheime wachtwoord’ zou ‘fietsbel’ zijn. Voor de duidelijkheid… dat is dus niet mijn wachtwoord.
Maar vanuit deze term, zou ik makkelijk unieke wachtwoorden kunnen genereren, zonder ooit mijn wachtwoord ‘fietsbel’ bekend te hoeven maken.
Hier is een heel eenvoudig PHP script voor. Omdat ik je niet wil vermoeien hoe we PHP lokaal kan installeren en alles nog net iets meer efficient kan doen, als in dit voorbeeld, beperken we ons tot de makkelijkste oplossing.
En op die link plak je onderstaande code in.
<!DOCTYPE html>
<html>
<body>
<?php
$pw = "fietsbel";
$surprise = 'XYZ!@#';
$site = "www.google.com";
echo substr(md5($pw . $site),4,12) . $surprise;
?>
</body>
</html>
Bij het inplakken van de code heb je natuurlijk ‘fietsbel’ vervangen door jouw geheime wachtwoord voor alle sites en ‘www.google.com’ door de eigenlijke inlog URL. Wat je bij ‘XYZ!@#’ in moet vullen is misschien minder duidelijk.
Maar dat is vrij eenvoudig uit te leggen.
Omdat de meeste websites eisen, dat je wachtwoord hoofdletters en bijzondere tekens bevat, moet je deze tekens toevoegen aan je wachtwoord. De makkelijkste manier is door een ‘random string’ van hoofdletters en bijzondere tekens aan je wachtwoord toe te voegen.
Je kan dus XYZ!@# vervangen door iedere willekeurige reeks van hoofdletters en bijzondere tekens.
Ben je erg creatief, dan kan je bijvoorbeeld ook een ander script gebruiken, zoals het onderstaande :
<!DOCTYPE html>
<html>
<body>
<?php
$pw = "fietsbel";
$surprise = 'XYZ!@#';
$site = "www.google.com";
echo substr(md5($pw . $site),4,8) . $surprise . substr(md5($pw . $site),14,17);
?>
</body>
</html>
Wanneer je op de knop ‘Run’ klikt krijg je een tekenserie die je in kan voeren bij registratie als je password.
Wanneer je ooit opnieuw inlogt op dezelfde website heb je alleen je ‘geheime gegevens’ voor alle website en de URL van de inlog nodig om opnieuw in te kunnen loggen.
Jouw werkelijke wachtwoord staat nergens opgeslagen in geen enkele password manager.
Download geen onbekende / onveilige programma’s
De beste manier om de veiligheid van je WP website om zeep te helpen is door programma’s te downloaden waarvan je geen idee hebt hoe veilig ze zijn.
Ongeveer een jaar geleden dacht een lezer van mijn blog mij een plezier te doen door mij erop te wijzen hoe ik 60 euro per maand kan besparen door via een sitelink die zij doorgaf een ‘gratis versie’ van Adobe Creative Cloud te downloaden.
Enkele maanden geleden vroeg ze mij haar website te herstellen, omdat iedere link op haar website naar pornosites doorverwees. Nogal ironisch, omdat haar site er vooral op gericht was om jonge vrouwen zich tegen ‘predators’ te leren beschermen.
De meeste ‘gratis’ hacks van bekende programma’s zijn een stuk duurder dan de originele software. Niemand neemt de moeite om licentiecodes te hacken, als ze niet denken hier aan te verdienen.
Het veilig houden van mijn website.
Voor de veiligheid van je WP website is een aantal dingen van groot belang :
- Maak minimaal eenmaal per dag een ‘offsite’ back up. Als er iets fout gaat, kan je in ieder geval terug!
- Update je plugins regelmatig. Ik weet dat het frustrerend kan zijn. Net na die melding van ’11 plugins to update’ krijg je een dag later een melding dat er ‘7 plugins to update’ zijn. Aan de andere kant, wees blij dat ‘men’ er zo boven op zit. Mijn eigen beleid is éénmaal per week mijn plugins te updaten, net nadat er een nieuwe backup is gemaakt.
- Gebruik geen ‘nulled’ plugins. Wanneer je premium plugins gebruikt, moet je een licentiecode invullen. Maar omdat WordPress plugins ‘open source’ zijn, kost het een ervaren programmeur weinig moeite om ervoor te zorgen, dat iedere code die je invult als ‘geldig’ wordt gezien. En er zijn letterlijk honderden sites (hoofdzakelijk gesitueerd in India, Rusland en China) waar je ‘gratis’ premium plugins kan downloaden… of voor slechts een fractie van de originele prijs. Je mag je afvragen, hoe ‘veilig’ deze plugins zijn.
De code is aangepast om licentiecodes te omzeilen. Maar welke code is er nog meer ingebouwd? - Laat je site regelmatig scannen op ‘known malware’. Sommige hosters doen dit al standaard, maar het grootste deel van de hosters doet dit niet.
- Zorg voor een ‘down alert’ voor je website. Als je website down gaat omdat deze gehackt is, zorg dat je het tijdig weet. Je wilt werkelijk niet, dat jouw website veranderd in een propaganda machine voor één van de partijen in deze oorlog.
Sommige hosting partijen bieden de punten 1,2,4 en 5 als standaard service aan binnen hun hosting pakket. Andere partijen doen dit niet. Enkele jaren geleden al heb ik voor WordXPression het ‘WordXPression Service Contract‘ geïntroduceerd. Een volledig geautomatiseerde dienst, die de kwaliteit van je website bewaakt.
Wil je het beste voor de veiligheid van je WP website, maar kan je hoster dit niet garanderen, dan is het WordXPression Service Contract een goede oplossing.
Wil je liever je website door WordXPression laten hosten, dan is dit service contract bij de website inbegrepen. Neem contact op voor de verschillende hosting mogelijkheden die WordXPression aanbiedt.