Learn in the textbookAttacks on Web Applications
DefinitionA buffer overflow attack (バッファオーバーフロー攻撃) sends a program more data than the memory area it reserved for input (the buffer) can hold, making the program behave in unexpected ways.
ExplanationIn a program that does not check input length, data spilling out of the area overwrites the neighboring memory. This can make the program crash or run commands the attacker sent in. Besides checking input length, the countermeasure is to apply fixes for the flaw (patches) to the software.
AnalogyIt is like pouring rice into a fixed-size measuring box until it spills into the box next to it and mixes with what is already there.
Memory hook"Overflow" means to spill over. "Buffer" originally means a cushion or a place to hold things for a while.