Tools / Cyber Security Interview Questions
What happens when a Buffer Overflow attack occurs?
A buffer overflow happens when a program writes more data into a fixed-size memory buffer than it was allocated to hold, causing the extra bytes to spill into adjacent memory.
If that adjacent memory holds control data, like a function's return address on the stack, an attacker can craft the overflowing input to overwrite it with an address pointing to their own malicious code, hijacking the program's execution flow when the function returns.
- Can crash the application, a simple denial of service
- Can allow arbitrary code execution with the privileges of the vulnerable process
- Historically one of the most common routes to remote code execution in C and C++ software
Defenses include bounds checking, stack canaries, address space layout randomization (ASLR), and using memory-safe languages that don't allow raw buffer manipulation.
More Related questions...