Recent developments in low-level software security

Conference object English OPEN
Agten, Pieter ; Nikiforakis, Nick ; Strackx, Raoul ; De Groef, Willem ; Piessens, Frank (2012)
  • Publisher: Springer
  • Related identifiers: doi: 10.1007/978-3-642-30955-7_1
  • Subject: C language | [ INFO ] Computer Science [cs] | full abstraction | software security

Part 1: Keynotes; International audience; An important objective for low-level software security research is to develop techniques that make it harder to launch attacks that exploit implementation details of the system under attack. Baltopoulos and Gordon have summarized this as the principle of source-based reasoning for security: security properties of a software system should follow from review of the source code and its source-level semantics, and should not depend on details of the compiler or execution platform.Whether the principle holds – or to what degree – for a particular system depends on the attacker model. If an attacker can only provide input to the program under attack, then the principle holds for any safe programming language. However, for more powerful attackers that can load new native machine code into the system, the principle of source-based reasoning typically breaks down completely.In this paper we discuss state-of-the-art approaches for securing code written in C-like languages for both attacker models discussed above, and we highlight some very recent developments in low-level software security that hold the promise to restore source-based reasoning even against attackers that can provide arbitrary machine code to be run in the same process as the program under attack.
  • References (21)
    21 references, page 1 of 3

    1. Abadi, M., Plotkin, G.D.: On protection by layout randomization. In: CSF. pp. 337- 351. IEEE Computer Society (2010)

    2. Agten, P., Strackx, R., Jacobs, B., Piessens, F.: Secure compilation to modern processors. In: CSF (2012)

    3. Akritidis, P., Costa, M., Castro, M., Hand, S.: Baggy bounds checking: An e cient and backwards-compatible defense against out-of-bounds errors. In: Proceedings of the 18th USENIX Security Symposium. Montreal, QC (Aug 2009)

    4. Azab, A., Ning, P., Zhang, X.: Sice: a hardware-level strongly isolated computing environment for x86 multi-core platforms. In: Proceedings of the 18th ACM conference on Computer and communications security. pp. 375-388. ACM (2011), http://www4.ncsu.edu/~amazab/SICE-CCS11.pdf

    5. Baltopoulos, I.G., Gordon, A.D.: Secure compilation of a multi-tier web language. In: TLDI. pp. 27-38 (2009)

    6. Barrantes, E.G., Ackley, D.H., Forrest, S., Palmer, T.S., Stefanovic´, D., Zovi, D.D.: Randomized instruction set emulation to disrupt binary code injection attacks. In: Proceedings of the 10th ACM Conference on Computer and Communications Security. pp. 281-289. Washington, D.C. (Oct 2003)

    7. Bhatkar, S., DuVarney, D.C., Sekar, R.: Address obfuscation: An e cient approach to combat a broad range of memory error exploits. In: Proceedings of the 12th USENIX Security Symposium. pp. 105-120. Washington, D.C. (Aug 2003)

    8. Bhatkar, S., Sekar, R.: Data space randomization. In: Proceedings of the 5th Conference on Detection of Intrusions and Malware & Vulnerability Assessment. Lecture Notes in Computer Science, vol. 5137. Paris, France (Jul 2008)

    9. Bulba, Kil3r: Bypassing Stackguard and Stackshield. Phrack 56 (2000)

    10. Chew, M., Song, D.: Mitigating bu er overflows by operating system randomization. Tech. Rep. CMU-CS-02-197, Carnegie Mellon University (Dec 2002)

  • Metrics
    No metrics available
Share - Bookmark