Program Dependency Analysis for Backdoor Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing verification apparatuses are unable to effectively verify the presence or absence of specific functions executed when specific conditions are met in software, particularly concerning undocumented functions like backdoors.
Innovation Solution
An information processing apparatus and method that perform a flow analysis on an inspection target program to analyze dependency relationships between variables, including data and control dependencies, and generate a directed graph to visualize these relationships, allowing users to inspect the execution of functions under specific conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a verification apparatus performs data flow analysis to verify sanitization nodes, then the ability to verify data sanitization is improved, but the ability to verify specific conditional functions like backdoors deteriorates
Solution Approach 1:
The verification apparatus is enhanced to perform multiple types of verification: both traditional data flow analysis for sanitization nodes and new capability to verify specific conditional functions. The control flow analysis and data dependency tracking enable the system to handle diverse verification scenarios including backdoor detection, making the apparatus multi-functional rather than specialized for a single verification type.
Solution Approach 2:
The verification method dynamically adapts between different analysis modes. The system can switch between verifying sanitization nodes through data flow analysis and verifying conditional functions through control flow analysis. The dynamic nature is体现在 in the ability to track control dependencies and evaluate conditional expressions runtime, allowing the verification approach to change based on the specific verification target.
2Device complexity
If the verification apparatus focuses on traditional data flow analysis, then the verification process is simple, but it cannot detect undocumented functions executed under specific conditions
Solution Approach 1:
The system introduces intermediate analysis layers between simple data flow analysis and comprehensive security verification. Control flow analysis serves as an intermediary that bridges the gap, enabling the detection of conditional functions without requiring full-blown dynamic execution. The control dependency tracking and conditional expression evaluation act as intermediary mechanisms that enhance detection capability while maintaining manageable complexity.
Solution Approach 2:
The verification apparatus performs preliminary control flow analysis and identifies potential undocumented functions before final verification. By pre-processing the program to extract control dependencies and conditional expressions, the system prepares the groundwork for detecting backdoors and undocumented functions, making the overall verification process more reliable without exponentially increasing complexity.
Data Source
AI summary
An information processing apparatus includes: a dependency analysis unit configured to execute a flow analysis on an inspection target program and analyze dependency relationships between variables in a process flow included in the inspection target program, the dependency relationships including a data dependency relationship and a control dependency relationship; and a directed graph generation unit configured to generate, based on results of analyzing the dependency relationships, a directed graph having a part of the inspection target program which generates the control dependency relationship as a node regarding the process flow.


