More than 75% of all vulnerabilities reside in indirect dependencies:
The vast majority of security vulnerabilities in open-source projects reside in indirect dependencies rather than directly and first-hand loaded components.
"Aggregating the numbers from all ecosystems, we found more than three times as many vulnerabilities in indirect dependencies than we did direct dependencies," Alyssa Miller, Application Security Advocate at Snyk, told ZDNet in an interview discussing Snyk's State of Open Source Security for 2020 study.
The report looked at how vulnerabilities impacted the JavaScript (npm), Ruby (RubyGems), Java (MavenCentral), PHP (Packagist), and Python (PyPI) ecosystems.
Snyk said that 86% of the JavaScript security bugs, 81% of the Ruby bugs, and 74% of the Java ones impacted libraries that were dependencies of the primary components loaded inside a project.
[...] Snyk argues that companies scanning their primary dependencies for security issues without exploring their full dependency tree multiple levels down would release or end up running products that were vulnerable to unforeseen bugs.
So dear Soylentils, how do you track vulnerabilities in libraries that you use in your projects and do you scan beyond direct dependencies?
Previously:
(2020-05-16) Nine in Ten Biz Applications Harbor Out-of-Date, Unsupported, Insecure Open-Source Code, Study Shows
(Score: 0) by Anonymous Coward on Friday July 03 2020, @07:22PM
Agree. They're usable for rapid development but the dependency chain becomes too large, too quickly. This is also a problem for linux distros, I have gtk libs on a headless server as dependencies of graphviz that was required for the documentation of something I was asked to build from source. The clusterfuck is real!
They're tools. I've been having fun with a small nim project by compiling to js and running in quickjs. [bellard.org] Am I going to use it... well I could compile quickjs to wasm using emscripten and potentially run my project in a browser. Am I going to do that - no! Am I amused it's possible - yes!