• DocumentCode
    1383126
  • Title

    An Architectural Approach to Preventing Code Injection Attacks

  • Author

    Riley, Ryan ; Jiang, Xuxian ; Xu, Dongyan

  • Author_Institution
    Dept. of Comput. Sci. & Eng., Qatar Univ., Doha, Qatar
  • Volume
    7
  • Issue
    4
  • fYear
    2010
  • Firstpage
    351
  • Lastpage
    365
  • Abstract
    Code injection attacks, despite being well researched, continue to be a problem today. Modern architectural solutions such as the execute-disable bit and PaX have been useful in limiting the attacks; however, they enforce program layout restrictions and can oftentimes still be circumvented by a determined attacker. We propose a change to the memory architecture of modern processors that addresses the code injection problem at its very root by virtually splitting memory into code memory and data memory such that a processor will never be able to fetch injected code for execution. This virtual split memory system can be implemented as a software-only patch to an operating system and can be used to supplement existing schemes for improved protection. Furthermore, our system is able to accommodate a number of response modes when a code injection attack occurs. Our experiments with both benchmarks and real-world attacks show the system is effective in preventing a wide range of code injection attacks while incurring reasonable overhead.
  • Keywords
    codes; memory architecture; security of data; code injection attacks; code memory; data memory; memory architecture; modern processors; virtual split memory system; Arm; Computer architecture; Gain control; Memory architecture; Operating systems; Protection; Code injection; secure memory architecture.;
  • fLanguage
    English
  • Journal_Title
    Dependable and Secure Computing, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1545-5971
  • Type

    jour

  • DOI
    10.1109/TDSC.2010.1
  • Filename
    5383367