Enhancing Protection Against Code Reuse Attacks on IoT Devices by Randomizing Function Addresses

Most Internet of Things (IoT) devices currently in use are vulnerable to code reuse attacks, as manufacturers typically deploy the same firmware across all devices. This uniformity enables attackers to craft a single exploit code that can compromise multiple devices. To mitigate this risk, we propose a firmware diversification approach that creates multiple executable files with varying software compositions. Our approach introduces two complementary techniques: Function Address Reordering (FAR), which randomizes the order of functions within object files during compilation, and Object Address Reordering (OAR), which permutes the linking order of object files in the final executable. These techniques collectively diversify firmware instances without altering runtime behavior, thereby making code reuse attacks significantly more difficult. By deploying firmware with diverse executable files, we enhance security without altering device behavior. We then evaluate the effectiveness and limitations of the proposed method when integrated into actual IoT firmware, assessing its resilience to code reuse attacks, impact on runtime behavior, and compilation overhead. Experimental results demonstrate that FAR and OAR substantially reduce the success rate of return-oriented programming attacks while incurring minimal performance overhead. This study offers a scalable, hardware-independent defense against code reuse attacks that increases resilience without significant performance overhead, rendering it practical for widespread adoption in various IoT applications.

Authors

Institutions

Publication Details

Journal
IEEE Access
Published
2025-01-01
DOI
https://doi.org/10.1109/access.2025.3626065
Primary Topic
Security and Verification in Computing
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Enhancing Protection Against Code Reuse Attacks on IoT Devices by Randomizing Function Addresses

Toshihiro Yamauchi, Satoru Kobayashi, Hideo Taniguchi, Karthika Saji -
IEEE Access
Security and Verification in Computing
article

Enhancing Protection Against Code Reuse Attacks on IoT Devices by Randomizing Function Addresses

Toshihiro Yamauchi, Satoru Kobayashi, Hideo Taniguchi, Karthika Saji -
article en

Abstract

Most Internet of Things (IoT) devices currently in use are vulnerable to code reuse attacks, as manufacturers typically deploy the same firmware across all devices. This uniformity enables attackers to craft a single exploit code that can compromise multiple devices. To mitigate this risk, we propose a firmware diversification approach that creates multiple executable files with varying software compositions. Our approach introduces two complementary techniques: Function Address Reordering (FAR), which randomizes the order of functions within object files during compilation, and Object Address Reordering (OAR), which permutes the linking order of object files in the final executable. These techniques collectively diversify firmware instances without altering runtime behavior, thereby making code reuse attacks significantly more difficult. By deploying firmware with diverse executable files, we enhance security without altering device behavior. We then evaluate the effectiveness and limitations of the proposed method when integrated into actual IoT firmware, assessing its resilience to code reuse attacks, impact on runtime behavior, and compilation overhead. Experimental results demonstrate that FAR and OAR substantially reduce the success rate of return-oriented programming attacks while incurring minimal performance overhead. This study offers a scalable, hardware-independent defense against code reuse attacks that increases resilience without significant performance overhead, rendering it practical for widespread adoption in various IoT applications.

IEEE AccessVol. 13
Okayama University (JP)
Openalex Percentile: Top 84%
Security and Verification in Computing
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Enhancing Protection Against Code Reuse Attacks on IoT Devices by Randomizing Function Addresses — Toshihiro Yamauchi, Satoru Kobayashi, et al. · IEEE Access (2025) | TGRS Research Map | TGRS