Fuzzy test method and system based on independent deployment of monitor and storage medium

By independently deploying the monitor on the engineering machine to be tested and decoupling from the fuzz testing engine, the problem of resource competition in the fuzz testing system is solved, testing efficiency is improved and system architecture is simplified.

CN119621559APending Publication Date: 2025-03-14KAIYUAN NETWORK SECURITY TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411678077.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

In existing fuzz testing systems, fuzz testing engines and monitors share resources, resulting in resource competition, low testing efficiency and difficult system maintenance.

Method used

By independently deploying the monitor on the engineering machine to be tested and decoupled from the fuzz test engine, the monitor communicates with the fuzz test engine through HTTP services, and the fuzz test engine adjusts the test strategy based on exception reporting adaptability.

Benefits of technology

It avoids resource competition, improves monitoring efficiency, facilitates independent upgrade and adjustment, simplifies the system architecture and reduces maintenance difficulty.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119621559A_ABST
    Figure CN119621559A_ABST
Patent Text Reader

Abstract

The invention provides a fuzzy test method and system based on independent deployment of a monitor and a storage medium, and the specific implementation scheme is as follows: the monitor of the fuzzy test system is deployed on a to-be-tested engineering machine independent of a fuzzy test engine, and the fuzzy test engine injects an attack message into the to-be-tested engineering machine based on a target test case; the monitor correspondingly collects system operation data of the to-be-tested engineering machine according to the target monitoring task, analyzes the system operation data and generates an exception report; the fuzzy test engine sends an HTTP request to the monitor and receives an exception report sent by the monitor in response to the HTTP request; and the fuzzy test engine adaptively adjusts the test strategy according to the exception report, and iterates the test based on the adjusted test strategy. According to the scheme, the monitor and the fuzzy test engine are decoupled, resource competition with the fuzzy test engine can be avoided, the monitoring efficiency is improved, independent upgrading and adjustment are facilitated to adapt to different test requirements, the system architecture is simplified, and the maintenance difficulty is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of testing technology, and in particular to a fuzzy testing method, system and storage medium based on independent deployment of monitors. Background Art

[0002] Fuzz testing technology is currently widely used in system testing. In practical applications, the fuzz testing system includes a fuzz testing engine and a monitor. However, in related technologies, the fuzz testing engine and the monitor are usually integrated together and deployed in a test environment. Then the monitor and the fuzz testing engine share a set of resources during operation, which will cause resource competition, resulting in low testing efficiency and difficulty in system maintenance.

[0003] It is worth noting that the techniques described in this section are not necessarily techniques that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any technique described in this section is considered to be prior art simply because it is included in this section. Similarly, unless otherwise indicated, the issues mentioned in this section should not be considered to have been recognized in any prior art. Summary of the invention

[0004] The embodiments of the present application provide a fuzzy testing method, system and storage medium based on independent deployment of monitors, which aims to solve one of the problems in the related art at least to a certain extent.

[0005] A first aspect of an embodiment of the present application provides a fuzzy testing method based on independent deployment of a monitor, which is applied to a fuzzy testing system including a fuzzy testing engine and a monitor, wherein the monitor is independently deployed on an engineering machine to be tested, and the fuzzy testing method includes:

[0006] The fuzz testing engine injects attack messages into the engineering machine to be tested based on the target test case;

[0007] The monitor collects the system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an abnormality report;

[0008] The fuzz testing engine sends a first HTTP request to the monitor, and receives the exception report sent by the monitor in response to the first HTTP request;

[0009] The fuzz testing engine adaptively adjusts the testing strategy according to the abnormal report, and returns to execute the step of injecting attack messages into the engineering machine to be tested based on the target test case based on the adjusted testing strategy.

[0010] The second aspect of an embodiment of the present application provides a fuzzy testing system, including: a memory and a processor, wherein the processor is used to execute a computer program stored in the memory, and when the processor executes the computer program, it implements each step of the fuzzy testing method based on independent deployment of monitors provided in the first aspect of the embodiment of the present application.

[0011] A third aspect of an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, each step of the fuzzy testing method based on independent deployment of monitors provided in the first aspect of the embodiment of the present application is implemented.

