For scanning purposes, we use Synopsys Black Duck.
Primarily, we use it to ensure all our projects go through Black Duck scans. We do this sometimes via source code analysis and sometimes via binary analysis/Docker analysis. It figures out third-party components, any security vulnerabilities, and more.
Our primary focus is security – it also flags operational vulnerabilities, like outdated software versions or lack of active maintainers, but we generally don't give those as much weight.
We use Black Duck for open-source compliance in our software projects.
We didn't have a central inventory to quickly identify issues or determine how many products were affected. Now under Black Duck, it's all consolidated. You search for a component and immediately see which products use it.
For example, one product might use the latest version and be unaffected, while another uses a deprecated version with vulnerabilities. We can then address these vulnerabilities within our SDLC. A rescan confirms the fixes, ensuring we're protected.
Black Duck also tracks historical data, showing which product versions have specific dependencies. If a newer version is released without those dependencies, the history reflects that. This provides a view of vulnerabilities across versions.
Moreover, the integration with our development is pretty straightforward. Since we use more of a SaaS tool, all we need to do is get the right token, and use the detect tools for our initial implementation.
Black Duck handles all dependency downloads automatically, and you just have to run your script. They provide changes in plugins and everything, so it's really easy to integrate it into our pipeline.