{"title":"StackGuard\n +\n \n $\\text{StackGuard}^+$\n : Interoperable alternative to canary-based protection of stack smashing","authors":"Kangmin Kim, Jeong-Nyeo Kim, Seungkwang Lee","doi":"10.1049/ell2.13310","DOIUrl":null,"url":null,"abstract":"<p>This paper introduces a novel software-based approach to enhancing stack smashing protection in C/C++ applications, specifically targeting return-oriented programming attacks, which remain a significant threat to firmware and software security. Traditional canary-based protections are vulnerable to brute-force and format string attacks. Additionally, many stack protection mechanisms require access to the source code or recompilation, complicating the security of existing binaries. This paper proposes a new method, aptly named <span></span><math>\n <semantics>\n <msup>\n <mtext>StackGuard</mtext>\n <mo>+</mo>\n </msup>\n <annotation>$\\text{StackGuard}^+$</annotation>\n </semantics></math>, that modifies the canary-based protection mechanism by altering the code responsible for canary insertion and verification. This change ensures the integrity of the return address while maintaining the original code size, allowing for seamless interoperability without the need for recompilation or additional hardware. The approach can be automated using a Python script, which modifies existing canary-based binaries with only 26 bytes of machine code on the <span></span><math>\n <semantics>\n <mo>×</mo>\n <annotation>$\\times$</annotation>\n </semantics></math>86-64 platform. Moreover, this approach can be easily adapted to other platforms, including <span></span><math>\n <semantics>\n <mo>×</mo>\n <annotation>$\\times$</annotation>\n </semantics></math>86 and ARM64.</p>","PeriodicalId":11556,"journal":{"name":"Electronics Letters","volume":"60 19","pages":""},"PeriodicalIF":0.7000,"publicationDate":"2024-10-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1049/ell2.13310","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Electronics Letters","FirstCategoryId":"5","ListUrlMain":"https://onlinelibrary.wiley.com/doi/10.1049/ell2.13310","RegionNum":4,"RegionCategory":"工程技术","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"ENGINEERING, ELECTRICAL & ELECTRONIC","Score":null,"Total":0}
引用次数: 0
Abstract
This paper introduces a novel software-based approach to enhancing stack smashing protection in C/C++ applications, specifically targeting return-oriented programming attacks, which remain a significant threat to firmware and software security. Traditional canary-based protections are vulnerable to brute-force and format string attacks. Additionally, many stack protection mechanisms require access to the source code or recompilation, complicating the security of existing binaries. This paper proposes a new method, aptly named , that modifies the canary-based protection mechanism by altering the code responsible for canary insertion and verification. This change ensures the integrity of the return address while maintaining the original code size, allowing for seamless interoperability without the need for recompilation or additional hardware. The approach can be automated using a Python script, which modifies existing canary-based binaries with only 26 bytes of machine code on the 86-64 platform. Moreover, this approach can be easily adapted to other platforms, including 86 and ARM64.
期刊介绍:
Electronics Letters is an internationally renowned peer-reviewed rapid-communication journal that publishes short original research papers every two weeks. Its broad and interdisciplinary scope covers the latest developments in all electronic engineering related fields including communication, biomedical, optical and device technologies. Electronics Letters also provides further insight into some of the latest developments through special features and interviews.
Scope
As a journal at the forefront of its field, Electronics Letters publishes papers covering all themes of electronic and electrical engineering. The major themes of the journal are listed below.
Antennas and Propagation
Biomedical and Bioinspired Technologies, Signal Processing and Applications
Control Engineering
Electromagnetism: Theory, Materials and Devices
Electronic Circuits and Systems
Image, Video and Vision Processing and Applications
Information, Computing and Communications
Instrumentation and Measurement
Microwave Technology
Optical Communications
Photonics and Opto-Electronics
Power Electronics, Energy and Sustainability
Radar, Sonar and Navigation
Semiconductor Technology
Signal Processing
MIMO