[0012] As can be seen from the above, according to the fuzz testing method, system and storage medium based on independent deployment of monitors provided by the scheme of the present application, the monitor of the fuzz testing system is deployed on the engineering machine to be tested independently of the fuzz testing engine, and the fuzz testing engine injects attack messages into the engineering machine to be tested based on the target test case; the monitor collects the system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an exception report; the fuzz testing engine sends an HTTP request to the monitor, and receives the exception report sent by the monitor in response to the HTTP request; the fuzz testing engine adaptively adjusts the test strategy according to the exception report, and iterates the test based on the adjusted test strategy. Through the implementation of the scheme of the present application, the monitor is decoupled from the fuzz testing engine, which can avoid resource competition with the fuzz testing engine, improve monitoring efficiency, facilitate independent upgrades and adjustments to adapt to different testing needs, and simplify the system architecture and reduce maintenance difficulty.

[0013] It should be understood that the content described in this section is not intended to identify the key or important features of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification, and together with the text description of the specification, are used to explain the exemplary implementation of the embodiments. The drawings shown are for illustrative purposes only and do not limit the scope of the claims. In all drawings, the same reference numerals refer to similar but not necessarily identical elements.

[0015] Figure 1 A basic flow chart of a fuzzy testing method based on independent deployment of monitors provided in one embodiment of the present application;

[0016] Figure 2 A flowchart of a test case acquisition method provided in one embodiment of the present application;

[0017] Figure 3A detailed flow chart of a fuzzy testing method based on independent deployment of monitors provided in an embodiment of the present application;

[0018] Figure 4 A schematic diagram of the structure of a fuzzy testing system provided in one embodiment of the present application. DETAILED DESCRIPTION

[0019] In order to make the purpose, features, and advantages of the invention of this application more obvious and easy to understand, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.

[0020] In the description of the embodiments of the present application, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features; the term "multiple" means two or more, unless otherwise clearly and specifically defined; the term "including" indicates the presence of the described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or their collections; the term "and / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may include the existence of A alone, the existence of A and B at the same time, and the existence of B alone. The character " / " generally indicates that the previously associated objects are in an "or" relationship.

[0021] In order to at least solve the problems of low test efficiency and high system maintenance difficulty existing in the fuzz test system provided by the related art, an embodiment of the present application provides a fuzz test method based on independent deployment of a monitor, which is applied to a fuzz test system including a fuzz test engine and a monitor. The monitor is independently deployed on the engineering machine to be tested and decoupled from the fuzz test engine. The engineering machine to be tested has computing resources and storage resources that can support efficient monitoring tasks. The monitor communicates efficiently with the fuzz test engine through HTTP services, such as Figure 1 The basic flow chart of the fuzzy testing method based on independent deployment of monitors provided in this embodiment specifically includes the following steps:

[0022] Step 101: The fuzz testing engine injects attack messages into the engineering machine to be tested based on the target test case.

[0023] This embodiment uses a fuzzy test engine to generate abnormal, random or mutated test cases, and sends the test cases to the engineering machine to be tested for fuzzy testing. In practical applications, in order to ensure that potential problems of the engineering machine to be tested can be effectively discovered, it is necessary to apply appropriate test intensity to the engineering machine to be tested. Based on this, this embodiment can determine the corresponding effective test intensity according to the system configuration information of the engineering machine to be tested, and then further determine the corresponding target test case according to the determined effective test intensity.

[0024] In an optional implementation of this embodiment, the fuzz testing method also includes: the fuzz testing engine obtains a monitoring configuration file according to the test strategy, and sends the monitoring configuration file to the monitor through a second HTTP request; the monitor extracts configuration information from the monitoring configuration file and initializes the target monitoring task according to the configuration information.

[0025] Specifically, this embodiment starts a lightweight HTTP service in the monitor software, and the service is used to receive HTTP requests from the fuzz test engine. In addition, this embodiment designs an API interface of the HTTP service, which may include an interface for receiving a monitoring configuration file and an interface for returning an abnormality report, to ensure interface security and efficiency.

[0026] Before the fuzz test officially starts, the fuzz test engine generates a monitoring configuration file, which can contain monitoring parameters (such as monitoring items, thresholds, etc.), monitoring start time, current iteration number and other information. The fuzz test engine sends the monitoring configuration file to the monitor's HTTP server through an HTTP POST request. When the monitor completes the initialization of the monitoring task, it is ready to start real-time monitoring.

