When ever a program is compiled there is space given for the input to the program. The input’s size is defined at the time of programming. So we can take a example as if I have coded a program for asking a input of 8 bytes (1 byte = 1 letter) and someone inputs 9 byte answer, the result would be called BUFFER OVERFLOW. In Hacking scene exploits are written for these vulnerabilities and by using this exploit they execute the Payload and take control of the machine