Connect with us

Hi, what are you looking for?

SecurityWeekSecurityWeek

Application Security

Academics Devise Open Source Tool For Hunting Node.js Security Flaws

A group of academic researchers have designed an open source Node.js bug hunting tool that has already identified 180 security vulnerabilities.

A group of academic researchers have designed an open source Node.js bug hunting tool that has already identified 180 security vulnerabilities.

Node.js is an open-source, cross-platform, environment for running JavaScript code outside the browser. It was designed for the development of network applications. While useful, many of the available Node.js packages contain unknown flaws leading to application compromise.

Now, academics from the Johns Hopkins University and Renmin University of China propose a new approach to finding security vulnerabilities in Node.js packages.

Inspired by the graph query-based approaches such as Code Property Graph (CPG), the researchers devised a novel graph structure called Object Dependence Graph (ODG), and also built an open-source prototype system called ‘ODGEN’, to use ODG for bug hunting.

ODG models JavaScript objects as nodes and represents their relations with Abstract Syntax Tree (AST) as edges.

“Specifically, ODG includes fine-grained data dependencies between objects, thus helping taint-style vulnerability detection such as command injection,” according to a research paper (.pdf) documenting the work.

The new approach generates ODG using “flow- and context-sensitive static analysis with hybrid branch-sensitivity and points-to information”, the group said, noting that ODG can be used for the offline detection of various types of Node.js vulnerabilities.

ODGEN, which abstractly interprets all branches in parallel, was designed to define and lookup objects for AST nodes and record object definitions and lookups as part of ODG.

Advertisement. Scroll to continue reading.

The researchers were able to configure ODGEN to identify six types of vulnerabilities, which has led to the discovery of “43 application-level zero-day vulnerabilities with 14 false positives and we also confirmed 137 package-level zero-day vulnerabilities with 84 false positives”.

A total of 70 Common Vulnerabilities and Exposures (CVE) identifiers have been issued for the identified security bugs.

Related: Security Firms Find Malicious PyPI Packages Designed for Data Theft

Related: GitHub Patches Security Flaws in Core Node.js Dependencies

Related: Snyk Warns of ‘Deliberate Sabotage’ of NPM Ecosystem

Written By

Ionut Arghire is an international correspondent for SecurityWeek.

Click to comment

Trending

Daily Briefing Newsletter

Subscribe to the SecurityWeek Email Briefing to stay informed on the latest threats, trends, and technology, along with insightful columns from industry experts.

Learn how the LOtL threat landscape has evolved, why traditional endpoint hardening methods fall short, and how adaptive, user-aware approaches can reduce risk.

Watch Now

Join the summit to explore critical threats to public cloud infrastructure, APIs, and identity systems through discussions, case studies, and insights into emerging technologies like AI and LLMs.

Register

People on the Move

Cloud security startup Upwind has appointed Rinki Sethi as Chief Security Officer.

SAP security firm SecurityBridge announced the appointment of Roman Schubiger as the company’s new CRO.

Cybersecurity training and simulations provider SimSpace has appointed Peter Lee as Chief Executive Officer.

More People On The Move

Expert Insights

Daily Briefing Newsletter

Subscribe to the SecurityWeek Email Briefing to stay informed on the latest cybersecurity news, threats, and expert insights. Unsubscribe at any time.