[0027] In an optional implementation of the present embodiment, the monitor is an integrated monitor, which extracts configuration information from a monitoring configuration file and initializes a target monitoring task according to the configuration information, including: the monitor extracts first configuration information and second configuration information from the monitoring configuration file; the monitor triggers a corresponding sub-monitor to enter a working state according to the first configuration information, and initializes the target monitoring task according to the second configuration information; wherein the monitoring task is used to indicate the type of operating data of the system to be monitored and the start and end times of monitoring.

[0028] Specifically, considering that the fuzz testing requirements in actual application scenarios are more diversified, the present embodiment provides a monitor integrated with multiple sub-monitors to meet the diversified fuzz testing requirements. Then the configuration file sent by the fuzz testing engine to meet the testing requirements includes two aspects of configuration information. The first configuration information parsed from the monitoring configuration file is used to instruct the monitor to activate the corresponding sub-monitor, and the second configuration information is used to instruct the sub-monitor to initialize the monitoring task.

[0029] It is worth mentioning that the types of sub-monitors integrated in the monitor of this embodiment include but are not limited to TCP monitor, console monitor, and CPU monitor. Among them, the TCP monitor plays a key role in fuzz testing. It can capture, record and analyze TCP communication traffic, data packets, track connection status and monitor performance indicators; the console monitor is used to capture and record the console output, logs and error information of the program. By monitoring the console output, it can capture the exceptions and error information that may be caused by the program when processing the fuzz test input, which is helpful for analyzing the behavior, abnormal situations and potential vulnerabilities of the program; the CPU monitor is used to monitor and analyze the CPU usage of the system during fuzz testing. By monitoring the CPU utilization, it can analyze the impact of fuzz testing on system performance and detect performance bottlenecks.

[0030] In an optional implementation of the present embodiment, the above-mentioned monitor triggers the corresponding sub-monitor to enter a working state according to the first configuration information, including: the monitor determines the corresponding sub-monitor from the monitoring items indicated by the first configuration information; the monitor determines whether the determined sub-monitor has legal monitoring authority according to the monitoring authority scope opened by the engineering machine to be tested; the monitor triggers the sub-monitor with legal monitoring authority to enter a working state.

[0031] Specifically, the monitor triggers the corresponding type of sub-monitor to enter the working state from the monitoring items parsed from the monitoring configuration file. Considering that the engineering machine under test may have security protection requirements in actual applications and thus have certain access rights, only legal types of sub-monitors are allowed to implement monitoring behaviors. Based on this, this embodiment will determine whether the sub-monitor corresponding to the current monitoring item has legal monitoring authority according to the monitoring authority range opened by the engineering machine under test. If the current monitoring item requires multiple sub-monitors, then the authority verification of multiple sub-monitors can be performed separately. Finally, only sub-monitors with legal monitoring authority are allowed to be activated to monitor the engineering machine under test.

[0032] Step 102: The monitor collects system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an abnormality report.

[0033] Specifically, in the process of performing the monitoring task, the monitor collects the system operation data of the engineering machine to be tested in real time, including but not limited to CPU usage, memory usage, network traffic, log files, etc. Next, the preset anomaly detection algorithm is used to perform real-time analysis on the collected system operation data, and an anomaly report is generated based on the analysis results. In actual applications, the specific analysis method can be to compare each data item in the collected system operation data with the corresponding threshold, and determine whether an anomaly occurs by comparing whether the threshold is exceeded, or to match the captured system operation information with the preset abnormal operation information, and determine whether an anomaly occurs by the matching result.

[0034] In practical applications, this embodiment can generate corresponding abnormal events for abnormal system operation data. The abnormal events may include detailed information such as abnormal type, occurrence time, and related data, and then generate an abnormal report by integrating various abnormal events.

[0035] Step 103: The fuzz testing engine sends a first HTTP request to the monitor, and receives an exception report sent by the monitor in response to the first HTTP request.

[0036] After the monitor generates an exception report, the fuzz testing engine can send an HTTP request to the monitor based on the API interface of the HTTP service opened by the monitor. The monitor responds to the HTTP request and feeds the exception report back to the fuzz testing engine. After receiving the exception report from the monitor, the fuzz testing engine can parse the report content and record the exception information.

[0037] Step 104: The fuzz testing engine adaptively adjusts the testing strategy according to the exception report.

