Nested Binary Patching for Unknown Target Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for deploying binary files to target devices are inefficient, especially when the target location's information such as IP addresses, port numbers, or GPS coordinates is unknown, requiring manual alteration and upload of nested binaries, which is time-consuming and difficult.

Innovation Solution

Defining patchable variables in nested binary files allows a parent executable to identify and alter these variables, enabling the child executable to change its values, facilitating the delivery of the binary payload to the ultimate target without direct access, using object mapping commands to determine memory locations and store configuration information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual alteration and upload of nested binaries is used, then the binary file can be deployed to target devices, but the process is time-consuming and difficult when target location information is unknown

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidtime for manual updates
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by embedding patchable variables and object mapping commands within the binary file structure before deployment. The parent executable预先 defines variables that can be patched, and object mapping commands are prepared in advance to automatically determine memory locations of child executables, eliminating the need for manual alteration and upload processes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements self-service through automatic patching mechanisms where the parent executable automatically identifies and patches variables in child executables using object mapping commands. The system self-adjusts to unknown target locations by dynamically determining memory addresses and updating binary content without human intervention, making the deployment process autonomous and efficient.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If nested binaries are manually altered and uploaded, then deployment to known targets is possible, but direct access to target devices is required

Engineering Contradiction:
Improvedeployment flexibilityVSAvoidaccess requirement
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent uses object mapping commands as intermediaries between the parent executable and child executables. These commands enable the parent executable to automatically locate and patch variables in child executables without requiring direct access to target devices. The intermediary mechanism translates high-level patching requests into low-level memory address operations, facilitating deployment to unknown targets.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies parameter changes by dynamically modifying variables within binary files during the deployment process. The parent executable changes parameters such as IP addresses, port numbers, and other configuration variables in child executables based on target information discovered at runtime, enabling adaptable deployment without manual reconfiguration.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If patchable variables are defined in nested binary files, then dynamic alteration of variables is enabled, but the binary file structure becomes more complex

Engineering Contradiction:
Improvevariable dynamicityVSAvoidbinary structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the binary file into distinct components: parent executable, child executable, patchable variables, and object mapping commands. This segmentation allows each component to have a specific function while maintaining overall system coherence. The structured division reduces complexity by organizing elements with clear boundaries and responsibilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements universality through the parent executable, which performs multiple functions: executing its own code, identifying patchable variables in child executables, determining memory locations using object mapping commands, and applying patches. This multi-functional design reduces the need for separate tools and simplifies the overall deployment architecture despite the enhanced capabilities.

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

Data Source

PatentUS10983804B1Patching a binary file
Publication Date: 2021.04.20 NIGHTWING GROUP LLC
  • US10983804B1 patent drawing
  • US10983804B1 patent drawing
  • US10983804B1 patent drawing

AI summary

Generally discussed herein are systems, apparatuses, and methods for patching a binary file using a nested executable. In one or more embodiments, a system can include a memory including a nested binary file stored thereon, the nested binary file including a child executable and a parent executable, the child executable configured as a payload of the parent executable, the parent executable including instructions that, when executed by an intermediate device, cause the intermediate device to identify a value of a variable of the child executable, determine a memory location on the target device corresponding to the variable, write the value of the variable to the child executable, and throw the child executable to the target device after writing the value of the variable to the determined memory location, and communications circuitry configured to provide the nested binary file to the intermediate device.