11.07.2015 Views

syssec_red_book

syssec_red_book

syssec_red_book

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

9 Legacy SystemsJoined into a single entity through an interconnection of informationservices, an information system is only as strong as its weakest link. Thislink may well be an obscure, older library or a program that is vulnerableto attacks. While security issues occur in all software, older programs can beespecially vulnerable, as they were not designed with security in mind. Andeven if they were, the programmers probably did not have knowledge of thelatest and greatest exploitation techniques.9.1 What Is the Problem?The research community has long recognized the security problem introducedby legacy systems, and multiple interesting solutions were developed. Despiteall these efforts, attacks are reported daily [284, 301, 343]. The problems persistin the real world because the adopted solutions prove insufficient, whereasmore powerful protection mechanisms are too slow for practical use, breakcompatibility with other programs, or require source code that is not availablefor legacy software.Among the most dangerous software errors that are of primary importancein legacy software are memory corruption attacks in the C/C++ languages[143]. From clients to servers and from big iron to mobile phones—allhave fallen victim. For the rest of this section, we will thus mainly focus onthis particular vulnerability.Memory corruption attacks have become moreand more sophisticated. Typically, they arrive asdata over a regular communication channel, e.g.,the network, and trigger pre-existing low-level softwarevulnerabilities. In a classic exploit, a programreceives input from an attacker, and stores it in anundersized buffer, e.g., an array. A buffer overflow(i.e., a particular type of memory corruption attacks)occurs when the program is able to write beyond the end of the buffer.When attackers successfully exploit such flaws, they usually gain control over

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!