Geavanceerde tips voor je website
Heb je een website voor je bedrijf? Of laat je een nieuwe site ontwikkelen? Hieronder een aantal zaken waar je op moet letten.
Hoe waardevoller de informatie is die je aanbiedt of verwerkt op de website (bijvoorbeeld betalingen, creditcard, NAW-gegevens, dure producten ect), hoe interessanter dit is voor aanvallers. Voor personen met slechte bedoelingen wordt het steeds makkelijker om dergelijke waardevolle informatie te achterhalen. Zo zijn er op het internet talrijke softwareproducten te downloaden die websites op het gehele internet scannen en, op geautomatiseerde wijze, proberen in te breken met malafide injecties voor de uitbuiting van bestaande kwetsbaarheden in systemen. Zo kunnen zelfs aanvallers met beperkte technische kennis en middelen al veel schade aanbrengen aan jouw bedrijf, website en/of achterliggende systemen. Voor actoren met geavanceerdere technische kennis en vergaande middelen is mogelijk jouw informatie ook interessant. Daarom is het zeer belangrijk om, voordat je een website online zet, zeer goed na te denken over hoe veilig deze is, waar mogelijk zwakke plekken aanwezig zijn en wat je precies moet doen in het geval van een hack.
Nieuwe website
Als je nog geen website hebt en laat ontwikkelen door een derde partij is het lastig om in te schatten hoe veilig het eindproduct zal worden. Vraag daarom aan je leverancier of er wordt ontwikkeld aan de hand van het 'secure by design'-principe, dat inhoudt dat software die wordt geleverd vanuit de basis veilig ontworpen is. Echter, 100% veiligheid bestaat niet aangezien ontwikkelaars mensen zijn en fouten maken, hoe veilig ze ook werken. Applicaties kunnen daarom kwetsbaarheden bevatten, waar kwaadwillenden naar op zoek gaan. Eenmaal gevonden, zullen zij deze misbruiken en mogelijk proberen uit te buiten. Vraag daarom aan de ontwikkelaar of de geleverde applicatie is getest door een onafhankelijke derde partij en vraag naar de resultaten. De bouwer van de website zal op zijn beurt gebruik moeten maken van bekende webapplicatie securitystandaarden zoals bijvoorbeeld Web Standards and Specifications van OWASP en de ICT-Beveiligingsrichtlijnen voor Webapplicaties van het NCSC.
Toegang en beveiliging van een CMS
Wanneer je een website laat ontwikkelen krijg je veelal ook de keuze om gebruik te maken van een achterliggend content management systeem (CMS) om de website te voorzien van inhoud. Los van de functionele wensen en eisen is de keuze voor een CMS een zeer belangrijk beslismoment welke onder andere ook de kwetsbaarheid van jouw website bepaalt. Content management systemen komen grofweg in 2 smaken; lokaal of uitbesteed. De lokale versie installeer je op jouw eigen server waarna je zelf volledig verantwoordelijk bent voor het onderhoud, waaronder het installeren van kritieke securitypatches en -updates. Wanneer je het CMS uitbesteedt, draait de software voor het CMS op een serverruimte (of datacentrum) in beheer van een externe hostingpartij. Hoewel je zelf verantwoordelijk bent voor het beheer van het CMS, ligt het eigenaarschap van de server waar het CMS op draait bij de hostingpartij. Ook kennen we een variant in de vorm van een software-as-a-service (SaaS) dienst waarbij je als klant helemaal niets hoef te installeren, updaten of beheren. Alle software voor het CMS draait op de servers van de SaaS dienstverlener die vervolgens ook verantwoordelijk is voor het gehele technisch beheer en up-to-date houden van alle systemen. Om er zeker van te zijn dat dat in de praktijk ook echt gebeurt leg je dit contractueel vast.
Implementeer een beveiligingscertificaat
Of er nu betalingen plaatsvinden op jouw website of niet, het is altijd aan te raden een beveiligingscertificaat te implementeren. Met een dergelijk certificaat zorg je ervoor dat de communicatie tussen de browser en server versleuteld wordt. Transport Layer Security (TLS), en de voorganger Secure Sockets Layer (SSL) bestaan uit encryptie-protocollen die dit mogelijk maken. Een beveiligingscertificaat voor je bedrijfswebsite kun je zelfstandig aanvragen, of via jouw hostingprovider. Deze kan je ook vertellen welke soorten certificaten er zijn en wat deze kosten . Een certificaat hoeft niet altijd geld te kosten, er zijn namelijk ook gratis varianten te verkrijgen zoals bijvoorbeeld Let's Encrypt.
Security test door een externe partij
Tot slot is het erg belangrijk je bestaande of nieuwe website periodiek te laten onderzoeken door een onafhankelijke externe partij die is gespecialiseerd in securitytesting. Zij kunnen de beveiliging van je bedrijfswebsite, en die van het hele bedrijfsnetwerk onder de loep nemen. Zo'n bedrijf kan dan verschillende soorten security-onderzoeken uitvoeren die enorm variëren in diepgang en complexiteit. Zo kun je bijvoorbeeld kiezen voor een snelle (niet diepgaande) geautomatiseerde scan op het bedrijfsnetwerk maar je kunt ook de volledige broncode van de website en achterliggende systemen laten onderzoeken. Maar uiteraard zijn er nog vele tussenliggende varianten. Welke securitytest je kiest is sterk afhankelijk van wat je wil beschermen en welke systemen en diensten daarvoor onderzocht dienen te worden. Het bepalen van de omvang en diepgang (scope) doe je idealiter in overleg met de experts van een dergelijk securitybedrijf.
Een van de bekendste varianten van een securitytest is een zogenaamde penetratietest, ook wel pentest genoemd. Hierbij worden kwetsbaarheden ook echt als aanvalstechniek gebruikt om in de systemen in te breken. Er zijn tal van bedrijven in de markt die de beveiliging kunnen testen. Vergeet bij het bepalen van de scope van de test niet de eventuele webservices en API’s die jouw bedrijf (bewust of onbewust) aanbiedt mee te nemen in de scope van de securitytest voordat je ze online zet.
Veilig online betalen
Wanneer klanten online op jouw website kunnen betalen, rekenen ze af via internet. Bijvoorbeeld met iDEAL, PayPal, door het invullen van creditcardgegevens of door opdracht te geven voor een eenmalige afschrijving. Online betalen wordt veel gedaan en is erg makkelijk, maar het brengt wel risico's met zich mee. Deze risico's kunnen vermeden worden door veilig online te betalen. Veilig online betalen is nodig om cybercriminelen niet de kans te geven de inlog- en betaalgegevens van je klanten in handen te laten krijgen zodat zij geld van hun bank- of spaarrekening kunnen halen. Als jouw klanten online betalen, willen zij er ook zeker van zijn dat hun geld bij de juiste partij terechtkomt en dat hun betaalgegevens niet onderweg door criminelen onderschept worden. Hiervoor is het belangrijk dat zij zaken doen met een bekende en betrouwbare verkoper en gebruik maken van een veilige internetverbinding die door jou kan worden aangeboden.
Let op
Het hebben van een beveiligde verbinding zegt niets over de inhoud op de website. Aanvallers misbruiken dit door een replica website te ontwikkelen die sterk lijkt op het origineel inclusief logo's, kleuren en is voorzien van een veilige verbinding met als doelgebruikers over te halen om gevoelige gegevens achter te laten. Dit principe staat bekend als website-spoofing. Bekijk dus goed wanneer je een link ontvangt naar de URL van de website.