28C3 - Version 2.3.5

28th Chaos Communication Congress
Behind Enemy Lines

Mathias Payer
Tag Day 1 - 2011-12-27
Raum Saal 3
Beginn 23:00
Dauer 01:00
ID 4817
Veranstaltungstyp Vortrag
Track Hacking
Sprache der Veranstaltung englisch

String Oriented Programming

Circumventing ASLR, DEP, and Other Guards

The protection landscape is changing and exploits are getting more and more sophisticated. Exploit generation toolkits can be used to construct exploits for specific applications using well-defined algorithms. We present such an algorithm for leveraging format strings and introduce string oriented programming.

String oriented programming takes format string exploits to the next level and turns an intrusion vector that needs hand-crafted exploits into arbitrary code execution. Similar to return oriented programming or jump oriented programming string oriented programming does not rely on existing code but concatenates gadgets in the application using static program analysis.

This talk presents an algorithm and a technique that takes a vulnerable application that contains a format string exploit as a parameter and constructs a format string exploit that can be used to inject a dynamic jump oriented programming dispatcher into the running application. String oriented programming circumvents ASLR, DEP, and ProPolice.

Archived page - Impressum/Datenschutz