Binary Program Analysis Using Recursive Semantics Graphs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional binary analysis techniques for detecting vulnerabilities in embedded systems face limitations in scalability, accuracy, and efficiency, particularly in complex architectures, leading to high false positives and negatives, and are impractical for large-scale operations.

Innovation Solution

A novel method and system for binary analysis that employs a graph-based approach with a two-dimensional coordinate system to plot recursive semantics and symmetry functions, integrating efficient indexing and retrieval mechanisms to enhance vulnerability detection in embedded systems with RISC and CISC architectures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual reverse engineering is used for vulnerability detection, then detection accuracy is improved, but scalability and productivity deteriorate

Engineering Contradiction:
Improvevulnerability detection accuracyVSAvoidscalability
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments vulnerability detection into multiple analysis dimensions (control flow, data flow, inter-procedural relationships) that can be independently analyzed and combined, enabling automated systems to achieve expert-level accuracy without manual intervention for each vulnerability type

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediate representations (IRs) that serve as mediators between raw binary code and vulnerability detection algorithms, enabling automated analysis tools to process and understand complex code structures with accuracy comparable to manual expert analysis

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If automated static and dynamic analysis tools are used, then productivity is improved, but measurement precision deteriorates due to high false positives and negatives

Engineering Contradiction:
Improveautomation efficiencyVSAvoidvulnerability detection accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent merges multiple analysis techniques (static analysis, dynamic analysis, control flow analysis, data flow analysis) into a unified framework that cross-validates findings across different dimensions, significantly reducing false positives and negatives while maintaining high automation efficiency

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements feedback mechanisms where analysis results from one dimension inform and refine analysis in other dimensions, allowing the system to learn from false positives and negatives and continuously improve detection accuracy while maintaining automated operation

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If graph databases are used to represent software structures, then adaptability is improved, but device complexity and use of energy worsen due to resource-intensive performance

Engineering Contradiction:
Improvesoftware structure representation capabilityVSAvoidsystem resource requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent transitions from traditional graph database representations to a multi-dimensional array-based representation where code elements are organized in dimensional spaces corresponding to different analysis perspectives, reducing computational complexity while maintaining the ability to represent complex software structures

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS12530468B2Method and system for analyzing computer software
Publication Date: 2026.01.20 OBJECTSECURITY LLC
  • US12530468B2 patent drawing
  • US12530468B2 patent drawing
  • US12530468B2 patent drawing

AI summary

Method and system for analyzing binary computing system program data for recursive semantics, the recursive semantics being computational constructs and mechanisms that facilitate self-reference or repetition within binary program inputs and that enable repeated execution of a block of code through direct self-reference, the method and system comprising: receiving binary program input; analyzing the binary program input using analysis, extracting aspects of structural and functional characteristics of the binary program input; creating graphical representation corresponding to the recursion and iteration processes within the binary program input's algorithms; initializing, if not previously established, program anthology, indexing algorithms derived from the binary program input within the program anthology, storing the indexed program anthology, retrieving previously categorized algorithms, and determining an output indicating the recursive semantics being present in the binary program input that enable the identification of potential security vulnerabilities.