Fatal injection

A survey of modern code injection attack countermeasures

Review (2017)
Author(s)

Dimitris Mitropoulos (Athens University of Economics and Business)

D. Spinellis (Athens University of Economics and Business)

Affiliation
External organisation
DOI related publication
https://doi.org/10.7717/peerj-cs.136
More Info
expand_more
Publication Year
2017
Language
English
Affiliation
External organisation
Issue number
11
Volume number
2017

Abstract

With a code injection attack (CIA) an attacker can introduce malicious code into a computer program or system that fails to properly encode data that comes from an untrusted source. A CIA can have different forms depending on the execution context of the application and the location of the programming flaw that leads to the attack. Currently, CIAs are considered one of the most damaging classes of application attacks since they can severely affect an organisation's infrastructure and cause financial and reputational damage to it. In this paper we examine and categorize the countermeasures developed to detect the various attack forms. In particular, we identify two distinct categories. The first incorporates static program analysis tools used to eliminate flaws that can lead to such attacks during the development of the system. The second involves the use of dynamic detection safeguards that prevent code injection attacks while the system is in production mode. Our analysis is based on nonfunctional characteristics that are considered critical when creating security mechanisms. Such characteristics involve usability, overhead, implementation dependencies, false positives and false negatives. Our categorization and analysis can help both researchers and practitioners either to develop novel approaches, or use the appropriate mechanisms according to their needs.

No files available

Metadata only record. There are no files for this record.