Towards practical prevention of code injection vulnerabilities on the programming language level
URL | http://edoc.sub.uni-hamburg.de/informatik/volltexte/2009/14/ |
---|---|
Dokumentart: | Report (Bericht) |
Schriftenreihe: | Berichte des Fachbereichs Informatik der Universität Hamburg |
Bandnummer: | 279 |
Sprache: | Englisch |
Erstellungsjahr: | 2007 |
Publikationsdatum: | 28.04.2009 |
SWD-Schlagwörter: | Datensicherung |
DDC-Sachgruppe: | Informatik |
BK - Klassifikation: | 54.38 |
Kurzfassung auf Englisch:
A large percentage of todays security problems is caused by code injection vulnerabilities. Many of these vulnerabilities exist because of implicit code generation through string serialization. Based on an analysis of the underlying mechanisms, we propose a general model to outfit modern programming languages with means for explicit and secure code generation. Further, we identify the models key components: the language integration, the Foreign Language Encapsulation Type, and the abstraction layer. For each of these components we discuss several potential implementation strategies.
Kurzfassung auf Englisch:
Ein großer Prozentsatz der momentan auftretenden Code-Injection-Verwundbarkeiten existiert aufgrund der üblichen Praxis, dynamisch generierten Code mittels String-Konkatenation zu erzeugen. Basierend auf einer Analyse der grundlegenden Ursachen, die für diese Verwundbarkeitsklasse verantwortlich sind, beschreiben wir ein generelles Modell, das es erlaubt, auf sichere und explizite Art dynamisch Code zu erzeugen. Darauf folgend identifizieren und beschreiben wir die Haupt-Komponenten unseres Ansatzes: die Language Integration, den Foreign Language Encapsulation Type und den Abstraction Layer. Für jede dieser Komponenten diskutieren wir verschiedene Implementierungsstrategien.
Hinweis zum Urherberrecht
Für Dokumente, die in elektronischer Form über Datenenetze angeboten werden, gilt uneingeschränkt das Urheberrechtsgesetz (UrhG). Insbesondere gilt:
Einzelne Vervielfältigungen, z.B. Kopien und Ausdrucke, dürfen nur zum privaten und sonstigen eigenen Gebrauch angefertigt werden (Paragraph 53 Urheberrecht). Die Herstellung und Verbreitung von weiteren Reproduktionen ist nur mit ausdrücklicher Genehmigung des Urhebers gestattet.
Der Benutzer ist für die Einhaltung der Rechtsvorschriften selbst verantwortlich und kann bei Mißbrauch haftbar gemacht werden.