But you get it right, a buffer overflow occurs when an application receives more or different inputs
than it expects.
So why are we spending so much time with this?
Because the result is an error revealing system memory that is otherwise protected in an accessible
you follow.
All right, so normally an application will only have access to a specific area of memory, and that's
called the buffer, so buffer overflows allow an attacker to write malicious code in that memory area
by allowing access to memory locations outside of the applications buffer.
For example, an application might expect to receive a 15 character string for a username if it takes
more than 15 characters.
It might cause buffer overflow and then expose system memory.
So I'll show you the following footage we get command.
And it shows an example of sending a long string to the system to create a buffer overflow.
Get slash indexed question mark.
Username equals and then 37 capitalises.
So Buffer Overflow exposes a security vulnerability, but does not necessarily cause damage on its own.
However, after attackers discovered the vulnerability.
They'll be able to use it and overwrite memory locations with her own code.
If the attacker uses a buffer overflow to crash his system or disrupt their service.
It's considered a dos attack.
And more often, the attacker's goal is to add malicious code to a memory location and the system can
run.
It's not easy for an attacker to know the exact memory location where the malicious code is stored.
Sometimes making it difficult for the computer to run it, however.
They can make an informed guess in order to be aggressive.
In fact, a popular method that facilitates prediction is no action or an opt.
So these commands are written as an slide or knob slide.
So many Intel processors use the hexadecimal mine usually written as S90 as the not command, so a string
of x 90 characters is an NLP sled or not sled.
So the attacker writes a long series of x 90 instructions into memory and then writes malicious code.
When a computer executes the code from memory and it comes to a knob, it goes to the next memory location.
With a long sequence of knobs.
The computer simply scrolls through all of them until the last one and then runs the code on the next
instruction.
If the attacker can run the computer from a memory location anywhere on the knob slide, well, the
system's going to run the attacker's malicious code.
So as you might imagine, the attack possibilities are nearly limitless, right?
I mean, they let me just leave it at that.
A buffer overflow attack involves several different items, though, but they all happen at the same
time.
The attacker sends a single data string to the application.
Now, the first part of the string causes the buffer overflow.
The next part of this sequence is a long sequence of knobs followed by the attacker's malicious code
stored in the attack system's memory.
Finally, the malicious code works.
Now, from an administrator's point of view, Solution's very easy key systems updated with available
patches.
You didn't expect that one, did you?