arrow
Return

NPDHunter: Efficient Null Pointer Dereference Vulnerability Detection in Binary

delete2021-01-01
delete1
delete
OA
AI
W
Wenhui Jin
S
Sami Ullah
D
Dongmin Yoo
H
Heekuck Oh *
DOI:10.1109/ACCESS.2021.3091209delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Null pointer dereference (NPD) is a widespread vulnerability that occurs whenever an executing program attempts to dereference a null pointer. NPD vulnerability can be exploited by hackers to maliciously crash a process to cause a denial of service or execute an arbitrary code under specific conditions. This typical taint-style vulnerability requires an accurate data dependency analysis to trace whether a source is propagated to a sensitive sink without proper sanitization. The primary challenge in data dependency analysis is pointer aliasing, which may significantly affect the vulnerability detection accuracy. Although there have been many studies and open-source tools, they still have limitations when detecting a real-world binary. In this paper, we propose a static binary analysis approach to detect an NPD vulnerability. To improve detection accuracy and practicality, we first identify two challenges that affect the accuracy of binary NPD detection: (i) pointer aliasing, and (ii) untrusted source identification. Then we implement a prototype of the proposed approach, NPDHunter, and evaluate it against 318 test cases provided by Juliet Test Suite v1.3. For the Juliet dataset, NPDHunter is accurate in detecting NPDs and generates 0% false negatives; as compared to bap-toolkit and cwe_checker, which have false-negative rates of 70.89% and 89.81%, respectively. We also evaluate NPDHunter for real-world binaries which recently reported NPD vulnerability. We have analyzed XNU kernel (large-scale), Redis, Bitlbee, libredwg, and libvncserver binaries and NPDHunter can detect all NPD cases, which justifies its usefulness for real-world binaries; compiled for x86_64 architecture.
Keywords:
Registers
Libraries
Tools
Runtime
Prototypes
Licenses
Kernel
Null pointer dereference
binary analysis
vulnerability detection
static analysis
data dependency
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

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

Organization

H
hanyang university
Scholars:
2.9W
Papers: 2.7W
Citations: 36
Cited Papers

Cited Papers

Threshold Limits for Biological Indication of Prolonged Radiation Exposure Using mFISH
err2014-06-01
err0
PREAI
errSergey V Osovets; Natalia V Sotnik; Viktor Meineke; Harry Scherthan; Harald Dörr; Tamara V Azizova
errShare
errSave
errShare
errSave
SAGE: Whitebox Fuzzing for Security Testing
err2012-03-01
err379
PREAI
errGodefroid, Patrice; Levin, Michael Y.; Molinar, David
errShare
errSave
Mechanisms of Action Anticipation in Table Tennis Players: A Multivoxel Pattern Analysis Study
err2024-05-01
err0
PREAI
errQingchun Ji; Likai Liu; Yingzhi Lu; Chenglin Zhou; Yingying Wang
errShare
errSave
researcher View more