NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs

Packages in the Node.js ecosystem often suffer from serious vulnerabilities such as arbitrary command injection and code execution. Existing taint analysis tools fall short in providing an end-to-end infrastructure for automatically detecting and triaging these vulnerabilities.We develop NodeMedic,...

Full description

Saved in:
Bibliographic Details
Main Authors: CASSEL, Darion, WONG, Wai Tuck, JIA, Limin
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2023
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/8094
https://ink.library.smu.edu.sg/context/sis_research/article/9097/viewcontent/nodemedic_eurosp23_av.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-9097
record_format dspace
spelling sg-smu-ink.sis_research-90972023-09-07T07:24:23Z NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs CASSEL, Darion WONG, Wai Tuck JIA, Limin Packages in the Node.js ecosystem often suffer from serious vulnerabilities such as arbitrary command injection and code execution. Existing taint analysis tools fall short in providing an end-to-end infrastructure for automatically detecting and triaging these vulnerabilities.We develop NodeMedic, an end-to-end analysis infrastructure that automates test driver creation, performs precise yet scalable dynamic taint propagation via algorithmically tuned propagation policies, and exposes taint provenance information as a provenance graph. Using provenance graphs we develop two post-detection analyses: automated constraint-based exploit synthesis to confirm vulnerabilities; Attack-defense-tree-based rating of flow exploitability.We demonstrate the effectiveness of NodeMedic through a large-scale evaluation of 10,000 Node.js packages. Our evaluation uncovers 155 vulnerabilities, of which 152 are previously undisclosed, and 108 were confirmed with automatically synthesized exploits. We have open-sourced NodeMedic and a suite of 589 taint precision unit tests. 2023-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8094 info:doi/10.1109/EuroSP57164.2023.00068 https://ink.library.smu.edu.sg/context/sis_research/article/9097/viewcontent/nodemedic_eurosp23_av.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Analysis tools Code execution Command injections Constraint-based Tree-based Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Analysis tools
Code execution
Command injections
Constraint-based
Tree-based
Software Engineering
spellingShingle Analysis tools
Code execution
Command injections
Constraint-based
Tree-based
Software Engineering
CASSEL, Darion
WONG, Wai Tuck
JIA, Limin
NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
description Packages in the Node.js ecosystem often suffer from serious vulnerabilities such as arbitrary command injection and code execution. Existing taint analysis tools fall short in providing an end-to-end infrastructure for automatically detecting and triaging these vulnerabilities.We develop NodeMedic, an end-to-end analysis infrastructure that automates test driver creation, performs precise yet scalable dynamic taint propagation via algorithmically tuned propagation policies, and exposes taint provenance information as a provenance graph. Using provenance graphs we develop two post-detection analyses: automated constraint-based exploit synthesis to confirm vulnerabilities; Attack-defense-tree-based rating of flow exploitability.We demonstrate the effectiveness of NodeMedic through a large-scale evaluation of 10,000 Node.js packages. Our evaluation uncovers 155 vulnerabilities, of which 152 are previously undisclosed, and 108 were confirmed with automatically synthesized exploits. We have open-sourced NodeMedic and a suite of 589 taint precision unit tests.
format text
author CASSEL, Darion
WONG, Wai Tuck
JIA, Limin
author_facet CASSEL, Darion
WONG, Wai Tuck
JIA, Limin
author_sort CASSEL, Darion
title NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
title_short NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
title_full NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
title_fullStr NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
title_full_unstemmed NodeMedic: End-to-end analysis of Node.js vulnerabilities with provenance graphs
title_sort nodemedic: end-to-end analysis of node.js vulnerabilities with provenance graphs
publisher Institutional Knowledge at Singapore Management University
publishDate 2023
url https://ink.library.smu.edu.sg/sis_research/8094
https://ink.library.smu.edu.sg/context/sis_research/article/9097/viewcontent/nodemedic_eurosp23_av.pdf
_version_ 1779157152823246848