Ga naar hoofdinhoud
Terug naar Blog
Secure Development

Hoe gebruik je een veilig frontend-framework voor je website?

28 november 2024 · 6 min leestijd · door Tristan Wieffering, Security Specialist

Artikel inhoud

Wat is een Frontend Framework?

Een framework is een toolkit - een startpunt voor het ontwikkelen van je website. Het standaardiseert de manier waarop je je software structureert, de code, en regelt veel zaken die elke website nodig heeft. Op basis van onze ervaringen met kwetsbaarheden in de praktijk, zijn hier de drie belangrijkste tips voor het veilig gebruiken van frontend frameworks.

1. Vertrouw Niet op je Frontend

De frontend wordt frontend genoemd omdat het het deel van de websitecode is dat draait op de computer van de bezoeker. Dit betekent dat je de frontend niet moet vertrouwen. Iemand met kwaadwillende bedoelingen kan gemakkelijk de broncode van de frontend bekijken of aanpassen. De backend moet beveiligingscontroles onafhankelijk uitvoeren, inclusief het verifiëren van gebruikersauthenticatie en toegang tot gevoelige gegevens. Gevoelige informatie of secrets zoals wachtwoorden of API-sleutels horen niet in de frontend.

2. Ken de Beperkingen van je Framework

Een frontend framework is nuttig, met name voor het voorkomen van cross-site scripting (XSS). Frontend frameworks zijn geen magische oplossingen - je moet als ontwikkelaar rekening houden met uitzonderingen.

Angular

Als je consequent interpolatie in Angular gebruikt ([object Object]), ben je beschermd. Vermijd echter:

  • Directe interactie met DOM-elementen buiten Angular (bijv. ElementRef)
  • Overschrijven van Angular's veiligheidsfuncties zoals bypassSecurityTrustHTML
  • Dynamisch genereren van templates met gebruikersinvoer

Vue.js

Vue.js biedt sterke ondersteuning via tekstinterpolatie. Let op:

  • Wees voorzichtig met 'src' en 'href' attributen - Vue.js encodeert alleen dubbele aanhalingstekens
  • Gebruikersinvoer in event handlers wordt behandeld als JavaScript
  • Direct DOM-manipulatie via v-html brengt risico's met zich mee

React

React volgt een vergelijkbare aanpak. Let op:

  • Wees voorzichtig met 'src' en 'href' - React encodeert ook alleen dubbele aanhalingstekens
  • Vermijd dangerouslySetInnerHTML en directe DOM-manipulatie
  • Wees voorzichtig met de spread-operator bij componenten

3. Houd Software Up-to-date

Software-updates en afhankelijkheidsbeheer zijn altijd een beveiligingsuitdaging voor frontend frameworks. Controleer periodiek op nieuwe kwetsbaarheden. Hulpmiddelen zoals npm audit en Dependabot kunnen helpen. Beperk bovendien software-afhankelijkheden en gebruik alleen vertrouwde bronnen.

Conclusie

  • Vertrouw je frontend niet. Gebruik de backend voor geheimen en essentiële beveiligingscontroles.
  • Wees je bewust van de beperkingen van je framework. Een framework is alleen veiliger als het correct wordt gebruikt.
  • Houd software-updates in de gaten en zorg voor tijdige beveiligingspatches.

Benieuwd of jouw frontend veilig is? Neem contact met ons op via [email protected].

Web Application Security Assessment