arrow_backTerug naar veldaantekeningen
WEB SECURITY Gepubliceerd 9 Aug 2026

Wat is een Buffer Overflow? Een Praktische Uitleg

Leer hoe buffer overflows echt werken met een echt C-voorbeeld, een stack-diagram en de tools om het zelf te zien gebeuren.

Een buffer overflow treedt op wanneer een programma meer data in een vaste geheugenblok schrijft dan die blok kan bevatten. De extra bytes lopen over naar aangrenzend geheugen, en afhankelijk van wat naast die buffer staat, kun je variabelen corrupten, het programma laten crashen of de uitvoeringsstroom volledig kapen. Het is een van de oudste bug-klassen in softwareveiligheid en verschijnt nog steeds in CTFs, CVEs en embedded firmware vandaag de dag.

Het kwetsbare patroon

Hier is een klassiek voorbeeld in C:

#include <string.h>

void greet(char *name) {
    char buffer[64];
    strcpy(buffer, name);
}

int main(int argc, char **argv) {
    greet(argv[1]);
    return 0;
}

strcpy kopieert welke string je ook doorgeeft in buffer, zonder grenzencontrole. Als argv[1] langer is dan 64 bytes, gaat het kopieën verder voorbij het einde van de array. Op de stack zit buffer onder andere lokale variabelen, opgeslagen registers en uiteindelijk het retouradres dat de CPU vertelt waar heen te springen nadat greet() klaar is. Overschrijf dat retouradres met een adres dat je controleert, en je controleert wat vervolgens wordt uitgevoerd.

Waarom dit nog steeds compileert en draait

C en C++ voeren geen automatische grenzencontrole uit op onbewerkte arrays. Functies zoals strcpy, gets, sprintf en strcat schrijven graag voorbij het einde van een buffer omdat ze zich alleen zorgen maken over een null-terminator of een bronlengte, niet over de werkelijke grootte van de bestemming. Vergelijk dat met strncpy of snprintf, die een expliciet grootte-argument nemen en daar stoppen. De kwetsbaarheid is eigenlijk niet

Geschreven met AI-ondersteuning, herzien en gepubliceerd door Michal Pilch (CISSP), Korra Studio.

Klaar om verder te gaan?

Dit is één aantekening uit de kennisbasis van Korra Studio — het platform koppelt elk onderwerp aan 1-op-1 mentoring.

Gratis beginnenarrow_forward