Global Program Lineage Graph for Suspicious Software Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprises face challenges in identifying malicious software, particularly when it is incorporated into legitimate commercial software, making it difficult to detect and consume significant IT resources.

Innovation Solution

A computer-implemented method constructs a global program lineage graph with nodes representing each version of a program and directional edges indicating progression over time, along with prevalence numbers, to identify anomalous behavior indicative of suspicious software, triggering alarms on a graphical user interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional software identification methods are used, then existing software can be recognized, but malicious software incorporated into legitimate software cannot be detected

Engineering Contradiction:
Improvesoftware identification accuracyVSAvoiddetection capability for hijacked software
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system performs preliminary actions by establishing a global program lineage graph that documents the expected version progression paths of legitimate software before malware infection occurs. This baseline allows subsequent detection of deviations caused by hijacked or malicious software, enabling identification of suspicious behavior through comparison against established norms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The program lineage graph serves as an intermediary structure that mediates between raw software version data and security detection decisions. By representing the expected evolutionary path of software versions, it provides a reference framework that enables indirect detection of malicious modifications without requiring direct analysis of malware signatures.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If comprehensive software monitoring is implemented, then all software versions can be tracked, but IT resources are consumed significantly

Engineering Contradiction:
Improvesoftware version tracking completenessVSAvoidIT resource consumption
Core Design Contradiction:
Loss of informationVSLoss of energy

Solution Approach 1:

The system segments software monitoring by organizing tracked information into discrete program lineage graphs, where each graph represents a specific software application's version history. This segmentation allows the system to track comprehensive version information only for relevant software components rather than monitoring everything uniformly, reducing overall resource consumption while maintaining complete tracking where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies local quality by differentiating the monitoring depth based on software risk and importance. Critical software components receive comprehensive lineage tracking with detailed version history, while less critical software receives simplified tracking. This selective approach maintains information completeness for high-value targets while reducing IT resource consumption for lower-priority software.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If detailed program lineage tracking is performed, then software progression can be monitored, but system complexity increases

Engineering Contradiction:
Improveversion progression detection accuracyVSAvoidlineage graph construction complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system merges multiple individual software version tracking mechanisms into a unified global program lineage graph structure. By consolidating version history, progression paths, and relationship data into a single integrated graph model, the system achieves precise version progression detection while reducing the operational complexity of managing multiple separate tracking systems.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10853487B2Path-based program lineage inference analysis
Publication Date: 2020.12.01 PIECE FUTURE PTE LTD
  • US10853487B2 patent drawing
  • US10853487B2 patent drawing
  • US10853487B2 patent drawing

AI summary

Systems and methods are disclosed for securing an enterprise environment by detecting suspicious software. A global program lineage graph is constructed. Construction of the global program lineage graph includes creating a node for each version of a program having been installed on a set of user machines. Additionally, at least two nodes are linked with a directional edge. For each version of the program, a prevalence number of the set of user machines on which each version of the program had been installed is determined; and the prevalence number is recorded to the metadata associated with the respective node. Anomalous behavior is identified based on structures formed by the at least two nodes and associated directional edge in the global program lineage graph. An alarm is displayed on a graphical user interface for each suspicious software based on the identified anomalous behavior.