Dependency Vulnerability Scanning Triggered by Build Changes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software vulnerability scanning methods are computationally expensive and lack scalability, requiring frequent scans of large applications, which wastes computational resources and power.
Innovation Solution
Integrate specialized software agents into the continuous integration pipeline to monitor commits to a source control database, identifying new dependencies and vulnerabilities, and automatically update the build management tool to address these issues.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If frequent vulnerability scanning is performed on large applications, then security coverage is improved, but computational resources and power consumption increase significantly
Solution Approach 1:
The system performs preliminary actions by scanning only when changes are detected in the dependency graph, rather than performing frequent full scans. The build management tool monitors for changes and triggers scanning only when necessary, reducing unnecessary computational resource consumption while maintaining security coverage.
Solution Approach 2:
The vulnerability scanning approach transitions from static frequent full-scans to dynamic change-driven scanning. The system dynamically adjusts its behavior based on detected changes in the dependency graph, scanning only when modifications occur, thereby reducing overall computational resource usage while maintaining effective security monitoring.
2Reliability
If frequent vulnerability scanning is performed on large applications, then security coverage is improved, but time consumption increases
Solution Approach 1:
The system performs preliminary actions by scanning only when changes are detected in the dependency graph, rather than performing frequent full scans. The build management tool monitors for changes and triggers scanning only when necessary, reducing unnecessary time consumption while maintaining security coverage.
Solution Approach 2:
The vulnerability scanning approach transitions from static frequent full-scans to dynamic change-driven scanning. The system dynamically adjusts its behavior based on detected changes in the dependency graph, scanning only when modifications occur, thereby reducing overall time consumption while maintaining effective security monitoring.
3Reliability
If traditional vulnerability scanning methods are used, then comprehensive security checks are performed, but scalability is limited
Solution Approach 1:
The system segments the vulnerability scanning process into two parts: (1) continuous monitoring of dependency graph changes, and (2) targeted scanning only when changes are detected. This segmentation allows comprehensive security checks to be performed only when necessary, significantly improving scalability compared to traditional methods that perform full scans regardless of changes.
Solution Approach 2:
The build management tool performs preliminary monitoring of dependency graph changes before initiating full vulnerability scanning. This preliminary action filters out unnecessary scans and triggers only when actual changes occur, enabling comprehensive security checks to scale effectively with larger applications.
Data Source
AI summary
Certain aspects of the present disclosure provide techniques for identifying and resolving security vulnerabilities in a software application build. This includes identifying a change for a dependency in a software application build based on analyzing a commit to a first repository for the build, storing an entry in a second repository reflecting the change for the dependency, and parsing the second repository to identify the change for the dependency. It further includes determining that the change reflects a security vulnerability for the dependency, and in response updating the second repository to identify the security vulnerability, and performing an action to cure the security vulnerability for the software application build.


