Memory Safety for Embedded Devices with nesCheck

被引:16
|
作者
Midi, Daniele [1 ]
Payer, Mathias [1 ]
Bertino, Elisa [1 ]
机构
[1] Purdue Univ, Dept Comp Sci, W Lafayette, IN 47907 USA
基金
美国国家科学基金会;
关键词
D O I
10.1145/3052973.3053014
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Applications for TinyOS, a popular operating system for embedded systems and wireless sensor networks, are written in nesC, a C dialect prone to the same type and memory safety vulnerabilities as C. While availability and integrity are critical requirements, the distributed and concurrent nature of such applications, combined with the intrinsic un-safety of the language, makes those security goals hard to achieve. Traditional memory safety techniques cannot be applied, due to the strict platform constraints and hardware differences of embedded systems. We design nesCheck, an approach that combines static analysis and dynamic checking to automatically enforce memory safety on nesC programs without requiring source modifications. nesCheck analyzes the source code, identifies the minimal conservative set of vulnerable pointers, finds static memory bugs, and instruments the code with the required dynamic runtime checks. Our prototype extends the existing TinyOS compiler toolchain with LLVM-based passes. Our evaluation shows that nesCheck effectively and efficiently enforces memory protection, catching all memory errors with an overhead of 0.84% on energy, 5.3% on code size, up to 8.4% on performance, and 16.7% on RAM.
引用
收藏
页码:127 / 139
页数:13
相关论文
共 50 条
  • [41] Safety and security collaborative analysis framework for high-performance embedded computing devices?
    Yarza, Irune
    Agirre, Irune
    Mugarza, Imanol
    Cerrolaza, Jon Perez
    MICROPROCESSORS AND MICROSYSTEMS, 2022, 93
  • [42] Remote Controlling and Monitoring of Safety Devices Using Web-Interface Embedded Systems
    Carrasco, A.
    Hernandez, M. D.
    Romero, M. C.
    Sivianes, F.
    Escudero, J. I.
    ENTERPRISE INFORMATION SYSTEMS-BK, 2009, 24 : 737 - 744
  • [43] Ferroelectric embedded devices
    Takasu, H
    Nakamura, T
    Kamisawa, A
    INTEGRATED FERROELECTRICS, 1998, 21 (1-4) : 41 - 51
  • [44] Safety and security collaborative analysis framework for high-performance embedded computing devices
    Yarza, Irune
    Agirre, Irune
    Mugarza, Imanol
    Perez Cerrolaza, Jon
    MICROPROCESSORS AND MICROSYSTEMS, 2022, 93
  • [45] Full silicon-based detonation system embedded with micro safety and arming devices
    Gao, JZ
    Zhao, YL
    Jiang, ZD
    Shang, HZ
    ISTM/2005: 6TH INTERNATIONAL SYMPOSIUM ON TEST AND MEASUREMENT, VOLS 1-9, CONFERENCE PROCEEDINGS, 2005, : 8472 - 8475
  • [46] Complete Component-Wise Software Certification for Safety-Critical Embedded Devices
    Streitferdt, Detlef
    Zimmermann, Armin
    Schaffner, Joerg
    Kallenbach, Michael
    2018 IEEE 9TH ANNUAL INFORMATION TECHNOLOGY, ELECTRONICS AND MOBILE COMMUNICATION CONFERENCE (IEMCON), 2018, : 597 - 602
  • [47] Ferroelectric embedded devices
    Rohm Co, Ltd, Kyoto, Japan
    Integr Ferroelectr, 1 -4 pt 1 (41-51):
  • [48] Steganography on embedded devices
    Stanescu, Daniela
    Stangaciu, Valentin
    Ghergulescu, Ioana
    Stratulat, Mircea
    SACI: 2009 5TH INTERNATIONAL SYMPOSIUM ON APPLIED COMPUTATIONAL INTELLIGENCE AND INFORMATICS, 2009, : 303 - 307
  • [49] Memory characteristics and tunneling mechanism of Pt nano-crystals embedded in HfAlOx films for nonvolatile flash memory devices
    Zhou, Guangdong
    wu, Bo
    Li, Zhiling
    Xiao, Zhijun
    Li, Shuhui
    Li, Ping
    CURRENT APPLIED PHYSICS, 2015, 15 (03) : 279 - 284
  • [50] A efficient memory no list set partitioned embedded block (NLSK) wavelet image coding algorithm for low memory devices
    Kidwai, Naimur Rahman
    Alam, M.
    Khan, Ekram
    Beg, Rizwan
    International Journal of Signal Processing, Image Processing and Pattern Recognition, 2012, 5 (04) : 93 - 106