Adaptable Canary Values for Dynamic Memory Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing security measures for software programs, such as static canary values, are vulnerable to malicious attacks as they have predictable attributes, making them easily detectable and manipulable by attackers.

Innovation Solution

The system generates adaptable canary values based on the attributes of specific program segments, including varying lengths that correspond to the security level of each segment, to enhance security against malicious attacks and reverse engineering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static canary values are used for memory protection, then the implementation is simple and computationally efficient, but the security is weak because attackers can easily discover and manipulate the predictable canary values

Engineering Contradiction:
ImprovesecurityVSAvoidcanary value generation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by transforming static canary values into dynamic ones. The canary values are generated at runtime based on program execution state, memory location, and other variable parameters, making them changeable and unpredictable. This resolves the contradiction by maintaining computational efficiency while dramatically improving security through runtime variability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes multiple parameters of the canary values including their numerical values, positions within memory, and generation timing. By varying these parameters based on program state and security requirements, the system achieves both simplicity in implementation and strong security against prediction attacks.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If longer canary values are used to increase security, then the detection capability improves, but the computational overhead and memory usage increase

Engineering Contradiction:
ImprovesecurityVSAvoidcomputational energy
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by using different canary value lengths for different program segments based on their security sensitivity. Critical segments receive longer canary values with higher security, while less critical segments use shorter canary values. This resolves the contradiction by optimizing the balance between security and computational energy usage on a localized basis.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12216761B2Dynamic adaptation of memory elements to prevent malicious attacks
Publication Date: 2025.02.04 DENSO CORP
  • US12216761B2 patent drawing
  • US12216761B2 patent drawing
  • US12216761B2 patent drawing

AI summary

Systems, methods, and other embodiments described herein relate to adaptable canary values. In one embodiment, a method includes acquiring state information about a program executing within a vehicle. The state information specifies at least a security level of segments of the program. The method includes, responsive to the program satisfying a generating threshold, generating a canary value according to the state information. The method includes inserting the canary value into a memory address associated with the program.