Active Code Section Detection Through Memory Forensics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in efficiently identifying and maintaining an up-to-date list of active software modules in real-time, which is crucial for ensuring security and resource allocation in computer systems.

Innovation Solution

A system and method for constructing a software runtime bill-of-materials (RBOM) by analyzing memory forensics, utilizing code section execution indicators (CSEIs) specific to different software frameworks like Java, node.js, and Ruby, to identify and track active code sections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory forensics analysis is performed to identify active code sections in real-time, then security monitoring capability is improved, but system performance overhead increases

Engineering Contradiction:
Improvesecurity monitoring capabilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the identification process by creating separate indicator structures for different code sections, allowing parallel analysis without blocking system operations. Each code section has its own execution indicator that can be independently monitored, enabling distributed security checking that minimizes centralized overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary setup by establishing indicator structures and memory markers before actual code execution begins. This preconfiguration allows the security system to passively monitor execution by checking pre-placed indicators rather than actively analyzing code during runtime, significantly reducing performance overhead.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If comprehensive code section tracking is implemented, then security coverage is improved, but system complexity increases

Engineering Contradiction:
Improvesecurity coverageVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts execution status information into separate indicator structures that are stored in dedicated memory locations. By separating the tracking mechanism from the executed code, the system achieves comprehensive monitoring without embedding complex monitoring logic throughout the codebase, thus managing complexity while maintaining coverage.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a universal indicator structure that can track any code section regardless of its type or location. The same indicator mechanism works for different software frameworks and code sections, providing comprehensive security coverage through a single unified approach rather than requiring framework-specific monitoring solutions.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of information

If real-time identification of active code sections is performed, then up-to-date security information is achieved, but processing overhead increases

Engineering Contradiction:
Improveinformation freshnessVSAvoidprocessing overhead
Core Design Contradiction:
Loss of informationVSUse of energy by moving object

Solution Approach 1:

The patent implements self-service by having the system automatically update and check execution indicators without external intervention. The indicator structures are automatically set when code sections execute and automatically checked during security scans, eliminating the need for manual updates or complex scheduling mechanisms while maintaining real-time information accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent employs periodic scanning of execution indicators to identify active code sections at regular intervals rather than continuously monitoring every instruction. This periodic approach balances information freshness with processing efficiency, updating security information sufficiently often without the excessive overhead of continuous real-time analysis.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS20250321861A1Identifying Active Code Sections via Memory Forensics
Publication Date: 2025.10.16 KODEM SECURITY LTD
  • US20250321861A1 patent drawing
  • US20250321861A1 patent drawing
  • US20250321861A1 patent drawing

AI summary

A system of identifying an executed code section of a software process, comprising a processing circuitry (PC) configured to: a) access a memory space of a first process executing in an operating environment; b) identify, from contents of the memory space, a software framework of the first process; c) find, in the memory space, based on the identified software framework, a first code section description structure; d) identify, from the first code section description structure, a code section execution indicator (CSEI) associated with a first code section; and e) determine, based on a value of the associated CSEI, whether the first code section has been executed.