Code Injection Module for Secure Firmware Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for rebranding server systems and updating BIOS require costly and frequent releases of new firmware, especially when addressing bugs or security vulnerabilities, and involve complex processes that are inefficient and resource-intensive.

Innovation Solution

The implementation of a code injection module (CIM) that allows for the injection and execution of executable code images into existing firmware, enabling hot fixes and behavior changes without a full BIOS update, allowing for separate and independent management of OEM ID injection modules from BIOS code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional BIOS updates are released to address bugs or security vulnerabilities, then system reliability is improved, but the frequency of releases increases and development costs increase

Engineering Contradiction:
Improvesystem reliabilityVSAvoidrelease frequency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the BIOS into a base BIOS and separate personality modules. The base BIOS remains stable while personality modules can be independently updated to address bugs or security vulnerabilities. This allows targeted updates without requiring full BIOS re-releases, thus improving reliability while reducing release frequency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts personality-specific code and configuration into separate personality modules that are stored in SPI flash memory rather than being compiled into the base BIOS. This extraction allows the base BIOS to remain unchanged while personality modules are updated independently, resolving the contradiction between maintaining reliability and avoiding frequent releases.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If custom BIOS code is created for each OEM rebranding, then adaptability is improved, but device complexity and development resources increase

Engineering Contradiction:
ImproveOEM adaptabilityVSAvoidBIOS complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the BIOS functionality into a common base BIOS and OEM-specific personality modules. Each personality module contains only the necessary customization code for a specific OEM, allowing multiple OEMs to use the same base BIOS without requiring separate custom BIOS builds. This reduces device complexity while maintaining adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The base BIOS is designed to be universal and work with multiple different personality modules from different OEMs. The BIOS includes a personality module loader that can automatically load the appropriate personality module based on the detected OEM ID, eliminating the need to create separate custom BIOS code for each OEM while maintaining full adaptability.

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

3Adaptability or versatility

If personality modules are applied to rebrand server systems, then adaptability is improved, but the process becomes resource-intensive and time-consuming

Engineering Contradiction:
Improverebranding capabilityVSAvoidrebranding time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-compiling personality modules and storing them in the SPI flash memory before the server needs to be rebranded. When rebranding is required, the system simply loads the pre-prepared personality module rather than compiling or generating it at runtime. This significantly reduces the time required for rebranding while maintaining adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by storing personality modules as separate binary images in the SPI flash memory that can be rapidly copied and loaded into the BIOS execution environment. This copying mechanism is much faster than regenerating or compiling personality modules on-demand, thus reducing rebranding time while maintaining the ability to support multiple OEMs.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9626181B2Systems and methods to securely inject binary images and code into firmware
Publication Date: 2017.04.18 DELL PROD LP
  • US9626181B2 patent drawing
  • US9626181B2 patent drawing
  • US9626181B2 patent drawing

AI summary

Systems and methods are provided that may be implemented to execute firmware and to inject executable code images into the executing firmware that are extracted from a code injection module (CIM) so as to execute the injected code and/or binary images from the firmware implementation environment.