Automated Vulnerability Detection for Open-Source Libraries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for upgrading third-party libraries are manual, time-consuming, and prone to code breakage, with Software Composition Analysis (SCA) tools requiring periodic scans that can lead to delayed vulnerability detection and increased costs.

Innovation Solution

An automated system that continuously monitors open-source packages for vulnerabilities, identifies affected functions, and provides real-time alerts and guidance for resolving issues, reducing downtime and costs by streamlining the upgrade process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If periodic vulnerability scanning is used, then cost is reduced, but vulnerability detection time increases

Engineering Contradiction:
Improvevulnerability detection timeVSAvoidscanning frequency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system dynamically adjusts scanning frequency based on risk levels and change detection. Instead of fixed periodic scanning, the system performs continuous monitoring that adapts its intensity - scanning more frequently when changes are detected and less frequently when the system is stable, thereby reducing overall detection time without proportionally increasing costs

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system automatically detects changes in third-party libraries and triggers vulnerability scans only when necessary. The monitoring agent continuously watches for changes and autonomously initiates scanning workflows when updates are detected, eliminating the need for manual trigger decisions and reducing detection time while optimizing resource usage

Inventive Principle:
Principle #25Self-service

2Reliability

If manual upgrade evaluation is performed, then code breakage is reduced, but migration time increases

Engineering Contradiction:
Improvecode stabilityVSAvoidmigration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary impact analysis before upgrades are applied. The monitoring agent detects changes in advance and triggers automated workflows that evaluate potential code breakage before the upgrade is deployed, allowing teams to prepare mitigation strategies ahead of time and reducing actual migration time

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an automated impact analysis intermediary between the upgrade process and the application. This intermediary evaluates the potential impact of upgrades on code stability, identifying potential breakages before they occur and enabling safe upgrade progression without extensive manual testing

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If comprehensive test cases are run, then code breakage detection improves, but testing time increases

Engineering Contradiction:
Improvebreakage detection accuracyVSAvoidtesting time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system extracts and prioritizes only the most relevant test cases based on the detected changes. Instead of running comprehensive test suites, the impact analysis identifies which specific functions and code paths are affected by the upgrade, extracting only those test cases that are necessary to verify stability, thereby maintaining detection accuracy while reducing testing time

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If third-party libraries are updated frequently, then security improves, but code breakage risk increases

Engineering Contradiction:
Improvesecurity levelVSAvoidcode compatibility
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The system performs preliminary impact analysis before applying security updates. The monitoring agent detects library updates and triggers automated workflows that evaluate potential compatibility issues before the update is deployed, allowing teams to apply security patches confidently with knowledge of their impact

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an automated impact analysis intermediary that mediates between security update requirements and code stability concerns. This intermediary evaluates the compatibility of upcoming updates with existing code, providing guidance on whether to proceed with the update or apply mitigations

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240330484A1Open-source vulnerability detection and impact assessments
Publication Date: 2024.10.03 ACCENTURE GLOBAL SOLUTIONS LTD
  • US20240330484A1 patent drawing
  • US20240330484A1 patent drawing
  • US20240330484A1 patent drawing

AI summary

A vulnerability detection and management system that identifies differences between a current version and updated version of code to determine potential impacts on a software application. The system continuously monitors a third-party library to detect whether new versions of a particular code are released. When such an event occurs, the system can automatically identify the changes and determine whether the differences are substantive. A vulnerability impact assessment can then be generated detailing the likely effects of any identified differences that can serve as guide to end-users when making decisions regarding updates and upgrades or migrations of their software.