Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Friday July 03 2020, @10:41AM   Printer-friendly
from the friend-of-a-friend dept.

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


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0) by Anonymous Coward on Saturday July 04 2020, @07:08AM (1 child)

    by Anonymous Coward on Saturday July 04 2020, @07:08AM (#1016036)

    Patching and testing can be hard. You have to simultaneously fix the bug behavior while simultaneously preserving the expected behavior as much as possible. In addition, the bug can be caused by the way functions interact or round trips or library interaction or how the entire environment interacts, making it hard to track down where it actually is in the code. And, on more than a few occasions, it turns out that someone was relying on the bug behavior the whole time, non-maliciously, and didn't even realize it. This makes your test and integration suites break, which you then have to fix on top of the environment. And then, they don't want to patch it in one area and leave a bunch of other users of the software unable to update, so you have to wait for groups to be ready, despite their various release processes, to update all at the same time. Then there is also the normal human behavior of people not seeing the problem, having other priorities, dragging of feet in general, and the internal politics.

  • (Score: 2) by RS3 on Saturday July 04 2020, @02:41PM

    by RS3 (6367) on Saturday July 04 2020, @02:41PM (#1016119)

    In other words, so much is in place now, and it's so integrated into society, that it's too big to allow it to fail.

    You'd make a great defense lawyer for the MBAs.

    There will always be a human error factor, but this problem is all driven by greed and cost-cutting. I have no problem dealing with a little pain for a much better long-term gain. I've seen far far more bugs and patches and updates and breaches in commercial software as I have in open-source, including of course Linux, GNU apps and other projects like LibreOffice, KiCAD, etc. They're written by people who are driven by the goal of something that works well and they can take some personal pride and sense of accomplishment, besides filling a personal need.

    That's also true in commercial software development, but it's all driven by an overall profit motive. Ship it now, we'll fix it later... And that's not philosophical- it's been the driving force in most of my career, including pure hardware stuff. Only very recently I'm doing some part-time work in a field where quality is more important than costs or deadlines, and I hate to admit but sometimes I struggle to adjust. I find I still try to find the cheapest way to do something, or the cheapest parts available, and then the customer's extreme QC rejects it.

    I feel like I've just written what's been obvious for at least 30 years. I say it's been allowed to go too far. Some of the recent stories like the critical bugs in IoT TCP/IP stack libraries that are almost ubiquitous (in IoT) should wake someone up. I'm not sure how to fix the underlying problem. It'd be great to be part of a mod-system-less discussion group / thinktank.