[0038] Specifically, the fuzz testing engine of this embodiment can dynamically adjust the test strategy according to the abnormal report obtained from the current test, such as adjusting the input parameters, adjusting the test intensity, etc., and then return to execute the step of injecting attack messages into the engineering machine to be tested based on the target test case in the aforementioned step 101 based on the adjusted test strategy until the iterative test termination condition is met. That is, this embodiment will optimize the test strategy according to the abnormal report, and then discover more potential problems of the engineering machine to be tested through iterative testing to improve the comprehensiveness of the test results. It is worth mentioning that the scheme of this embodiment is suitable for fuzz testing of various complex software systems, and provides strong support for improving software quality and security.

[0039] In an optional implementation of the present embodiment, the above-mentioned fuzz testing engine adaptively adjusts the test strategy according to the exception report, including: the fuzz testing engine adaptively adjusts the target test case according to the exception report; and / or, the fuzz testing engine adaptively adjusts the monitoring configuration file according to the exception report.

[0040] Furthermore, the above-mentioned fuzzy testing engine adaptively adjusts the target test case according to the exception report, including: the fuzzy testing engine identifies the target field in the attack message according to the exception report, and mutates the associated field in the target test case based on the target field; wherein, the target field is the field in the attack message that causes the system abnormality of the engineering machine under test.

[0041] Specifically, after receiving the exception report, the fuzzy testing engine of this embodiment determines which fields in the exception message cause the exception in the engineering machine under test. Then, these fields are used as the main fields to adaptively mutate the relevant fields in the test cases used previously to generate new attack messages, thereby carrying out targeted attacks on potential problems of the engineering machine under test, so as to more effectively discover as many system problems as possible.

[0042] like Figure 2 The figure is a flow chart of a test case acquisition method provided by this embodiment, which specifically includes the following steps:

[0043] Step 201: The fuzzy test engine obtains test scenario information and queries a preset test case library according to the test scenario information;

[0044] Step 202: If the fuzzy test engine fails to find the target test case corresponding to the test scenario information in the test case library, the fuzzy test engine determines the corresponding test specification based on the test scenario information;

[0045] Step 203, the fuzzy test engine obtains corresponding test case samples from the test case library with reference to the legal test type indicated by the test specification, and then extracts corresponding fields from the test case samples based on the valid field structure information indicated by the test specification and integrates them into target test cases.

[0046] In practical applications, a test case library including multiple test cases is pre-configured to cope with diverse test scenarios. The fuzzy test engine can query the test case library based on the actual test scenario. Generally speaking, in conventional test scenarios, the corresponding target test cases can be directly queried, while the test cases that the test case library can provide are always limited, and it is difficult to guarantee that the corresponding target test cases can be directly queried in complex test scenarios. In this case, in order to ensure the effective implementation of fuzzy testing, this embodiment provides an implementation method for automatically generating test cases, that is, obtaining the corresponding test specification based on the test scenario information, which is used to indicate the relevant principles that the test needs to follow, and then obtaining the associated test cases from the existing test cases in the test case library as samples according to the legal test type in the current test scenario indicated by the test specification, and then extracting the corresponding fields from one or more test case samples according to the valid field structure information indicated by the test specification, and finally integrating the extracted fields to obtain the target test case. Based on this, this embodiment can flexibly and automatically generate available test cases when there are no ready-made test cases suitable for the current test scenario in the test case library, thereby ensuring the smooth completion of the test work.

[0047] In an optional implementation of this embodiment, the fuzzy testing method also includes: the fuzzy testing engine determines the system exception type and / or system exception level of the engineering machine under test based on the exception report, and outputs corresponding exception handling indication information based on the system exception type and / or system exception level.

[0048] Specifically, the fuzzy test engine of this embodiment can also obtain the current abnormality type and abnormality level of the engineering machine under test according to the abnormality report, and provide abnormality handling instructions to the tester accordingly, so as to instruct him to take corresponding abnormality handling measures as soon as possible.

[0049] In order to better illustrate the solution of the present application, an embodiment of the present application further provides a refined fuzzy testing method based on independent deployment of monitors. Figure 3 A detailed flow chart of a fuzzy testing method based on independent deployment of monitors provided in an embodiment of the present application specifically includes the following process:

[0050] Step 301: The fuzz testing engine obtains a monitoring configuration file according to the testing strategy, and sends the monitoring configuration file to the monitor via an HTTP request;

[0051] Step 302: The monitor triggers the corresponding sub-monitor to enter a working state according to the first configuration information in the monitoring configuration file, and initializes the target monitoring task according to the second configuration information in the monitoring configuration file;

[0052] Step 303: The fuzzy test engine injects attack messages into the engineering machine to be tested based on the target test case;

