SIMBER: Eliminating Redundant Memory Bound Checks via Statistical Inference - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2017

SIMBER: Eliminating Redundant Memory Bound Checks via Statistical Inference

Résumé

Unsafe memory accesses in programs written using popular programming languages like C and C++ have been among the leading causes of software vulnerability. Memory safety checkers, such as Softbound, enforce memory spatial safety by checking if accesses to array elements are within the corresponding array bounds. However, such checks often result in high execution time overhead due to the cost of executing the instructions associated with the bound checks. To mitigate this problem, techniques to eliminate redundant bound checks are needed. In this paper, we propose a novel framework, SIMBER, to eliminate redundant memory bound checks via statistical inference. In contrast to the existing techniques that primarily rely on static code analysis, our solution leverages a simple, model-based inference to identify redundant bound checks based on runtime statistics from past program executions. We construct a knowledge base containing sufficient conditions using variables inside functions, which are then applied adaptively to avoid future redundant checks at a function-level granularity. Our experimental results on real-world applications show that SIMBER achieves zero false positives. Also, our approach reduces the performance overhead by up to 86.94% over Softbound, and incurs a modest 1.7% code size increase on average to circumvent the redundant bound checks inserted by Softbound.
Fichier principal
Vignette du fichier
449885_1_En_28_Chapter.pdf (566.02 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01648985 , version 1 (27-11-2017)

Licence

Paternité

Identifiants

Citer

Hongfa Xue, Yurong Chen, Fan Yao, Yongbo Li, Tian Lan, et al.. SIMBER: Eliminating Redundant Memory Bound Checks via Statistical Inference. 32th IFIP International Conference on ICT Systems Security and Privacy Protection (SEC), May 2017, Rome, Italy. pp.413-426, ⟨10.1007/978-3-319-58469-0_28⟩. ⟨hal-01648985⟩
278 Consultations
150 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More