Table 38 Buffer Overflow
|
Attack name |
Buffer overflow |
|
Class/subclass |
Manipulate/application manipulation |
|
Sample implementations |
Critical application vulnerabilities; check http://www.cert.org for the latest Historical examples: Morris worm |
|
Prerequisites |
Direct access |
|
Pertinent vulnerability |
Software |
|
Typical use |
Escalate privileges on target machine |
|
Attack result |
Increased access |
|
Likely follow-up attack |
Read and composite |
|
OSI layers |
7 |
|
Detection |
IDS and application security |
|
Protection |
Application security |
|
Detection difficulty |
4 |
|
Ease of use |
3 |
|
Frequency |
5 |
|
Impact |
5 |
|
Overall rating |
45 |
Buffer overflows are the most common form of application vulnerability. In short, they occur when an application developer fails to do proper bounds checking with the memory addresses an application utilizes. For example, a typical program might expect 20 bytes of input from the user for a particular memory address. If the user instead sends 300 bytes, the application should drop the other 280 bytes. Unfortunately, if the application has a coding mistake, the 280 bytes can overrun other parts of memory and potentially execute code with the privileges of the original application. If the vulnerable application runs as root, for example, a successful buffer overflow attack usually results in the attacker gaining root privileges. For more detail on buffer overflows, refer to the seminal work on the subject: "Smashing the Stack for Fun and Profit" by Aleph One, which can be found at the following address: http://www.shmoo.com/phrack/Phrack49/p49-14.
Buffer overflow attacks earn the highest threat score of any attack in this book. This is primarily because of the damage they cause and the inability of most security technology to help. Most stateful firewalls, for example, permit or deny traffic at Layer 4. A web buffer overflow attack can be remotely launched by an attacker, and because port 80 traffic is permitted by the firewall, the attacker gets through and likely is successful. The sad part is that buffer overflow attacks have been known for years. However, there are just too many places that buffer overflow attacks can occur in today's complex code, and stopping every single one of them is almost impossible.
Continue reading here: Table 39 Web Application
Was this article helpful?
Readers' Questions
-
brad1 month ago
- Reply
-
Ulpu1 month ago
- Reply
-
Vigo7 months ago
- Reply
-
klaudia8 months ago
- Reply
-
Angela8 months ago
- Reply