[0053] Step 304: The monitor collects system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an abnormality report;

[0054] Step 305: The fuzz testing engine sends an HTTP request to the monitor, and receives an exception report sent by the monitor in response to the HTTP request;

[0055] Step 306: The fuzzy test engine identifies the target field in the attack message according to the abnormal report, and mutates and adjusts the associated field in the target test case based on the target field; then returns to step 303 to perform iterative testing until the iterative test termination condition is met;

[0056] Step 307: The fuzzy test engine determines the system abnormality type and system abnormality level of the engineering machine to be tested according to the abnormality report, and outputs corresponding abnormality handling instruction information according to the system abnormality type and system abnormality level.

[0057] It should be understood that the size of the serial number of each step in this embodiment does not mean the order of execution of the steps. The execution order of each step should be determined by its function and internal logic, and should not constitute a sole limitation on the implementation process of the embodiment of this application.

[0058] In addition, an embodiment of the present application also provides a fuzzy testing system, which includes a fuzzy testing engine and a monitor, and the monitor is independently deployed on the engineering machine to be tested. Among them, the fuzzy testing engine is used to inject attack messages into the engineering machine to be tested based on the target test case; the monitor is used to collect system operation data of the engineering machine to be tested according to the target monitoring task, analyze the system operation data and generate an exception report; the fuzzy testing engine is also used to send a first HTTP request to the monitor, and receive the exception report sent by the monitor in response to the first HTTP request; the fuzzy testing engine is also used to adaptively adjust the test strategy according to the exception report, and continue to execute the above-mentioned function of injecting attack messages into the engineering machine to be tested based on the target test case based on the adjusted test strategy.

[0059] It should be noted that the fuzzy testing methods based on independent deployment of monitors in the aforementioned method embodiments can all be implemented based on the fuzzy testing system provided in this embodiment. Ordinary technical personnel in the relevant field can clearly understand that for the convenience and conciseness of description, the specific working process of the fuzzy testing system described in this embodiment can be implemented by referring to the corresponding working process in the aforementioned method embodiments, and will not be repeated here.

[0060] Based on the technical solution of the above-mentioned embodiment of the present application, the monitor of the fuzzy test system is deployed on the engineering machine to be tested independently of the fuzzy test engine, and the fuzzy test engine injects attack messages into the engineering machine to be tested based on the target test case; the monitor collects the system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an exception report; the fuzzy test engine sends an HTTP request to the monitor, and receives the exception report sent by the monitor in response to the HTTP request; the fuzzy test engine adaptively adjusts the test strategy according to the exception report, and iterates the test based on the adjusted test strategy. Through the implementation of the solution of the present application, the monitor is decoupled from the fuzzy test engine, which can avoid resource competition with the fuzzy test engine, improve monitoring efficiency, facilitate independent upgrades and adjustments to adapt to different testing needs, and simplify the system architecture and reduce maintenance difficulty.

[0061] Figure 4 A fuzz testing system is provided for one embodiment of the present application. The fuzz testing system can be used to implement the fuzz testing method based on independent deployment of monitors in the aforementioned embodiment, and mainly includes: a memory 401 and a processor 402. The memory 401 stores a computer program 403 that can be run on the processor 402. The memory 401 and the processor 402 are in communication connection. When the processor 402 executes the computer program 403, the fuzz testing method based on independent deployment of monitors in the aforementioned embodiment is implemented. The number of processors 402 can be one or more.

[0062] The memory 401 may be a high-speed random access memory (RAM) memory, or a non-volatile memory, such as a disk memory. The memory 401 is used to store executable program codes, and the processor 402 is coupled to the memory 401 .

[0063] Furthermore, the embodiment of the present application also provides a computer-readable storage medium, which may be provided in the fuzzy test system in the above embodiments. The computer-readable storage medium may be the above Figure 4 Memory in the illustrated embodiment.

[0064] The computer readable storage medium stores a computer program, and when the computer program is executed by the processor, the fuzzy testing method based on independent deployment of monitors in the aforementioned embodiment is implemented. Furthermore, the computer storable medium can also be a U disk, a mobile hard disk, a read-only memory (ROM), a RAM, a magnetic disk or an optical disk, and other media that can store program codes.

[0065] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of modules is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules, which can be electrical, mechanical or other forms.

[0066] The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0067] In addition, each functional module in each embodiment of the present application can be integrated into a processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above integrated modules can be implemented in the form of hardware or software functional modules.

