Extreme Exploits: Advanced Defenses Against Hardcore Hacks (Hacking Exposed)

Overview

The trust you place in your software is often a blind faith. Many of the people that I speak with on a regular basis about computer security and software have developed a love-hate relationship with their software vendor(s). Who would have thought we would need to have a whole new classification of software dubbed malware, which is the term now used to describe malicious software designed to take control over your system, steal your confidential information, corrupt your data, distribute unsolicited e-mail, attack or infect other systems on your network, or just spray systems on the Internet with random packets or targeted denial-of-service attacks. These problems are primarily the result of specific vulnerabilities in the software you use (or develop yourself). Oftentimes they are manifested by loose boundaries and constraints in your software, inappropriate assumptions when allocating memory or receiving input from sources outside of the program, or simply unconsidered decisions about the activity or privileges of the softwarein other words, bugs . However, they are also the result of users not being informed as to what these vulnerabilities really mean and having higher expectations (than we should have) of our software vendors .

We'll explore the most critical vulnerabilities that exist in many applications today and we'll highlight some of the new attacks that are sure to become more common in the future. Although not intending to provide an exhaustive list or discussion about every possible area of weakness, we hope this information will assist you in the process of finding these errors in your programs or understanding how these vulnerabilities came to exist within the applications on which you rely.

This chapter will provide information on the following:

Note 

Some of the more detailed technical information (in case you want to skip straight to it) is focused within the section entitled "Threats and Vulnerabilities." But we encourage you to consider the first section, "Application Attack Vectors," for a more complete introduction.

Категории