Protocol Model Generator for Automated Binary Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for generating protocol models require expert knowledge and manual operation, making it difficult to create state machines with extensive coverage, as they rely on human-generated sample inputs and network traces.
Innovation Solution
A protocol model generator that automatically extracts strings from binaries to generate a message pool and protocol model, including nodes and transition information, without prior knowledge of the protocol, enabling the inference of various protocol states and messages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If conventional manual methods are used to generate protocol models with expert analysis of sample inputs and traces, then the models can be generated with some coverage, but the coverage is limited by human capability and manual operation complexity increases
Solution Approach 1:
The system performs self-service by automatically extracting strings from binaries and generating protocol models without requiring expert manual analysis. The processor autonomously executes the modeling process by extracting multiple strings from a binary, generating a message pool with candidate messages, and constructing the protocol model with nodes and transition information, eliminating dependence on human experts for sample input generation and trace analysis.
Solution Approach 2:
The manual mechanical process of expert analysis is replaced by an automated computational system. Instead of experts manually examining sample inputs and network traces, the processor automatically extracts strings from binaries and generates protocol models through systematic computational steps, substituting human cognitive work with machine-based string extraction and model generation algorithms.
2Adaptability or versatility
If manual sample input generation is used, then the process is controllable, but the state machine coverage remains limited due to human constraints
Solution Approach 1:
The system achieves self-service by automatically generating comprehensive state machine coverage through binary string extraction. The processor independently identifies all possible messages and transitions by extracting multiple strings from the binary and generating a message pool, eliminating the need for manual sample input generation and thereby achieving extensive state machine coverage that exceeds human capabilities.
Solution Approach 2:
The system performs preliminary action by extracting multiple strings from the binary before model generation to create a comprehensive message pool. This preliminary string extraction phase captures all potential messages and transitions in advance, ensuring extensive state machine coverage is achieved before the actual protocol model construction begins, rather than relying on limited manual samples.
3Adaptability or versatility
If automated binary-based generation is used, then extensive state machine coverage is achieved, but expert knowledge of the protocol is no longer required
Solution Approach 1:
The system substitutes expert protocol knowledge with automated binary analysis. Instead of requiring experts to understand and analyze protocol specifications, the processor directly extracts strings from the binary executable code and generates the protocol model from observed behavior, replacing human expert knowledge with machine-based reverse engineering and pattern recognition.
Solution Approach 2:
The approach is inverted by starting from the binary executable code rather than from protocol specifications or sample inputs. Instead of analyzing what the protocol should do based on documentation, the system extracts actual behavior directly from the binary and reconstructs the protocol model from observed operations, reversing the conventional top-down approach to a bottom-up empirical method.
Data Source
AI summary
A protocol model generator according to the present disclosure includes: a memory in which a protocol model generating program is stored; and a processor configured to execute the program. Herein, upon execution of the program, the processor extracts multiple strings from a binary corresponding to a protocol, generates a message pool including multiple candidate messages to be used in the protocol corresponding to the binary on the basis of the extracted multiple strings, and generates a protocol model corresponding to the protocol and configured to include nodes corresponding to the respective candidate messages included in the message pool. Further, the candidate messages include messages generated on the basis of the strings and response messages generated corresponding to the messages, and the protocol model is generated including one or more nodes and transition information between the nodes.