[0068] If the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a readable storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the various embodiments of the present application. The aforementioned readable storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard drives, ROM, RAM, magnetic disks, or optical disks.

[0069] It should be noted that, for the above-mentioned method embodiments, for the sake of simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described action sequence, because according to the present application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0070] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0071] The above is a description of a fuzzy testing method, system and storage medium based on independent deployment of monitors provided in this application. For technical personnel in this field, according to the ideas of the embodiments of this application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on this application.

Claims

1. A fuzz testing method based on independent deployment of monitors, characterized in that: Applied to a fuzzy testing system including a fuzzy testing engine and a monitor, wherein the monitor is independently deployed on an engineering machine to be tested, the fuzzy testing method includes: The fuzz testing engine injects attack messages into the engineering machine to be tested based on the target test case; The monitor collects the system operation data of the engineering machine to be tested according to the target monitoring task, analyzes the system operation data and generates an abnormality report; The fuzz testing engine sends a first HTTP request to the monitor, and receives the exception report sent by the monitor in response to the first HTTP request; The fuzz testing engine adaptively adjusts the testing strategy according to the abnormal report, and returns to execute the step of injecting attack messages into the engineering machine to be tested based on the target test case based on the adjusted testing strategy.

2. The fuzzy testing method according to claim 1, characterized in that: Also includes: The fuzz testing engine obtains a monitoring configuration file according to the testing strategy, and sends the monitoring configuration file to the monitor through a second HTTP request; The monitor extracts configuration information from the monitoring configuration file and initializes the target monitoring task according to the configuration information.

3. The fuzzy testing method according to claim 2, characterized in that: The monitor is an integrated monitor, and the monitor extracts configuration information from the monitoring configuration file and initializes the target monitoring task according to the configuration information, including: The monitor extracts first configuration information and second configuration information from the monitoring configuration file; The monitor triggers the corresponding sub-monitor to enter the working state according to the first configuration information, and initializes the target monitoring task according to the second configuration information; wherein the monitoring task is used to indicate the type of operating data of the system to be monitored and the start and end times of monitoring.

4. The fuzzy testing method according to claim 3, characterized in that: The monitor triggers the corresponding sub-monitor to enter a working state according to the first configuration information, including: The monitor determines a corresponding sub-monitor from the monitoring items indicated by the first configuration information; The monitor determines whether the determined sub-monitor has legal monitoring authority according to the monitoring authority range opened by the engineering machine to be tested; The monitor triggers the sub-monitor with the legal monitoring authority to enter a working state.

5. The fuzzy testing method according to claim 1, characterized in that: The fuzz testing engine adaptively adjusts the testing strategy according to the abnormal report, including: The fuzz testing engine adaptively adjusts the target test case according to the exception report; And / or, the fuzz testing engine adaptively adjusts the monitoring configuration file according to the exception report.

6. The fuzzy testing method according to claim 5, characterized in that: The fuzz testing engine adaptively adjusts the target test case according to the exception report, including: The fuzz testing engine identifies the target field in the attack message according to the exception report, and mutates and adjusts the associated fields in the target test case based on the target field; wherein the target field is the field in the attack message that causes the system exception of the engineering machine under test.

7. The fuzzy testing method according to any one of claims 1 to 6, characterized in that: Also includes: The fuzzy test engine obtains test scenario information and queries a preset test case library according to the test scenario information; If the fuzzy testing engine fails to find the target test case corresponding to the test scenario information in the test case library, determining a corresponding test specification based on the test scenario information; The fuzz testing engine obtains corresponding test case samples from the test case library with reference to the legal test type indicated by the test specification, and then extracts corresponding fields from the test case samples based on the valid field structure information indicated by the test specification and integrates them into the target test case.

8. The fuzzy testing method according to any one of claims 1 to 6, characterized in that: Also includes: The fuzzy test engine determines the system abnormality type and / or system abnormality level of the engineering machine to be tested according to the abnormality report, and outputs corresponding abnormality handling instruction information according to the system abnormality type and / or system abnormality level.

9. A fuzzy testing system, characterized in that: The device comprises a memory and a processor, wherein: The processor is used to execute the computer program stored in the memory; When the processor executes the computer program, the steps of the fuzz testing method based on independent deployment of monitors as described in any one of claims 1 to 8 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the fuzz testing method based on independent deployment of monitors as described in any one of claims 1 to 8 are implemented.