Taint-Style Vulnerability Detection and Confirmation for Node.js Packages Using LLM Agent Reasoning
Ronghao Ni, Mihai Christodorescu, Limin Jia

TL;DR
This paper presents LLMVD.js, an LLM-based agent pipeline that effectively detects and confirms taint-style vulnerabilities in Node.js packages, outperforming traditional static/dynamic analysis tools.
Contribution
It introduces a novel multi-stage LLM agent system for vulnerability detection and confirmation in Node.js packages, eliminating the need for static/dynamic analysis engines or prior vulnerability data.
Findings
LLMVD.js confirms 84% of vulnerabilities in benchmark packages.
It outperforms prior program analysis tools in vulnerability confirmation.
Generates exploits for 36 packages out of 260 recent releases.
Abstract
The rapidly evolving Nodejs ecosystem currently includes millions of packages and is a critical part of modern software supply chains, making vulnerability detection of Nodejs packages increasingly important. However, traditional program analysis struggles in this setting because of dynamic JavaScript features and the large number of package dependencies. Recent advances in large language models (LLMs) and the emerging paradigm of LLM-based agents offer an alternative to handcrafted program models. This raises the question of whether an LLM-centric, tool-augmented approach can effectively detect and confirm taint-style vulnerabilities (e.g., arbitrary command injection) in Nodejs packages. We implement LLMVDjs, a multi-stage agent pipeline to scan code, propose vulnerabilities, generate proof-of-concept exploits, and validate them through lightweight execution oracles; and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
