The product reads data past the end, or before the beginning, of the intended buffer.

Impact: Read Memory
An attacker could get secret values such as cryptographic keys, PII, memory addresses, or other information that could be used in additional attacks.
Impact: Bypass Protection Mechanism
Out-of-bounds memory could contain memory addresses or other information that can be used to bypass ASLR and other protection mechanisms in order to improve the reliability of exploiting a separate weakness for code execution.
Impact: DoS: Crash, Exit, or Restart
An attacker could cause a segmentation fault or crash by causing memory to be read outside of the bounds of the buffer. This is especially likely when the code reads a variable amount of data and assumes that a sentinel exists to stop the read operation, such as a NUL in a string.
Impact: Varies by Context
The read operation could produce other undefined or unexpected results.
Strategy: Input Validation
Strategy: Language Selection
c
// check that the array index is less than the maximum*
c
cc
// check that the array index is within the correct*
cc
// get message from socket and store into buffer*
c
c
// process message* success = processMessage(message);} return success;}