A buffer overflow occurs when a program writes past the end of an allocated memory block. This can corrupt adjacent data, cause a Program Crash, or allow for malicious Code Execution. It remains a persistent Security Vulnerability often exploited by attackers.