Skip to main content

Hardware-Enforced Protection Against Buffer Overflow Using Masked Program Counter

  • Chapter
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 9100))

Abstract

The threat based on Buffer Overflow is one of the main software vulnerability which is exploited by many viruses and cyber attacks. A buffer overflow overwrites the return address to the parent program of a subroutine. To counter it, we propose in this paper to mask on-the-fly this return address by slightly modifying the processor architecture. We show that the hardware overhead, as well as software modification, is very small. The efficiency has been demonstrated on a bare metal program running on a Leon 3 processor. This paper also shows the limitation when using a real OS.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Linux kernel remote buffer overflow vulnerabilities (2006). http://secwatch.org/advisories/1013445/

  2. Openbsd ipv6 mbuf remote kernel buffer overflow (2007). http://www.securityfocus.com/archive/1/462728/30/0/threaded

  3. Microsoft security bulletin ms08-067 – critical (2008). http://www.microsoft.com/technet/security/Bulletin/MS08-067.mspx

  4. Microsoft windows tcp/ip igmp mld remote buffer overflow vulnerability (2008). http://www.securityfocus.com/bid/27100

  5. Microsoft security advisory (975191): Vulnerabilities in the ftp service ininternet information services (2009). http://www.microsoft.com/technet/security/advisory/975191.mspx

  6. Microsoft security advisory (975497): Vulnerabilities in smb could allow remotecode execution (2009). http://www.microsoft.com/technet/security/advisory/975497.mspx

  7. Bletsch, T., Jiang, X., Freeh, V.W., Liang, Z.: Jump-oriented programming: a new class of code-reuse attack. In: Proceedings of the 6th ACM Symposium on Information, Computerand Communications Security, pp. 30–40. ACM (2011)

    Google Scholar 

  8. Buchanan, E., Roemer, R., Shacham, H., Savage, S.: When good instructions go bad: Generalizing return-orientedprogramming to risc. In: Proceedings of the 15th ACM Conference on Computer and Communications Security, pp. 27–38. ACM (2008)

    Google Scholar 

  9. Cowan, C., Calton, P., Maier, D., Walpole, J., Bakke, P., Beattie, S., Grier, A., Wagle, P., Zhang, Q., Hinton, H.: Stackguard: Automatic adaptive detection and prevention of buffer-overflow attacks. Usenix Secur. 98, 63–78 (1998)

    Google Scholar 

  10. Cowan, C., Beattie, S., Johansen, J., Wagle, P.: Pointguard TM: protecting pointers from buffer overflow vulnerabilities. In: Proceedings of the 12th Conference on USENIX SecuritySymposium, vol. 12, pp. 91–104 (2003)

    Google Scholar 

  11. Dalton, M., Kannan, H., Kozyrakis, C.: Real-world buffer overflow protection for userspace and kernelspace. In: USENIX Security Symposium, pp. 395–410 (2008)

    Google Scholar 

  12. Frantzen, M., Shuey, M.: Stackghost: Hardware facilitated stack protection. In: USENIX Security Symposium, vol. 112 (2001)

    Google Scholar 

  13. Papadogiannakis, A., Loutsis, L., Papaefstathiou, V., Ioannidis, S.: Asist: Architectural support for instruction set randomization. In: Proceedings of the 2013 ACM SIGSAC conference on Computer & Communications Security, pp. 981–992. ACM (2013)

    Google Scholar 

  14. Pincus, J., Baker, B.: Beyond stack smashing: Recent advances in exploiting buffer overruns. Secur. Priv. IEEE 2(4), 20–27 (2004)

    Article  Google Scholar 

  15. Shacham, H., Page, M., Pfaff, B., Goh, E.J., Modadugu, N., Boneh, D.: On the effectiveness of address-space randomization. In: Proceedings of the 11th ACM Conference on Computer and Communications Security, pp. 298–307. ACM (2004)

    Google Scholar 

Download references

Acknowlegments

These developments have been supported by the Directorate General of Armaments and the General Directorate for Enterprises through the RAPID “CyberCPU” project. We thank the positive feedback from the French DGA/MI (Information Superiority) who helped improve this paper and our work in general.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Florian Praden .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Danger, JL., Guilley, S., Porteboeuf, T., Praden, F., Timbert, M. (2016). Hardware-Enforced Protection Against Buffer Overflow Using Masked Program Counter. In: Ryan, P., Naccache, D., Quisquater, JJ. (eds) The New Codebreakers. Lecture Notes in Computer Science(), vol 9100. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-49301-4_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-49301-4_27

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-49300-7

  • Online ISBN: 978-3-662-49301-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics