Je zal inmiddels wel weten dat beveiliging erg belangrijk is voor webdevelopers en eigenaren van websites. Door de enorme groei in populariteit van het internet, als dé nieuwe manier van communicatie, onderzoek, en winkelen, zijn beveiligingscontroles op websites van essentieel belang om de verspreiding van spam en malware te voorkomen.
Of je nou een kleine persoonlijke blog hebt of een enorme internationale webshop, iedereen kan gehackt worden. Sommige mensen zullen je website beschadigen of er malware op zetten, sommige hackers zullen de data van je klanten stelen, en proberen belangrijke content van je server te verwijderen. Je moet dus zorgen dat jij, je server, en alle gevoelige informatie goed beschermd zijn.
Laten we beginnen door te kijken hoe veilig je website op dit moment al is. We zullen verderop tips geven over het blokkeren van eenvoudige manieren waarom makers van kwaadaardige software schade kunnen doen. WordPress is standaard prima beveiligd, maar om echt alles dicht te maken moet je nog wat extra dingen regelen.
Bekijk onze videogids voor het uitvoeren van een veiligheidscheck op je website
Website beveiligingscheck: waarom is het belangrijk?
Wellicht denk je dat jouw website zo klein en onbelangrijk is, dat niemand de moeite neemt om te proberen binnen te komen. Of misschien heb je gewoon nooit eerder over cyberbeveiliging nagedacht, en weet je niet goed waarom het belangrijk zou zijn.
Door deze manier van denken waren in 2013 nog 70% van de WordPress installaties kwetsbaar voor aanvallen. Veel van deze kwetsbaarheden ontstonden door verouderde software, omdat mensen er niet genoeg vanaf wisten of het niet belangrijk genoeg vonden om hun website goed te beveiligen, waardoor er een enorm golf aan hackers was die zich richtte op WordPress installaties.
Wat kan er dan precies gebeuren wanneer je website te maken krijgt met een ongewenste indringer? Dit is niet gewoon iets wat een beetje irritant is en wat je kan oplossen door je wachtwoord even te veranderen.
- Er kan code geïnjecteerd worden in je website, waardoor je bezoekers geïnfecteerd worden met malware, die moeilijk te vinden en verwijderen kan zijn.
- Belangrijke pagina’s op je website kunnen beschadigd of verwijderd worden, of volgestopt met links naar illegale websites.
- Het kan resulteren in de verwijdering van bijvoorbeeld blogartikelen of pagina’s.
- Gevoelige informatie, zoals inloggegevens en creditcardgegevens van jou, je gebruikers of je klanten kan gestolen worden en online verkocht.
- Aanvallen kunnen zich mogelijk verspreiden naar andere websites op de server.
- Als Google malware op je website detecteert, zullen ze de toegang blokkeren en de site verwijderen uit de zoekresultaten, waardoor meteen al je Search Engine Optimization (SEO) weg is.
- De gebruikersnaam en wachtwoorden van de admin kunnen veranderd worden, waardoor je niet meer bij de backend kan.
Gehackte sites kunnen een enorm probleem zijn als je een webshop hebt.
En wellicht denk je dat jouw website er niet toe doet voor hackers, maar sommige aanvallen hebben helemaal geen specifiek doel. Veel WordPress aanvallen zijn helemaal geautomatiseerd, waarbij een bot kijkt of er kwetsbaarheden in je website zitten en een aanval uitvoert, zonder dat een mens achter de knoppen zit.
Daarom moet je maatregelen nemen om je website te beveiligen, wat je precieze website ook is.
Waarom wordt WordPress gehackt?
Hacking is wijdverbreid, maar zijn er veelgebruikte kwetsbaarheden die hackers gebruiken?
Je kan je voorstellen dat het inbreken op een website een lastige klus is, die dagen of weken kan duren en een hoop kennis over computers, programmeren en servers vereist. Dat is zeker waar voor doelgerichte aanvallen die binnen proberen te komen bij een grote, goed beschermde website, maar het is een heel ander verhaal als het gaat om kleine WordPress domeinen.
De grote meerderheid van aanvallen op WordPress zijn alleen maar succesvol omdat mensen makkelijke wachtwoorden gebruiken, en hun thema’s en plugins niet updaten. Hackers breken op zulke websites meestal in met geautomatiseerde programma’s.
Het kraken van een wachtwoord is de meest eenvoudige manier van hacken, maar komt zoveel voor omdat het simpelweg werkt. Veel mensen laten de inloggegevens van hun WordPress op de standaard “admin” staan, waardoor hackers nog maar de helft hoeven te raden, en gebruiken dan ook nog eens een makkelijk te raden wachtwoord.
Wanneer dat niet lukt, kunnen hackers alsnog bekende kwetsbaarheden in populaire plugins of verouderde WordPress versies gebruiken. Daarom is het ook zo belangrijk om alles regelmatig te updaten.
Er zijn natuurlijk nog heel veel ingewikkelde en geavanceerde manieren om op een website in te breken. Maar de meeste WordPress aanvallers maken gebruik van de makkelijkste manieren, zoals een zwak wachtwoord of verouderde software, waardoor het inbreken erg makkelijk is.
Zo voer je een website beveiligingscheck uit
De eerste stap voor het beveiligen van je website is controleren hoe veilig je website op dit moment is. Zitten er duidelijke kwetsbaarheden in je backend die je meteen moet repareren, of eenvoudige reparaties die je in enkele minuten kan toepassen?
Gebruik een online tool
Een eenvoudige en snelle manier om je website te controleren op malware en kwetsbaarheden is het gebruiken van een online scanner. Deze scannen je website en identificeren veelvoorkomende problemen. Ze zijn erg eenvoudig te gebruiken, en je hoeft er verder geen plugins of andere software voor te installeren, en is in een paar seconden geregeld.
Er zijn tientallen online scanners om uit te kiezen, maar we zullen er een paar in het hoofdstuk over tools noemen. Voor nu, laten we een eenvoudig voorbeeld nemen dat eenvoudig te gebruiken is: Sucuri SiteCheck.
Deze tool is handig omdat je ook meteen de Sucuri plugin kan installeren, zodat je meteen gedetecteerde problemen kan oplossen.
Bij het scannen van je website controleert Sucuri op blocklists, zoekt naar problemen zoals geïnjecteerde spam of verouderde software, en scant vluchtig alle beschikbare code op malware. Er worden ook een aantal suggesties gedaan om je website beter weerbaar te maken tegen aanvallers.
Tools zoals dit zijn een geweldig beginpunt voor het detecteren van verborgen malware en andere problemen.
Scan je website met een WordPress plugin
De meeste online scanners werken prima, maar het is wel beter om een plugin te gebruiken die ook echt in de code van je website kan kijken en kwetsbaarheden of goed verstopte malware kan vinden.
We hebben de plugin van Sucuri al genoemd. Er zijn nog twee andere populaire beveiligingsplugins: All in One WP Security & Firewall, en de vaakst gedownloade, Wordfence Security.
Nadat je de gewenste plugin hebt geïnstalleerd, word je meteen gevraagd om een scan uit te voeren. Het voordeel van deze plugins ten opzichte van remote scanners is dat ze ook automatisch de malware kunnen verwijderen en andere veranderingen kunnen aanbrengen.
Zoek naar vreemde veranderingen
Als je denkt of weet dat je website geïnfecteerd is met malware, kan het soms toch moeilijk zijn om de bron te achterhalen. Enkele onverklaarbare veranderingen die je opgevallen zijn kunnen je op het juiste spoor zetten, net als het controleren van bestanden die hackers vaak aantrekkelijk vinden:
- Vreemde links naar websites die je niet zelf toegevoegd hebt
- Nieuwe artikelen en pagina’s die je niet gemaakt hebt, of de content van bestaande pagina’s die opeens verandert
- Veranderingen in instellingen die je niet zelf hebt gemaakt
- Een nieuwe gebruiker, zeker één met veel privileges, terwijl jij niks toegevoegd hebt
- Plugins en thema’s die je niet zelf geïnstalleerd hebt
- Malware kan ook vaak kwaadaardige code toevoegen aan je bestanden. Check de bestanden van je thema en plugins, de map wp-content/uploadsWordPress bestanden die in een verkeerde map staan, wp-config.php, en .htaccess. Je zou ook een backup van je website moeten maken, en de code goed begrijpen voordat je iets verandert.
Als je verbinding maakt met je website via FTP, kan je sorteren op recent gewijzigde bestanden of code, die je niet zelf bewerkt hebt.
Als je website met enige regelmaat malware bevat en je kan de oorzaak niet vinden, dan kan het probleem ook liggen aan je server, of een andere website op je server.
Zorg dat alles altijd up-to-date is
Zoals we al zeiden is verouderde software verreweg de meest voorkomende oorzaak voor infecties in WordPress. Als er íets is dat je doet om je website veilig te houden, laat het dan regelmatig WordPress updaten zijn.
De makkelijkste manier om de status van al je software te controleren op je website, is door naar Dashboard > Updates gaan, waar je een melding krijgt als je kernbestanden, thema’s of plugins verouderd zijn.
Aangezien WordPress tegenwoordig automatische updates uitvoert, sinds versie 5.5, zou er niks moeten kunnen verouderen, tenzij je al een écht oude versie van WordPress gebruikt. Je kan alles updaten vanaf dit scherm.
Als je weet dat er een nieuwe versie van WordPress online is, maar deze nog niet kan zien, klik dan op Check again onder Current version.
Je kan ook kijken bij Plugins > Installed Plugins en Appearance > Themes voor updates.
Veilige accounts en sterke wachtwoorden
Een zwak wachtwoord op je hoofdaccount maakt het eenvoudig voor hackers om in te breken met een bruteforce programma, waarmee ze meteen volledige toegang krijgen en alles kunnen aanpassen.
Een ingewikkeld wachtwoord kan wat meer moeite kosten om te onthouden en maakt het inloggen soms wat meer werk. Maar geloof ons, het is nóg meer werk om je website te herstellen na een hack. Het is dus zeker de moeite waard om een beter wachtwoord te gebruiken, zelfs al moet je dit ergens opschrijven.
Je wachtwoord is idealiter een mix van hoofdletters en kleine letters, nummers en symbolen. Nog beter is het als je geen bestaande woorden gebruikt, of namen die mensen kunnen raden, zoals je adres of de naam van je partner.
Het beste is het als je wachtwoord een lange, ingewikkelde rij willekeurige karakters is. We raden je daarvoor aan om een wachtwoordmanager te gebruiken. Een website zoals 1Password of LastPass kan een veilig, niet te raden wachtwoord voor je maken.
Je kan je wachtwoord en e-mail updaten in WordPress door te gaan naar Users > All Users of meteen naar Users > Profile. Scroll naar beneden tot Email onder Contact Info, en New Password onder Account Management.
En als je toch op de pagina Users bent, kijk dan ook even naar al je huidige gebruikers, om te controleren dat er geen verdachte of verkeerde personen tussen staan, of dat iemand te veel rechten heeft. Je zou meteen elke onbekende gebruiker moeten verwijderen.
We raden je ook aan om naar deze gids over het beperken van gebruikersrechten te kijken, zodat alleen jouw eigen account toegang heeft tot gevoelige bestanden op je website.
Controleer je SSL certificaat
Als je SSL certificaat verouderd is, weet je dat meestal meteen: browsers zoals Google Chrome zullen de toegang tot je website blokkeren met een grote waarschuwing. Als je het niet zeker weet, of deze waarschuwing al ziet, controleer dan je SSL certificaat op geldigheid, en of je wel de nieuwste versie van SSL/TLS gebruikt.
Wanneer je een website bezoekt, zou je bij de meeste browsers een icoon van een slotje moeten zien in de adresbalk. Als het certificaat verlopen is, is het slot meestal rood of staat er een streep doorheen.
Klik op het slotje, en klik dan nog eens om de gegevens van het certificaat te zien, waaronder de verloopdatum.
Je kan ook een SSL certificaatchecker gebruiken om je website te scannen, zodat je certificaat niet zomaar verlopen is, en er geen kwetsbaarheden in je SSL protocol zitten.
Veelgeziene kwetsbaarheden
Veel WordPress websites zitten bomvol kwetsbaarheden voor aanvallers, die er onschuldig uitzien, maar meer informatie kunnen bieden dan je eigenlijk wil delen.
Het zichtbaar tonen van je WordPress versie op je frontend vertelt hackers bijvoorbeeld precies welke kwetsbaarheden er al dan niet in je website zitten. Zeker als je een verouderde versie van WordPress gebruikt, moet je die informatie verbergen.
Je kan in je backend bestandseditors vinden onder Appearance > Theme Editor en Plugins > Plugin Editor .
Deze tools zijn erg handig, maar maken ze ook kwetsbaar voor iemand die je website binnenkomt, dus je kan ze beter uitzetten. Dit doe je door de volgende functie toe te voegen aan wp-config.php:
define( 'DISALLOW_FILE_EDIT', true );
SQL injecties zijn ook een bekende manier om in te breken bij een website. Als je formulieren of andere opties voor input van gebruikers hebt, beperk dan het gebruik van speciale karakters en sta alleen veilige, normale bestandstypen toe in je uploads.
Als extra laag beveiliging kan je je bestandsmappen afschermen met een wachtwoord.
Zo bescherm je je website: tips en tools
Als je website malware bevat, zou een goede beveiligingsplugin die moeten kunnen verwijderen. We hebben ook een aantal kwetsbaarheden bekeken waarop je kan controleren.
Bekijk onze videogids voor het beveiligen van je website
Maar we hebben nog enkele andere korte tips voor het beveiligen van je website en het voorkomen van kwaadaardige code op je website. De meeste van deze tips heb je in een paar minuten geregeld, dus zelfs als je weinig verstand hebt van WordPress en webbeveiliging kan je dit eenvoudig doen.
Kies een veilige host
Wanneer hackers je website proberen binnen te komen, kijken ze vaak naar je server om daar kwetsbaarheden te vinden. Er zijn een hoop goedkope opties voor hosting, maar die investeren zelden in de beste beveiliging voor hun servers.
Shared hosting kan je kans op een infectie verhogen. Als één website op de server malware bevat, kan dit soms naar alle andere websites op dezelfde server verspreid worden. Daardoor kan je een website vol virussen en SEO spam krijgen, zonder dat jij er echt iets aan kon doen.
Daarom is het belangrijk om goed onderzoek te doen en een host te kiezen die geeft om beveiliging en investeert in veilige servers. Je moet nog steeds zelf bezig om je website te beveiligen, maar je data zit op het niveau van de server tenminste veilig.
Gebruik tweestapsverificatie (2FA)
Tweestapsverificatie (ook wel twee-factor-authenticatie of 2FA genoemd), voegt een extra stap toe aan het inloggen. Naast je gebruikersnaam en wachtwoord, moet je bij het inloggen nog een stukje informatie geven: een unieke extra code.
Dit kan bijvoorbeeld een numerieke code zijn die naar je telefoon wordt gestuurd, waardoor je WordPress account bijna onkraakbaar wordt voor bruteforce-aanvallen. Daarnaast kan je ook emailverificatie gebruiken, of een stukje informatie dat alleen jij weet.
Alhoewel er geen ingebouwde optie voor tweestapsverificatie is, zijn er een hoop plugins die deze functie toevoegen aan WordPress.
Kinsta biedt ook tweestapsverificatie voor al onze klanten. Maar als je geen klant bij Kinsta bent, is de Wordfence beveiligingsplugin een goede optie, met ingebouwde 2FA. Je kan ook andere tools gebruiken, zoals de Two-Factor plugin voor het mailen van codes, of Duo voor het opzetten van tweefactorverficatie via een app op je telefoon.
Maak elke dag backups
Een backup maken van je website helpt natuurlijk niet tegen inbrekers, maar als er toch ooit iets gebeurt, kan een backup een hoop gedoe schelen. Het kan echt het verschil maken tussen weken of zelfs jaren aan werk en investeringen kwijt zijn, of even je website terugzetten naar een recente backup van voordat je gehackt bent.
Als je bij Kinsta zit, helpen we je met dagelijkse automatische backups die twee weken lang opgeslagen worden (of 30 dagen voor iedereen in het Kinsta partnerprogramma voor webbureau’s). Daarnaast kan je vijf handmatige backups en een downloadbare backup per week maken, en kan je add-ons kopen waarmee je zelfs elk uur automatische backups kan laten maken of exporteren naar de cloud.
Plugins zoals UpdraftPlus kunnen ook erg handig zijn. Je kan het beste kiezen voor een service waarbij tenminste elke dag een backup gemaakt wordt, zodat de kans klein is dat je belangrijke data kwijtraakt.
Gebruik een Web Application Firewall
Een Web Application Firewall (WAF), gebruikt strikte regels voor het monitoren van inkomend verkeer, en blokkeert IP-adressen die verdacht worden van hacking of DDoS-aanvallen. Hierdoor kan je voorkomen dat allerlei aanvallers zelfs maar bij je server kunnen komen.
Alhoewel je WAF’s kan implementeren op de server, is het nog makkelijker om een cloud-based dienst te gebruiken, bijvoorbeeld van Cloudflare of Sucuri.
Maak verbinding via SSH of SFTP
Soms moet je verbinding maken met je website via FTP om bestanden te verplaatsen of aan te passen. Je kan altijd beter SFTP dan FTP gebruiken, aangezien SFTP veilig is, en FTP niet.
Met FTP wordt je data niet versleuteld. Als iemand het voor elkaar krijgt om mee te luisteren op de verbinding tussen jou en je server, dan kunnen ze alles zien wat er verstuurd wordt, van FTP inloggegevens tot bestanden. Maak dus altijd verbinding via SFTP.
Je kan ook overwegen om SSH toegang te gebruiken, waarbij je verbinding maakt via een opdrachtregel en je website nog directer kan beheren. Dit is veiliger en biedt meer bescherming, en je kan eenvoudige taken ook veilig op afstand regelen. Onze gids over SSH kan je helpen om je hiermee op gang te helpen.
Voorkom DDoS aanvallen
Distributed Denial of Service (DDoS) aanvallen veroorzaken duizenden nepverzoeken aan je server, waardoor je website supertraag wordt, waardoor potentiële bezoekers of klanten je website niet meer kunnen gebruiken. Enkele tips om ze te voorkomen:
- Maak een plan voor wanneer er een DDoS aanval plaatsvindt. Dan hoef je niet in paniek te raken, en kan je gewoon zo snel mogelijk je webhost alarmeren en de aanval stoppen.
- Gebruik een firewall voor webtoepassingen die nepverkeer kan detecteren.
- Gebruik specifieke anti-DDoS software.
- Schakel xmlrpc.php uit zodat externe apps je server niet kunnen gebruiken.
- Schakel de REST API uit voor algemene gebruikers.
Voorkom bruteforce-aanvallen
Bruteforce-aanvallen lijken sterk op DDoS aanvallen, maar het doel is om je admin wachtwoord geautomatiseerd te raden en zo op je website in te breken, in plaats van je server offline te halen. Desalniettemin kunnen zware aanvallen je website ernstig verlammen.
- Ook hier kan een WAF het botverkeer stoppen en de meest eenvoudige bruteforce-aanvallen weren.
- Gebruik verder tweestapsverificatie voor je admin account.
- Stel een log voor activiteiten in en hou een oogje op ongeautoriseerde inlogpogingen.
- Verander de URL van de inlogpagina en stel een beperking in op het aantal inlogpogingen.
- Bescherm je inlogpagina met een wachtwoord.
- Gebruik een lang, willekeurig wachtwoord en verander het regelmatig, minstens jaarlijks.
Website beveiligingstools die je moet kennen
Naast de tools die we al genoemd hebben, zijn er nog een aantal tools voor online beveiliging waarmee je je website kan beschermen:
- Intruder.io: Scan op de nieuwste kwetsbaarheden.
- SSL Server Test: Developer tool die een analyse maakt van je SSL certificaat en zwakheden kan identificeren.
- HTML Purifier: Filtert kwaadaardige code en XSS, ook ideaal als je al slechte code op je website hebt die je wil opruimen.
- Mozilla Observatory: Praktisch advies om je code op te schonen.
- sqlmap: Een testingtool waarmee je kwetsbaarheden in je SQL code kan vinden.
- Detectify: Scan je web apps met de hulp van ethische hackers.
- WPScan: Een CLI-based WordPress scanner.
- SonarQube: Schrijf code die voldoet aan alle standaarden, en die geen kwetsbaarheden bevat.
Website veiligheidschecklist
Is je website beschermd tegen aanvallen? Zorg ervoor dat je alles op deze checklist kan afvinken:
- Gebruik je een veilige host van hoge kwaliteit?
- Heb je je website gescand met een plugin of tenminste een online scanner op virussen en malware?
- Heb je een activiteitenlog ingesteld, en let je daar ook regelmatig op?
- Gebruiken jij en alle andere gebruikers met veel toegangsrechten sterke wachtwoorden en tweestapsverificatie? Zijn alle emails correct?
- Zijn WordPress, de thema’s en plugins, en alle onderliggende systemen, zoals PHP, helemaal up-to-date?
- Is je SSL certificaat geldig en veilig?
- Heb je gecontroleerd op vreemde wijzigingen, verwijdering of toevoegen van content, links die je niet zelf hebt toegevoegd, vreemde instellingen of onbekende bestanden?
- Is je inlogpagina beschermd met een wachtwoord en een beperkt aantal inlogpogingen?
- Heb je gecontroleerd op onbekende nieuwe gebruikers?
- Zijn alle formulieren, reactievelden, en andere plekken voor input goed beveiligd? (Verbied speciale karakters en beperk bestandstypen in de uploads).
- Heb je xmlrpc.php en de REST API uitgeschakeld om DDoS aanvallen te voorkomen?
- Heb je het bewerken van thema’s en plugins vanuit het dashboard uitgezet?
- Wordt er dagelijks een automatische backup gemaakt?
- Gebruik je een firewall voor webtoepassingen (WAF)?
Samenvatting
Beveiliging van je website is belangrijk, dus als je er nog niet mee bezig geweest bent, moet je dat meteen prioriteit geven. Gehackt worden is niet alleen irritant, het kan je echt schade opleveren, van slechte SEO, grote datalekken of hardnekkige malware tot het verliezen van het vertrouwen van je gebruikers.
Je hoeft helemaal niet veel technische kennis te hebben om een aantal belangrijke stappen te kunnen zetten om je website te beschermen. En dat begint allemaal met een goede beveiligingscheck van je website. Zelfs een open deur als een sterk wachtwoord gebruiken of overstappen naar een veilige host kan al een hoop extra beveiliging opleveren.
Nog meer beveiligingstips nodig? Lees meer over 19 andere manieren om je website te beveiligen. En deel vooral je eigen suggesties in de reacties hieronder!
Laat een reactie achter