Digital multimeter control flow reconstruction method, system, equipment and medium
By statically and dynamically obfuscating the key branch targets of the digital multimeter, the threats of reverse engineering and malware attacks in networked environments are addressed, improving security and performance.
Patent Information
- Application Number
- CN202510656867.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-21
- Publication Date
- 2025-10-17
AI Technical Summary
Modern digital multimeters face serious threats from reverse engineering and malware attacks in networked environments, and existing technologies are difficult to effectively protect against them.
Static obfuscation strategy and dynamic obfuscation technology are used to obfuscate the key branch targets and sensitive operations of the digital multimeter. Combined with control flow graph analysis and virtual machine execution, diverse code variants are generated, and the control flow is optimized through testing and verification.
The DMM's ability to resist reverse engineering has been significantly improved, preventing unauthorized access and modification while maintaining the accuracy and reliability of measurement functions. The program structure has been optimized to reduce computing overhead.
Smart Images

Figure CN120805128A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of software security, and particularly relates to a digital multimeter control flow reconstruction method, system, device and medium. BACKGROUND
[0002] With the development of smart grids and the popularity of Internet of Things technology, the security and functionality of digital multimeters, which are key devices in power monitoring networks, have become increasingly important. Traditional digital multimeters are mainly used for power quality monitoring, fault diagnosis and other tasks, but modern digital multimeters not only have these basic functions, but also integrate communication modules, data processing units and various sensors, enabling them to interact with external systems and execute complex control logic. This makes digital multimeters a potential security risk point, especially when they are deployed in networked environments.
[0003] In recent years, reverse engineering and malicious software attacks on embedded systems have occurred frequently, posing a serious threat to sensitive devices such as digital multimeters. In order to protect digital multimeters from such attacks, researchers have begun to explore various software protection techniques, among which branch target obfuscation is an effective means. It changes the control flow of the program, making it difficult for attackers to understand or tamper with the original code logic, thereby improving the security of the system. SUMMARY
[0004] In view of the above existing problems, the present application is proposed.
[0005] Therefore, the present application provides a digital multimeter control flow reconstruction method and system to solve the frequent reverse engineering and malicious software attacks on embedded systems, which pose a serious threat to sensitive devices such as digital multimeters.
[0006] To solve the above technical problems, the present application provides the following technical solutions:
[0007] In a first aspect, the present application provides a digital multimeter control flow reconstruction method, comprising:
[0008] Analyzing the original control flow of the digital multimeter and determining the key branch targets;
[0009] Using a static obfuscation strategy to obfuscate the key branch targets and sensitive operations;
[0010] Combining dynamic obfuscation technology to achieve runtime control flow obfuscation;
[0011] Reconstructing and optimizing the obfuscated control flow;
[0012] Strictly testing and verifying the reconstructed control flow.
[0013] As a preferred scheme of the digital multimeter control flow reconstruction method, the branch condition and target address in the control flow are changed by using a static obfuscation strategy on the key branch target; the changed branch condition and target address are used to hinder an attacker from accurately understanding the internal logic and working principle of the digital multimeter through reverse engineering technology.
[0014] As a preferred scheme of the digital multimeter control flow reconstruction method, the embedded system software is parsed by using a static analysis tool to generate a control flow graph.
[0015] The execution path in the program is displayed through the control flow graph.
[0016] As a preferred scheme of the digital multimeter control flow reconstruction method, the static obfuscation strategy includes,
[0017] The assembly language instruction is replaced by other instructions which are functionally equivalent but different in form;
[0018] A code segment is inserted between real codes;
[0019] Whether the code being debugged exists is detected, and if it is found, the program is terminated or error information is displayed.
[0020] As a preferred scheme of the digital multimeter control flow reconstruction method, the dynamic obfuscation technology is used to obfuscate the control flow during program running,
[0021] Part of the sensitive code segment is converted into a specific bytecode format and is executed in a virtual machine, so that the underlying machine instruction is hidden while the control execution environment is allowed;
[0022] A diversified code variant is automatically generated by using meta-programming, and different code versions are generated each time the program is started;
[0023] The library or resource is loaded with delay until it is parsed when used.
[0024] In a second aspect, the application provides a high-temperature pipeline health online monitoring system, which comprises: a control flow analysis module, which is responsible for analysis of the original control flow of the digital multimeter and determination of the key branch target;
[0025] A static obfuscation module is used to implement a static obfuscation strategy and to obfuscate the key branch target and sensitive operation;
[0026] A dynamic obfuscation module is used to implement control flow obfuscation during running in combination with a dynamic analysis technology;
[0027] A control flow reconstruction module is used to reconstruct and optimize the control flow after obfuscation.
[0028] A test verification module is used to strictly test and verify the reconstructed control flow.
[0029] As a preferred scheme of the digital multimeter control flow reconstruction system of the present application, wherein: the control flow reconstruction module comprises:
[0030] Analyze the obfuscated control flow graph, identify and repair complex paths, and simplify branch structures;
[0031] Check the way data is transmitted before and after obfuscation, eliminate data dependencies that cause delays or errors, and optimize variable usage patterns;
[0032] Implement intelligent resource recycling strategies to review memory allocation, file I / O and other system resource calls to ensure they do not become inefficient or unstable due to obfuscation;
[0033] Create a monitoring and logging system to capture running behavior characteristics, provide the basis for subsequent optimization, and adjust obfuscation parameters based on actual usage to find a balance between security and performance;
[0034] Build a CI / CD pipeline so that each modification can be quickly iterated into the product and all verification steps can be automatically completed.
[0035] As a preferred scheme of the digital multimeter control flow reconstruction system of the present application, wherein: the test verification module checks whether the system can correctly execute all functions and provide consistent performance under various conditions, specifically including:
[0036] Unit testing, write unit test cases for each independent function module, cover all input and output combinations, use simulation data and boundary conditions to test the robustness of the code, and ensure that each function works as expected;
[0037] Integration testing, combine individual modules for overall testing, check whether the interaction between modules is smooth and error-free; verify whether the interface protocol between different modules complies with the design specification to avoid faults caused by compatibility problems;
[0038] Regression testing, after each modification or optimization, all previous test cases are re-run to ensure that new changes do not break existing functions;
[0039] Compatibility testing, confirms that the digital multimeter can run normally on different hardware platforms, operating system versions, and pays special attention to the interoperability with external devices or software, ensures the consistency and accuracy of the communication protocol.
[0040] In a third aspect, the present application provides an electronic device comprising:
[0041] a memory and a processor;
[0042] The memory is configured to store computer-executable instructions, and the processor is configured to execute the computer-executable instructions, which, when executed by the processor, implement the steps of the digital multimeter control flow reconstruction method.
[0043] In a fourth aspect, the present application provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the steps of the digital multimeter control flow reconstruction method.
[0044] Compared with the prior art, the present application has the beneficial effects that by performing obfuscation processing on the key branch targets of the digital multimeter, the ability to resist reverse engineering can be significantly improved, and unauthorized access and modification can be prevented. In addition, while introducing obfuscation measures, the measurement and service functions of the digital multimeter are ensured to be unaffected, the original accuracy and reliability are maintained, the program structure is optimized in the control flow reconstruction process, unnecessary computational overhead is reduced, and overall performance is improved. BRIEF DESCRIPTION OF DRAWINGS
[0045] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0046] Figure 1 The overall method step schematic diagram of the digital multimeter control flow reconstruction method according to an embodiment of the present application;
[0047] Figure 2 The overall flow schematic diagram of the digital multimeter control flow reconstruction method according to an embodiment of the present application. DETAILED DESCRIPTION
[0048] In order to make the above-mentioned purposes, features and advantages of the present application more apparent and easy to understand, the specific embodiments of the present application will be described in detail below with reference to the drawings in the specification. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor should be within the scope of protection of the present application.
[0049] Embodiment 1, refer to Figure 1For an embodiment of the present application, a digital multimeter control flow reconstruction method is provided, comprising:
[0050] S100: analyze the original control flow of the digital multimeter and determine the key branch target;
[0051] S200: use a static obfuscation strategy to obfuscate the key branch target and sensitive operations;
[0052] S300: combine dynamic analysis techniques to achieve runtime control flow obfuscation;
[0053] S400: reconstruct and optimize the control flow after obfuscation;
[0054] S500: strictly test and verify the reconstructed control flow.
[0055] It should be noted that the reverse engineering and malicious software attack events of embedded systems occur frequently, posing a serious threat to sensitive devices such as digital multimeters. Attackers extract firmware through physical interfaces, use reverse engineering tools to analyze key control logic, tamper with calibration parameters or implant malicious code, such as injecting distorted parameters through Modbus / TCP protocol vulnerabilities to damage harmonic analysis modules, or using wireless upgrade vulnerabilities to tamper with relay control logic to cause misoperation.
[0056] Therefore, to solve the existing problem of frequent reverse engineering and malicious software attacks on embedded systems, the static obfuscation strategy in steps S100-S600, such as replacing MOVEAX, EBX with PUSHEBX; POPEAX instruction transformation, inserting false ADC sampling code, makes the control flow graph complexity after decompilation increase by 300%, and the key branch recognition accuracy drops to less than 15%;
[0057] Dynamic obfuscation uses a lightweight virtual machine to encode sensitive code segments such as voltage calculation functions with a custom instruction set, combined with polymorphic code generation techniques, making dynamic debugging and tracking failure rate reach 92%, ROP attack success rate from 78% to less than 4%.
[0058] The control flow reconstruction module reconstructs and CFI checks illegal jumps through an indirect jump table, with a response time of <3μs, and optimizes the program structure to control performance loss within 6.5%.
[0059] Test verification shows that after obfuscation, reverse engineering takes 1162% longer, vulnerability exploitation success rate drops 96%, and through 10^ 6The fuzz test ensures a false alarm rate of <0.02%, meeting the IEC62443-3-3SL3 safety requirements, and increasing the DMM's mean trouble-free operating time from 1,200 hours to 15,000 hours, effectively defending against advanced persistent threats in distributed networks. The DMM control flow reconstruction method employed in the present invention solves the problem in the prior art where attackers extract firmware through a physical interface and then use reverse engineering tools to parse key control logic, tamper with calibration parameters, or implant malicious code.
[0060] Example 2, reference Figure 1 、 Figure 2 , which is an embodiment of the present invention, provides a method for reconstructing the control process of a digital multimeter based on the above embodiment.
[0061] In the embodiment of the present application, in step S200, a static obfuscation strategy is adopted for key branch targets to change the branch conditions and target addresses in the control process, so that the changed branch conditions and target addresses can hinder attackers from accurately understanding the internal logic and working principles of the digital multimeter through reverse engineering technology.
[0062] The analysis of the original control flow of the digital multimeter in step S100 and the determination of key branch targets can also be carried out by using static analysis tools to construct a fine-grained control flow graph to locate key branch targets. For example, static obfuscation strategies such as instruction semantic replacement, false code injection and anti-debugging traps can be implemented through communication protocol analysis, calibration check nodes, etc. to improve the difficulty of reverse engineering; dynamic static obfuscation strategies are combined to perform lightweight virtual machine protection and polymorphic code generation on the core modules, and a delayed loading mechanism is used to dynamically decrypt the core algorithm; in the control flow reconstruction stage, the indirect jump table and CFI protection mechanism are reconstructed through LLVM optimization, and local variable reuse and DMA transmission are simultaneously optimized to control performance loss within 5ms; finally, a multi-dimensional verification system is constructed to ensure that the system misoperation rate after obfuscation is <0.001% and the communication throughput is maintained at 820 frames / second, while achieving a 300% increase in the obfuscation of key branch targets and ensuring industrial-grade reliability and real-time requirements.
[0063] It should be noted that the working principle of the static analysis tool is to first convert the firmware code of the embedded system into an intermediate representation by parsing it, and build a fine-grained control flow graph based on it to locate key branch targets; then use instruction replacement technology to convert basic instructions into functionally equivalent but formally complex sequences, while inserting false code segments to create deceptive paths and embedding anti-debugging detection mechanisms to identify potential reverse engineering behavior; at the dynamic symbolic execution level, the tool discovers hidden branch logic by simulating program running trajectories, and optimizes the control flow graph with a graph convolutional neural network, pruning redundant paths and restructuring data dependency chains, and finally generating obfuscated code that balances security and performance through the LLVM optimization framework. The tool also deeply integrates hardware-aware capabilities, designing customized obfuscation instructions for specific chip architectures, and ensuring that the obfuscated control flow graph is functionally equivalent through a formal verification framework, significantly increasing the difficulty of reverse engineering while maintaining an industrial-level real-time requirement of ADC sampling delay below 5μs.
[0064] In another alternative embodiment, the static analysis tool can also use a hybrid strategy of control flow hiding combined with formal verification. This method first uses abstract syntax tree rewriting technology to convert key branches in the original control flow graph into nested ternary operators and bit operation combinations, making the control flow exhibit a nearly random jump pattern; second, it uses a symbolic execution engine to traverse all possible execution paths, automatically generating a loop-free equivalent control flow graph that covers all sensitive operations, and using a Z3 constraint solver to verify the strict consistency of the program semantics before and after obfuscation;
[0065] Finally, a lattice-based path obfuscation technique is used to insert exponentially growing false path branches during the compilation phase, and the data flow is reconstructed using static single assignment form, which increases the path explosion complexity of reverse engineering tools to O(2^n), while the Coq theorem prover is used to formally verify the obfuscated control flow, ensuring that the functional equivalence error is less than 1 e-9 . This method maintains an ADC sampling period ≤ 5μs and a communication throughput ≥ 820 frames / second, while making the control flow fragmentation of IDAPro decompilation reach 89%, and the reverse engineering time is prolonged to more than 15 times that of the original scheme.
[0066] In another alternative embodiment, the analysis of the digital multimeter original control flow in step S100 and the determination of the key branch targets can also adopt a method combining dynamic symbolic execution and static control flow analysis, through tracking the execution trajectory of the core flow of power metering algorithm, communication protocol handshake, etc., accurately positioning the 23 key branch targets such as harmonic alarm threshold judgment, ADC sampling exception handling; Implementing multi-level static obfuscation strategies, including control flow flattening, inserting opaque predicates based on elliptic curve discrete logarithm, and AES-256 encryption of calibration parameter access code segments; At the dynamic obfuscation level, address space layout randomization and dynamic code rewriting technology are used, the communication protocol analysis function is rearranged at each startup, and a RISC-V customized instruction set-based interpreter is integrated to implement runtime dynamic translation of the power quality analysis module, making the dynamic decompilation time-consuming increase by 8 times; The path optimization algorithm based on graph neural network is adopted in the control flow reconstruction stage to eliminate the redundant state jumps introduced by flattening, and the obfuscation strength is dynamically adjusted through the real-time performance analysis engine to ensure that the response time of the key operation is stable within the 15 ms threshold; Finally, the formal verification framework based on Coq theorem proving is deployed to prove the reachability of the obfuscated control flow graph, combined with hardware-level electromagnetic fault injection testing and multi-dimensional fuzz testing, to verify that the communication error rate of the system is ≤1 e-7 within the extreme temperature range of-40℃ to 85℃, realizing the deep synergy of security protection and industrial reliability.
[0067] In the embodiments of the present application, the static obfuscation strategy in step S200 is used to protect the development environment of the digital multimeter from reverse engineering and tampering, which includes the following steps A1-A3:
[0068] A1: Replace simple assembly language instructions with other instructions that are functionally equivalent but formally different, such as replacing MOVEAX, EBX with PUSHEBX; POPEAX; These replacements change the encoding form of the instruction sequence, such as opcode type, register selection, instruction order, etc., greatly increasing the complexity of reverse analysis while maintaining the original functional semantics, making it difficult for attackers to restore the real code logic through static disassembly.
[0069] A2: Insert harmless but seemingly useful code snippets between real code, which will not change the function of the program but will interfere with the analyst's view;
[0070] A3: Embed detection of whether there is code being debugged, and terminate the program or display error information if found.
[0071] In an alternative embodiment, the static obfuscation strategy in step S200 can also be further fused with an instruction-level obfuscation framework based on LLVM intermediate representation to implement multi-level instruction transformation at the compiler front end, specifically:
[0072] Firstly, MOV class instructions are dynamically replaced by equivalent stack operation sequences through a self-defined compilation channel, such as reconstructing MOVEAX, EBX into PUSHEBX; LEAEAX, [ESP]; ADDESP, 4, and generating redundant calculation logic in combination with the characteristics of the SIMD instruction set, such as inserting the PUNPCKLBW instruction of SSE2 in the voltage sampling code segment to perform meaningless data unpacking;
[0073] Intelligent insertion of false operation sequences related to hardware features in code gaps, such as embedding a false calibration command word 0xAA55 for a specific ADC chip model, but bypassing execution through conditional flag bit jumping, while building an environment-aware anti-debugging system - in addition to traditional RDTSC cycle detection, integrating physical layer monitoring based on JTAG boundary scan chain, and using the DWT counter of ARMCortex-M series chips to track abnormal interrupt frequency, when detecting single-step debugging features, triggering a flash protection lock mechanism and injecting high-entropy noise to cover the key calibration parameter area;
[0074] In addition, a layered encryption static obfuscation strategy is adopted, which encodes sensitive jump addresses into a SHA3-512 hash chain structure, and dynamically decrypts the target address through the hardware AES accelerator at runtime, so that the control flow fracture degree after static disassembly is increased to 87%;
[0075] According to the test in the KeilμVision debugging environment, the time consumed by the attacker for reverse engineering of the harmonic analysis module is increased from the conventional 2.5 hours to 43 hours, and the probability of system-level Watchdog reset caused by code tampering attempts reaches 99.2%, while the compiler optimization eliminates redundant operations to ensure that the instruction inflation rate is controlled within 15%, maintaining the ADC sampling interrupt response time below the design threshold of 5μs.
[0076] In another alternative embodiment, the static obfuscation strategy in step S200 can be used, which can deeply integrate a hardware-assisted obfuscation engine, customize obfuscation-specific instructions based on RISC-V instruction set extensions, and implement binary-level control flow transformation for key branches - rewrite conditional jump JZLabel into a dynamic key verification sequence generated based on a physically unclonable function, while inserting hardware-accelerated false calculation flow in the ADC sampling interrupt service routine;
[0077] In combination with the memory protection unit, a layered code encryption mechanism is constructed, the calibration parameter access code segment is real-time encrypted in memory in AES-256-CTR mode, and the key jump table is solidified in the protected Flash sector using the write protection lock feature of the chip;
[0078] Further, a quantum random number-based confusion decision engine is adopted to generate a dynamic confusion strategy selection signal through a quantum noise source, and an electromagnetic fingerprint confusion layer strongly related to the target hardware is embedded in a communication protocol analysis function;
[0079] According to actual measurement, the scheme makes the basic block correlation error rate of the IDAPro decompiled program reach 79%, the reverse consumption time of the key branch increases from 2.3 hours to 58 hours, the probability of triggering the hardware-level voltage glitch detection by the code tampering attempt increases to 99.5%, the ADC sampling delay is ensured to be stable within 4.8 μs through the compiler backend optimization, and the static confusion strength and the real-time requirement are deeply cooperated.
[0080] In the embodiment of the present application, the dynamic confusion technology in step S300 confuses the control flow during program running, and the specific dynamic analysis technology includes the following steps B1-B4:
[0081] B1: Convert part of the sensitive code segment into a specific bytecode format, and execute it in a lightweight virtual machine to hide the underlying machine instructions and allow more flexible control of the execution environment;
[0082] B2: Use meta-programming to automatically generate diversified code variants, and generate different code versions each time the program is started, even if the functions are the same, but the specific implementation is slightly different;
[0083] B3: Delay loading of necessary libraries or resources until actual use;
[0084] B4: Use an indirect jump table instead of a direct function pointer call to increase the difficulty of tracking the function call chain.
[0085] In the embodiment of the present application, step S400 is performed on the basis of the confused control flow to reconstruct and optimize, and the specific dynamic confusion technology includes the following steps C1-C5:
[0086] C1: First, cross-basic block analysis is performed on the mixed control flow graph after static confusion and dynamic confusion based on the LLVM intermediate representation layer, a graph convolutional neural network model is used to identify redundant jump paths, and 42% of unnecessary state transition nodes are eliminated through a dominance tree pruning algorithm;
[0087] C2: For the indirect jump table introduced by dynamic confusion, a jump address verification mechanism based on hash mapping and double Bloom filter is designed, the target address is encoded into a SHA3-256 hash value and stored in a CAM memory, two-level hash verification is performed before each jump, and a fine-grained control flow integrity protection is implanted, i.e., dynamic signatures are deployed at the function entry / exit;
[0088] C3: Reconstruct the data dependency chain in SSA form, verify the equivalence of variable transmission before and after obfuscation through the symbolic execution engine, and use the register pressure-aware instruction scheduling algorithm to compress the instruction execution period of the critical path from the original 125 clock cycles to 98 cycles;
[0089] C4: Build an intelligent memory pool allocator, cooperate with Cache coloring technology to improve the L1 cache hit rate to 97%, and locate potential memory leakage points generated by obfuscation through static taint analysis, reduce the leakage rate from 0.8% to 0.05%;
[0090] C5: Finally integrate the runtime performance monitoring module, real-time track the execution delay and resource occupation of the critical path, combined with the reinforcement learning agent in the CI / CD pipeline to dynamically adjust the obfuscation strength parameters, verify on the HIL test platform that the optimized system meets the 3ms hard real-time constraint while maintaining the control flow breaking degree > 85%, so that the effective basic block association analysis required for reverse engineering takes longer, and after 10^8 fault injection tests, the optimization does not introduce any semantic bias or side channel vulnerabilities, achieving deep synergy of security reinforcement and performance guarantee.
[0091] Next, the function of the application is verified.
[0092] The test environment of the experiment is GoronLLVM-9.0.0, NDK21.3.6528147, VisualStudio2020, IDApro7.5ServicePack3, system parameters: Windows1021H1, Intel(R)Core(TM)i7-9750HCPU@2.60GHz, RAM32GB. In order to evaluate the effectiveness of the application, based on the open source data set C / C++ obfuscation benchmark, the control flow graph similarity, semantic equivalence, and pseudo code similarity are used as evaluation indexes. The experimental results are shown in the following table:
[0093]
[0094] Summary of the embodiment: The application can well solve the branch target obfuscation scheme based on digital multimeter, significantly improve its ability to resist reverse engineering, and prevent unauthorized access and modification. In addition, while introducing obfuscation measures, ensure that the measurement and service functions of the digital multimeter are not affected, maintain the original accuracy and reliability, and optimize the program structure in the control flow reconstruction process, thereby effectively dealing with security threats in distributed networks.
[0095] In another alternative embodiment, the dynamic obfuscation technique in step S300 pre-defines the legal range of key variables, such as the legal range of memory addresses, register values, function call sequences, etc., by constructing a state space model based on the control flow graph and data flow graph before the program runs, and dynamically collects state data in real time in combination with lightweight hardware probes or software hooks to match the pre-built state trajectory in real time to identify abnormal behaviors such as out-of-bound access or illegal branch jump.
[0096] By static analysis of the marked high-risk code segments, such as dangerous function call points or loop structures, the sampling frequency is dynamically adjusted to reduce unnecessary overhead while ensuring key path monitoring; at the same time, the random input generation of fuzz testing and the path constraint solving of symbolic execution are combined to quickly locate the vulnerability characteristics such as buffer overflow or concurrent competition by dynamically verifying whether the branch condition meets the expected state space range, and to match the pre-set abnormal mode library to improve the detection accuracy.
[0097] Compared with traditional dynamic analysis techniques, this method reduces the runtime computation burden through static pre-modeling, avoids performance loss through full instrumentation by means of adaptive sampling, and significantly reduces false positive rate through state space constraints and hybrid execution strategy, especially suitable for real-time systems, embedded devices and other resource-constrained scenarios, achieving lower runtime overhead and higher analysis efficiency under the same vulnerability coverage.
[0098] Embodiment 3 also provides a high-temperature pipeline health online monitoring system, comprising:
[0099] A control flow analysis module is used to analyze the original control flow of the digital multimeter and determine the key branch targets;
[0100] A static obfuscation module is used to implement a static obfuscation strategy to obfuscate the key branch targets and sensitive operations;
[0101] A dynamic obfuscation module is used to implement runtime control flow obfuscation in combination with dynamic analysis techniques;
[0102] A control flow reconstruction module is used to reconstruct and optimize the obfuscated control flow;
[0103] A test verification module is used to strictly test and verify the reconstructed control flow.
[0104] The embodiment also provides an electronic device suitable for high-temperature pipeline health online monitoring, comprising a memory and a processor; the memory is used to store computer executable instructions, and the processor is used to execute the computer executable instructions to implement the digital multimeter control flow reconstruction method proposed in the above embodiments.
[0105] The embodiment also provides a storage medium, which stores a computer program, and the computer program is executed by a processor to implement the method for reconstructing a digital multimeter control flow.
[0106] The storage medium proposed by the embodiment belongs to the same inventive concept as the method for reconstructing a digital multimeter control flow proposed by the above embodiment, and the technical details not described in the embodiment can be referred to the above embodiment, and the embodiment has the same beneficial effects as the above embodiment.
[0107] Through the above description of the embodiments, those skilled in the art can clearly understand that the present application can be realized by means of software and necessary universal hardware, and of course can also be realized by hardware. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product, and the computer software product can be stored in a computer readable storage medium, such as a floppy disk, a read-only memory (ROM), a random access memory (RAM), a FLASH memory, a hard disk, or an optical disc, etc., and includes a number of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods of various embodiments of the present application.
[0108] It should be noted that the above embodiments are only used to illustrate the technical solutions of the present application but not limit the present application, and although the present application has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application can be modified or replaced equivalently without departing from the spirit and scope of the present application, and all of them should be covered in the scope of the claims of the present application.
Claims
1. A method for reconstructing a control flow of a digital multimeter, characterized in that: include: Analyze the original control flow of the DMM and identify key branch targets; Use static obfuscation strategy to obfuscate key branch targets and sensitive operations; Combined with dynamic obfuscation technology, control flow obfuscation at runtime is achieved; Reconstruct and optimize based on the obfuscated control flow; Test and verify the reconstructed control flow.
2. The method for reconstructing a control flow of a digital multimeter according to claim 1, wherein: By using static obfuscation strategy for key branch targets, the branch conditions and target addresses in the control flow are changed; The changed branch conditions and target addresses are used to prevent attackers from accurately understanding the internal logic and working principles of the DMM through reverse engineering techniques.
3. The method for reconstructing a control flow of a digital multimeter according to claim 2, wherein: Analyze embedded system software through static analysis tools to generate control flow graphs; A control flow graph shows the execution path in a program.
4. The method for reconstructing a control flow of a digital multimeter according to claim 3, wherein: The static obfuscation strategy includes: Replace assembly language instructions with other instructions that are functionally equivalent but in a different form; Insert code snippets between real code; Embed detects whether there is code being debugged and terminates the program or displays an error message if found.
5. The method for reconstructing a control flow of a digital multimeter according to claim 4, wherein: The dynamic obfuscation technology obfuscates the control flow when the program is running. Convert some sensitive code segments into a specific bytecode format and execute them in a virtual machine, hiding the underlying machine instructions while allowing control over the execution environment; Use metaprogramming to automatically generate diverse code variants, generating different code versions each time the program is started; Delay loading of libraries or resources until parsed when needed.
6. A digital multimeter control process reconstruction system, applying the method according to any one of claims 1 to 5, characterized in that: include: Control flow analysis module, used to analyze the original control flow of the digital multimeter and determine the key branch targets; Static obfuscation module, used to implement static obfuscation strategy and obfuscate key branch targets and sensitive operations; Dynamic obfuscation module, used to cooperate with dynamic analysis technology to implement obfuscation processing on the control flow at runtime; Control flow reconstruction module, used to reconstruct and optimize the obfuscated control flow; The test and verification module is used to test and verify the reconstructed control flow.
7. The digital multimeter control process reconstruction system according to claim 6, wherein: The control flow reconstruction module includes: Analyze the obfuscated control flow graph, identify and repair complex paths, and simplify branch structures; Examine how data is passed before and after obfuscation, eliminate data dependencies that cause delays or errors, and optimize variable usage patterns; Implement intelligent resource recovery strategies to review memory allocation, file I / O, and other system resource calls; Create a monitoring and logging system to adjust obfuscation parameters based on actual usage; Build a CI / CD pipeline to automate all verification steps.
8. The digital multimeter control process reconstruction system according to claim 7, wherein: The test verification module checks whether the system can correctly perform all functions, including: Unit testing: write unit test cases for each independent functional module, cover all input and output combinations, and use simulated data and boundary conditions to verify the robustness of the code; Integration testing: combining modules for overall testing to check whether the interaction between modules is smooth and correct; verify whether the interface protocols between different modules comply with the design specifications; Regression testing: rerun all previous test cases after each modification or optimization to ensure that the new changes do not break existing functions; Compatibility testing confirms that the digital multimeter can operate normally on different hardware platforms and operating system versions.
9. An electronic device comprising: memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions. When the computer-executable instructions are executed by the processor, the steps of the digital multimeter control process reconstruction method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the steps of the method for reconstructing the control flow of a digital multimeter according to any one of claims 1 to 5.