On the Threat of npm Vulnerable Dependencies in Node.js Applications

09/18/2020
by   Mahmoud Alfadel, et al.
0

Software vulnerabilities have a large negative impact on the software systems that we depend on daily. Reports on software vulnerabilities always paint a grim picture, with some reports showing that 83 vulnerable software. However, our experience leads us to believe that, in the grand scheme of things, these software vulnerabilities may have less impact than what is reported. Therefore, we perform a study to better understand the threat of npm vulnerable packages used in Node.js applications. We define three threat levels for vulnerabilities in packages, based on their lifecycle, where a package vulnerability is assigned a low threat level if it was hidden or still unknown at the time it was used in the dependent application (t), medium threat level if the vulnerability was reported but not yet published at t, and high if it was publicly announced at t. Then, we perform an empirical study involving 6,673 real-world, active, and mature open source Node.js applications. Our findings show that although 67.93 applications depend on at least one vulnerable package, 94.91 vulnerable packages in those affected applications are classified as having low threat. Moreover, we find that in the case of vulnerable packages classified as having high threat, it is the application's lack of updating that makes them vulnerable, i.e., it is not the existence of the vulnerability that is the real problem. Furthermore, we verify our findings at different stages of the application's lifetime and find that our findings still hold. Our study argues that when it comes to software vulnerabilities, things may not be as bad as they seem and that considering vulnerability threat is key.

READ FULL TEXT

page 5

page 12

research
08/11/2020

Code-based Vulnerability Detection in Node.js Applications: How far are we?

With one of the largest available collection of reusable packages, the J...
research
07/16/2020

Vulnerability-Aware Resilient Networks: Software Diversity-based Network Adaptation

By leveraging the principle of software polyculture to ensure security i...
research
06/04/2020

Vulnerability Analysis of 2500 Docker Hub Images

The use of container technology has skyrocketed during the last few year...
research
01/19/2023

On the Effect of Transitivity and Granularity on Vulnerability Propagation in the Maven Ecosystem

Reusing software libraries is a pillar of modern software engineering. I...
research
07/22/2022

Learning from what we know: How to perform vulnerability prediction using noisy historical data

Vulnerability prediction refers to the problem of identifying system com...
research
12/16/2022

Machine Learning Containers are Bloated and Vulnerable

Today's software is bloated leading to significant resource wastage. Thi...
research
09/27/2022

Family-Based Fingerprint Analysis: A Position Paper

Thousands of vulnerabilities are reported on a monthly basis to security...

Please sign up or login with your details

Forgot password? Click here to reset