arrow
Return

Memory Leak Detection in IoT Program Based on an Abstract Memory Model SeqMM

delete2019-01-01
delete1
delete
OA
AI
董玉坤 cover
董玉坤 (Yukun Dong)
W
Wenjing Yin
王淑栋 cover
王淑栋 (Shudong Wang) *
L
Li Zhang
L
Lin Sun
DOI:10.1109/ACCESS.2019.2951168delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
With the rapid growth of the Internet-of-Things (IoT), security issues for the IoT are becoming increasingly serious. Memory leaks are a common and harmful software defect for IoT programs running on resource-limited devices. Static analysis is an effective method for memory leak detection, however, because the existing methods cannot fully describe the memory state of IoT programs at run time, false positives and false negatives frequently occur. To improve the precision of memory leak detection, we propose an abstract memory model SeqMM to describe sequential storage structures. SeqMM differs from other abstract memory models in its ability to handle both points-to analysis and numerical analysis of pointers, which contributes to eliminating false positives in defect detection. In addition, based on the analysis of the sequential storage structure, we introduce the analysis of its operations in C programs, including transfer operations and predicate operations. Moreover, we present a memory leak detection algorithm by determining the state of the program points related to allocated memory blocks. The experimental results of five real projects indicate that the false positive rates of DTSCSeqMM, Klocwork12 and DTSCRSTVL are 29.0, 15.0 and 40.6 respectively, and the corresponding false negative rates are 0, 22.7 and 13.6.
Keywords:
Leak detection
Static analysis
Analytical models
Data models
Arrays
Security
Software
Memory leak
sequential storage structure
abstract memory model
data flow analysis

Journal

IEEE Access cover
IEEE Access
IF:
3.6
Papers:
9.8W
Citations:
29.4W

Organization

C
china university of petroleum
Scholars:
4.1W
Papers: 2.7W
Citations: 30