Automated penetration testing system and method for measurement, operation and control platform

Through the automated penetration testing system, the repetitive testing problem caused by the multiple data interfaces of the satellite measurement and operation control platform is solved, and the continuous testing of various vulnerabilities and defense mechanisms of the measurement and operation control platform is realized, improving security and coverage.

CN115314318BActive Publication Date: 2025-01-03EMPOSAT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210996085.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-19
Publication Date
2025-01-03
Estimated Expiration
2042-08-19

AI Technical Summary

Technical Problem

The large number of data interfaces of satellite measurement and operation control platforms leads to a large amount of repeated work required for manual repetitive penetration tests, which increases labor costs and testing time, and reduces test coverage and security.

Method used

Design an automated penetration testing system, including hardware support layer, data operation environment support layer, task support layer and application software layer, which can load multiple test tasks in parallel, and schedule vulnerability testing and attack testing based on business data and attack target feature information. Tasks, generate attack policies, test task management through Clouds message middleware and SCM service monitoring and management components, use DCCP parallel processing components to match vulnerabilities and generate attack policies, and arrange the test process through FACTORY.

Benefits of technology

It reduces labor costs, reduces repeated operations, improves the coverage of tests and the security of the test and operation control platform, and realizes continuous testing of various vulnerabilities and defense mechanisms of the test and operation control platform through an automated penetration testing system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115314318B_ABST
    Figure CN115314318B_ABST
Patent Text Reader

Abstract

The present disclosure provides an automated penetration testing system and method for a test, operation and control platform. The system includes: a hardware support layer, a data operating environment support layer, a task support layer and an application software layer; the hardware support layer is used to provide hardware support; the data operating environment support layer is used to store business data; the task support layer is used to schedule test tasks according to the input feature information of the attack target and the business data; the application software layer is used to test the test, operation and control platform according to the scheduling results of the test tasks and obtain test results. According to the present disclosure, multiple test tasks can be loaded in parallel, and the attack strategy can be continuously adjusted to test various vulnerabilities and defense mechanisms and reduce labor costs, reduce repeated operations, improve test coverage, and improve the security of the test, operation and control platform.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to an automated penetration testing system and method for a measurement, operation and control platform. Background Art

[0002] The satellite's measurement, operation and control data volume and data interfaces are very large. If humans conduct repeated penetration tests on each data interface, it will require a lot of repetitive work.

[0003] The information disclosed in the background technology section of this application is only intended to deepen the understanding of the general background technology of this application, and should not be regarded as an admission or any form of suggestion that the information constitutes the prior art already known to those skilled in the art. Summary of the invention

[0004] The disclosed embodiments provide an automated penetration testing system and method for a test and control platform. It is capable of loading multiple test tasks in parallel and continuously adjusting attack strategies to test various vulnerabilities and defense mechanisms. It also reduces labor costs, reduces repeated operations, improves test coverage, and improves the security of the test and control platform.

[0005] In a first aspect of the disclosed embodiment, there is provided an automated penetration testing system for a measurement, operation and control platform, comprising: a hardware support layer, a data operation environment support layer, a task support layer and an application software layer;

[0006] Wherein, the hardware support layer is used to provide hardware support;

[0007] The data operation environment support layer is used to store business data;

[0008] The task support layer is used to schedule test tasks according to the input feature information of the attack target and the business data, and the test tasks include vulnerability test tasks and attack test tasks;

[0009] The application software layer is used to test the test and operation control platform according to the scheduling results of the test tasks to obtain the test results.

[0010] According to an embodiment of the present disclosure, the business data includes measurement, operation and control platform data, vulnerability data, and measurement, operation and control platform rule data.

[0011] According to an embodiment of the present disclosure, the task support layer is further used to:

[0012] Determine the attack target set based on the data from the measurement, operation and control platform;

[0013] Receiving characteristic information of attack targets corresponding to the attack target set;

[0014] Matching the vulnerability data with the characteristic information to determine the target vulnerability;

[0015] Generate vulnerability testing tasks for target vulnerabilities.

[0016] According to an embodiment of the present disclosure, the test result of the vulnerability test task includes whether a vulnerability exists and the type and location of the vulnerability;

[0017] The application software layer is further used for:

[0018] According to the vulnerability testing task for the target vulnerability, the target vulnerability is supplemented with reflective XSS injection, storage class XSS injection and DOM type XSS injection to determine whether there is an XSS injection vulnerability in the measurement and control platform and, if there is an XSS injection vulnerability, determine the type and location of the XSS injection vulnerability.

[0019] According to an embodiment of the present disclosure, the task support layer is further used to:

[0020] Determine the attack strategy based on the test results of the vulnerability test task and the rule data of the test and operation control platform;

[0021] According to the attack strategy, an attack test task is generated for the test result of the vulnerability test task.

[0022] According to an embodiment of the present disclosure, the test result of the vulnerability test task includes whether a vulnerability exists and the type and location of the vulnerability;

[0023] The application software layer is further used for:

[0024] According to the attack test task, an attack is performed on the location of the vulnerability to obtain a test result of the attack test task.

[0025] According to the embodiments of the present disclosure, the task support layer schedules test tasks through the Clouds message middleware, manages test tasks through the SCM service monitoring and management component, matches vulnerabilities and generates attack strategies through the DCCP parallel processing component, and arranges test processes through FACTORY.

[0026] According to an embodiment of the present disclosure, the data operating environment support layer includes a MySQL relational database, a CNNVD or CVE vulnerability database, and a CFS file library.

[0027] According to an embodiment of the present disclosure, the application software layer includes an STK display tool for displaying the test results of the measurement, operation and control platform;

[0028] And a B / S application software tool for executing the test task.

[0029] A second aspect of the embodiments of the present disclosure provides an automated penetration testing method for a measurement, operation and control platform, including:

[0030] Determine the attack target set based on the data from the measurement, operation and control platform;

[0031] Receiving characteristic information of attack targets corresponding to the attack target set;

[0032] Matching the vulnerability data with the characteristic information to determine the target vulnerability;

[0033] Generate vulnerability testing tasks for target vulnerabilities;

[0034] Determine a test result of a vulnerability test task for a target vulnerability, wherein the test result of the vulnerability test task includes whether a vulnerability exists and the type and location of the vulnerability;

[0035] Determine the attack strategy based on the test results of the vulnerability test task and the rule data of the test and operation control platform;

[0036] Generate an attack test task for the test result of the vulnerability test task according to the attack strategy;

[0037] Determine the test results of the attack test task.

[0038] According to a third aspect of the embodiments of the present disclosure, there is provided an automated penetration testing device for a measurement, operation and control platform, including: an attack target set module, for determining an attack target set according to measurement, operation and control platform data;

[0039] A feature information module, used to receive feature information of attack targets corresponding to the attack target set;

[0040] A target vulnerability module is used to match the vulnerability data with the characteristic information to determine the target vulnerability;

[0041] Vulnerability testing task module, used to generate vulnerability testing tasks for target vulnerabilities;

[0042] A vulnerability test result module is used to determine the test result of the vulnerability test task for the target vulnerability, wherein the test result of the vulnerability test task includes whether there is a vulnerability and the type and location of the vulnerability;

[0043] The attack strategy module is used to determine the attack strategy based on the test results of the vulnerability test task and the rule data of the test and operation control platform;

[0044] An attack test task module, used to generate an attack test task for the test result of the vulnerability test task according to the attack strategy;

[0045] The attack test result module is used to determine the test result of the attack test task.

[0046] According to a fourth aspect of an embodiment of the present disclosure, a device is provided, comprising: a processor; and a memory for storing instructions executable by the processor; wherein the processor is configured to call the instructions stored in the memory to execute the above method.

[0047] According to a fifth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which computer program instructions are stored, and the computer program instructions implement the above method when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] Figure 1 The following is a schematic diagram of an automated penetration testing system of a test, operation and control platform according to an embodiment of the present disclosure;

[0049] Figure 2 A flowchart of an automated penetration testing method for a test and control platform according to an embodiment of the present disclosure is exemplarily shown;

[0050] Figure 3 A block diagram of an automated penetration testing device of a test and control platform according to an embodiment of the present disclosure is exemplarily shown;

[0051] Figure 4 It is a block diagram of an automated penetration testing device for a measurement, operation and control platform according to an exemplary embodiment. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present disclosure.

[0053] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in sequences other than those illustrated or described herein.

[0054] It should be understood that in the various embodiments of the present disclosure, the size of the sequence number of each process does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present disclosure.

[0055] It should be understood that in the present disclosure, "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or apparatus comprising a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products or apparatuses.

[0056] It should be understood that in the present disclosure, "plurality" refers to two or more than two. "And / or" is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. "Contains A, B and C", "Contains A, B, C" means that A, B, and C are all included, "Contains A, B or C" means that one of A, B, and C is included, and "Contains A, B and / or C" means that any one, any two, or any three of A, B, and C are included.

[0057] It should be understood that in the present disclosure, "B corresponding to A", "B corresponding to A", "A corresponds to B" or "B corresponds to A" means that B is associated with A and B can be determined based on A. Determining B based on A does not mean determining B based only on A, but B can also be determined based on A and / or other information. A and B match when the similarity between A and B is greater than or equal to a preset threshold.

[0058] Depending on the context, "if" as used herein may be interpreted as "when" or "when" or "in response to determining" or "in response to detecting."

[0059] The technical solution of the present disclosure is described in detail with specific embodiments below. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0060] Figure 1 The schematic diagram of the automated penetration testing system of the test and control platform of the embodiment of the present disclosure is shown as an example. Figure 1 As shown, the system includes: a hardware support layer, a data operating environment support layer, a task support layer and an application software layer;

[0061] Wherein, the hardware support layer is used to provide hardware support;

[0062] The data operation environment support layer is used to store business data;

[0063] The task support layer is used to schedule test tasks according to the input feature information of the attack target and the business data, and the test tasks include vulnerability test tasks and attack test tasks;

[0064] The application software layer is used to test the test and operation control platform according to the scheduling results of the test tasks to obtain the test results.

[0065] According to the embodiments of the present disclosure, the satellite's measurement, operation and control platform is a web-based architecture. The measurement, operation and control platform has many interfaces for receiving satellite data and a large amount of information. Therefore, it can be integrated with the measurement, operation and control platform in the background through an automated penetration testing system.

[0066] According to the embodiments of the present disclosure, Figure 1 As shown, the automated penetration testing system of the measurement and control platform includes: a hardware support layer IaaS (Infrastructure as a Service), a data operation environment support layer DaaS (Data as a Service), a task support layer PaaS (Platform as a Service) and an application software layer SaaS (Software as a Service).

[0067] According to the embodiments of the present disclosure, the hardware support layer IaaS provides hardware manufacturing and security protection for the automated penetration test system of the test and control platform, for example, including servers, network equipment, storage equipment, and security equipment, etc. For example, the security equipment can provide security protection for the system, such as boundary access control, operation authentication, alarm management, authority management, etc. The present disclosure does not limit the functions of the hardware support layer.

[0068] According to an embodiment of the present disclosure, the data operating environment support layer DaaS includes a MySQL relational database, a CNNVD or CVE vulnerability database, and a CFS file library. A variety of business data can be stored during the test process, and the business data includes measurement and operation control platform data, vulnerability data, measurement and operation control platform rule data, etc. In addition, the data operating environment support layer DaaS can also store image data, vector data, and three-dimensional data that support the basic environment, and manage these data in a unified manner. The above-mentioned file library and database can provide data storage and management support for structured data and unstructured data.

[0069] According to the embodiment of the present disclosure, the data operation environment support layer DaaS schedules the test tasks through the Clouds message middleware, manages the test tasks through the SCM service monitoring and management component, matches vulnerabilities and generates attack strategies through the DCCP parallel processing component, and arranges the test process through FACTORY. The data operation environment support layer can schedule tasks based on the microservice framework and the same message scheduling bus through the components in the figure. Combined with the memory cache and the disk cache, a unified Web access cache is provided. Depending on the service type, Tomcat or Nginx is used for unified publishing, that is, the task is published to the application software layer SaaS, which is executed by the application software layer SaaS. Further, the data operation environment support layer DaaS provides TCP, HTTP / HTTPS, UDP, FTP and multiple communication protocol support, and the data type of the data in the communication can support json, pbf and other formats. In addition, a unified API gateway is used for verification during the communication process, for example, verification is performed based on the native microservice directory and the verification token token, and the log of the communication data is collected to obtain the communication status.

[0070] According to an embodiment of the present disclosure, the application software layer includes an STK display tool for displaying the test results of the test and operation control platform; and a B / S application software tool for executing the test task.

[0071] According to the embodiments of the present disclosure, the B / S application software tool mainly uses HTML5+Java language to realize business management, business scheduling, system monitoring and control and other functions during the execution of test tasks. It can realize automatic scheduling of port scanning tools, service scanning, host scanning, injection vulnerability attacks, brute force cracking and other scripts.

[0072] According to an embodiment of the present disclosure, the STK display tool can display the space situation of the satellite, thereby showing the test results of the satellite's measurement, operation and control platform.

[0073] According to the embodiments of the present disclosure, after the deployment of the above system is completed, the satellite's measurement, operation and control platform can be tested through the above system. Among them, the task support layer can be used to schedule the test task according to the input feature information of the attack target and the business data. For example, scheduling a vulnerability test task or an attack test task.

[0074] According to an embodiment of the present disclosure, the task support layer is further used to: determine an attack target set based on the measurement, operation and control platform data; receive feature information of attack targets corresponding to the attack target set; match vulnerability data and the feature information to determine target vulnerabilities; and generate vulnerability testing tasks for target vulnerabilities.

[0075] According to an embodiment of the present disclosure, the measurement, operation and control platform data stored in the data operation environment support layer may include a set of attack targets. For example, the set of attack targets obtained by analyzing the measurement, operation and control platform data by the automated penetration test system of the measurement, operation and control platform may include multiple attack targets, for example, multiple software / hardware systems or multiple functions of the measurement, operation and control platform, and the measurement, operation and control platform of the satellite may be infiltrated by attacking the attack targets, thereby achieving the attack purpose. Therefore, in the process of anti-penetration testing, attacks on multiple attack targets may be simulated, thereby analyzing the attack results, and further providing a basis for research work on resisting attacks.

[0076] According to an embodiment of the present disclosure, the system may receive characteristic information of an attack target corresponding to an attack target set input by a user, and the characteristic information may be information describing the attack target, for example, description information describing a certain software, interface information describing hardware, etc., and the present disclosure does not impose any restrictions on this.

[0077] According to an embodiment of the present disclosure, the task support layer can use the vulnerability data stored in the data operation environment support layer to match the characteristic information of the attack target to obtain the target vulnerability. The vulnerability data can be a vulnerability with a high attack success rate obtained by the system analyzing the measurement and operation control platform data. For example, it is possible to search for vulnerabilities in the measurement and operation control platform data that are easy to attack using known attack methods. For example, the measurement and operation control platform often uses a restful format interface, which is prone to XSS injection vulnerabilities. If the characteristic information is information describing an XSS injection vulnerability, the XSS injection vulnerability can be determined as the target vulnerability.

[0078] According to an embodiment of the present disclosure, after determining the target vulnerability, the task support layer may generate a vulnerability test task for the target vulnerability, and schedule the application software layer to execute the vulnerability test task for the target vulnerability.

[0079] According to an embodiment of the present disclosure, the test results of the vulnerability testing task include whether a vulnerability exists and the type and location of the vulnerability; the application software layer is further used to: according to the vulnerability testing task for the target vulnerability, perform supplementary reflective XSS injection, storage class XSS injection and DOM type XSS injection on the target vulnerability, determine whether the measurement and control platform has an XSS injection vulnerability, and if an XSS injection vulnerability exists, determine the type and location of the XSS injection vulnerability.

[0080] According to an embodiment of the present disclosure, the application software layer can perform XSS injection for the target vulnerability, for example, injecting a certain test code. The types of injection methods may include supplementary reflection type XSS injection, storage type XSS injection and DOM type XSS injection, so as to test the vulnerability. In the example, the data transmitted by the measurement and control platform is mostly satellite telemetry and remote control data, which is generally hexadecimal encoded. JS encoding can be used for the above injection to obtain the test results.

[0081] According to the embodiments of the present disclosure, based on the injection test, it is possible to determine whether there is an XSS injection vulnerability in the test and control platform, and in the case of an XSS injection vulnerability, determine the type and location of the XSS injection vulnerability. For example, if the injection is successful through one of the three injection methods mentioned above, the injection location (e.g., link address, storage location, code location, etc.) and the type of XSS injection vulnerability (e.g., by what method the injection can be successful) can be determined.

[0082] According to the embodiment of the present disclosure, the test result of the vulnerability test task is determined above, that is, whether there is a vulnerability and the type and location of the vulnerability. If there is a vulnerability, the attack test task can be continued. The task support layer is further used to: determine the attack strategy based on the test result of the vulnerability test task and the measurement and control platform rule data; and generate an attack test task for the test result of the vulnerability test task based on the attack strategy.

[0083] According to an embodiment of the present disclosure, an attack strategy can be matched according to the test results of a vulnerability test task, for example, the type and location of the vulnerability. For example, a storage-class XSS injection method is used to attack the URL (uniform resource locator) location where the vulnerability exists, for example, an attack strategy of injecting test code at the location in the same way. Further, an attack test task can be generated based on the attack strategy, and the application software layer can be scheduled for execution.

[0084] According to an embodiment of the present disclosure, the test result of the vulnerability test task includes whether a vulnerability exists and the type and location of the vulnerability; the application software layer is further used to: attack the location of the vulnerability according to the attack test task to obtain the test result of the attack test task.

[0085] According to an embodiment of the present disclosure, the application software layer can execute the attack test task, that is, use the above-mentioned attack strategy to attack the vulnerability location, for example, inject test code, and determine the test result of the attack test task. For example, it can display whether the injection is successful, or after injecting the test code, it can display whether the satellite's space situation is affected by the test code, etc., so as to determine whether the injection is successful. The test results can also be provided to R&D personnel for vulnerability analysis to improve the defense mechanism against the vulnerability, reduce the probability of successful attack, and improve the security of the measurement, operation and control platform.

[0086] According to the embodiments of the present disclosure, the automated penetration testing system of the test and operation control platform can be used to test various vulnerabilities of the test and operation control platform, and multiple test tasks can be loaded in parallel, and the attack strategy can be continuously adjusted to test various vulnerabilities and defense mechanisms. In addition, the labor cost is reduced, the repeated operations are reduced, the coverage of the test is improved, and the security of the test and operation control platform is improved.

[0087] Figure 2 The flowchart of the automated penetration testing method of the test and control platform of the embodiment of the present disclosure is exemplarily shown as follows: Figure 2 As shown, the method includes:

[0088] Step S1, determining the attack target set according to the measurement, operation and control platform data;

[0089] Step S2, receiving feature information of attack targets corresponding to the attack target set;

[0090] Step S3, matching the vulnerability data with the characteristic information to determine the target vulnerability;

[0091] Step S4, generating a vulnerability testing task for the target vulnerability;

[0092] Step S5, determining the test result of the vulnerability test task for the target vulnerability, wherein the test result of the vulnerability test task includes whether there is a vulnerability and the type and location of the vulnerability;

[0093] Step S6, determining the attack strategy according to the test results of the vulnerability test task and the test and operation control platform rule data;

[0094] Step S7, generating an attack test task for the test result of the vulnerability test task according to the attack strategy;

[0095] Step S8, determining the test result of the attack test task.

[0096] According to an embodiment of the present disclosure, step S1 can be executed by the task support layer to determine the attack target set according to the measurement and control platform data; step S2, receive the characteristic information of the attack target corresponding to the attack target set; step S3, match the vulnerability data and the characteristic information to determine the target vulnerability; and step S4, generate a vulnerability test task for the target vulnerability. After the vulnerability test task for the target vulnerability is generated, the application software layer can be scheduled to execute the vulnerability test task generated for the target vulnerability.

[0097] According to an embodiment of the present disclosure, step S5 can be executed by the application software layer to determine the test result of the vulnerability test task for the target vulnerability. Specifically, according to the vulnerability test task for the target vulnerability, the target vulnerability can be supplemented with reflection-type XSS injection, storage-type XSS injection and DOM-type XSS injection to determine whether the measurement and control platform has an XSS injection vulnerability and, if an XSS injection vulnerability exists, determine the type and location of the XSS injection vulnerability.

[0098] According to the embodiment of the present disclosure, after determining the test result of the vulnerability test task, the task support layer can perform step S6 to determine the attack strategy according to the test result of the vulnerability test task and the test and control platform rule data; and step S7 to generate an attack test task for the test result of the vulnerability test task according to the attack strategy. After generating the attack test task, the application software layer is scheduled to execute the attack test task.

[0099] According to an embodiment of the present disclosure, step S8 can be performed by the application software layer to determine the test result of the attack test task. Specifically, the above determined attack strategy can be used to attack the location of the vulnerability to obtain the test result of the attack test task.

[0100] Figure 3 The block diagram of the automated penetration testing device of the test and control platform of the embodiment of the present disclosure is shown as an example. Figure 3 As shown, the device comprises:

[0101] The attack target set module 11 is used to determine the attack target set according to the measurement, operation and control platform data;

[0102] A feature information module 12, configured to receive feature information of attack targets corresponding to the attack target set;

[0103] A target vulnerability module 13 is used to match the vulnerability data with the characteristic information to determine the target vulnerability;

[0104] A vulnerability testing task module 14 is used to generate a vulnerability testing task for a target vulnerability;

[0105] A vulnerability test result module 15 is used to determine the test result of the vulnerability test task for the target vulnerability, wherein the test result of the vulnerability test task includes whether there is a vulnerability and the type and location of the vulnerability;

[0106] The attack strategy module 16 is used to determine the attack strategy according to the test results of the vulnerability test task and the test and operation control platform rule data;

[0107] An attack test task module 17, used to generate an attack test task for the test result of the vulnerability test task according to the attack strategy;

[0108] The attack test result module 18 is used to determine the test result of the attack test task.

[0109] Figure 4 It is a block diagram of an automated penetration testing device of a measurement, operation and control platform according to an exemplary embodiment; as shown in the figure, the device includes one or more of the following components: a processing component 1502, a memory 1504, a power supply component 1506, a multimedia component 1508, an audio component 1510, an input / output (I / O) interface 1512, a sensor component 1514, and a communication component 1516.

[0110] The processing component 1502 generally controls the overall operation of the device 1500, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 1502 may include one or more processors 1520 to execute instructions to perform all or part of the steps of the above-described method. In addition, the processing component 1502 may include one or more modules to facilitate interaction between the processing component 1502 and other components. For example, the processing component 1502 may include a multimedia module to facilitate interaction between the multimedia component 1508 and the processing component 1502.

[0111] The memory 1504 is configured to store various types of data to support operations on the device 1500. Examples of such data include instructions for any application or method operating on the device 1500, contact data, phone book data, messages, pictures, videos, etc. The memory 1504 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0112] The power supply component 1506 provides power to the various components of the device 1500. The power supply component 1506 can include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 1500.

[0113] The multimedia component 1508 includes a screen that provides an output interface between the device 1500 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 1508 includes a front camera and / or a rear camera. When the device 1500 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0114] The audio component 1510 is configured to output and / or input audio signals. For example, the audio component 1510 includes a microphone (MIC), and when the device 1500 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 1504 or sent via the communication component 1516. In some embodiments, the audio component 1510 also includes a speaker for outputting audio signals.

[0115] I / O interface 1512 provides an interface between processing component 1502 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: home button, volume button, start button, and lock button.

[0116] The sensor assembly 1514 includes one or more sensors for providing various aspects of status assessment for the device 1500. For example, the sensor assembly 1514 can detect the open / closed state of the device 1500, the relative positioning of components, such as the display and keypad of the device 1500, the sensor assembly 1514 can also detect the position change of the device 1500 or a component of the device 1500, the presence or absence of user contact with the device 1500, the orientation or acceleration / deceleration of the device 1500, and the temperature change of the device 1500. The sensor assembly 1514 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 1514 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 1514 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0117] Communication component 1516 is configured to facilitate wired or wireless communication between device 1500 and other devices. Device 1500 can access a wireless network based on a communication standard, such as WiFi, 2G, 3G, 4G, 5G or a combination thereof, or an intercom network. In an exemplary embodiment, communication component 1516 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, communication component 1516 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0118] In an exemplary embodiment, device 1500 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.

[0119] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 1504 including instructions, which can be executed by a processor 1520 of the device 1500 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0120] The present invention may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present invention.

[0121] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. More specific examples (a non-exhaustive list) of computer-readable storage media include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the above. The computer-readable storage medium used herein is not to be interpreted as a transient signal itself, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0122] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0123] The computer program instructions for performing the operation of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer, partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect through the Internet). In some embodiments, by using the state information of the computer-readable program instructions to personalize an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit may execute the computer-readable program instructions, thereby implementing various aspects of the present invention.

[0124] Various aspects of the present invention are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to embodiments of the present invention. It should be understood that each box of the flowchart and / or block diagram and the combination of the boxes in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0125] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0126] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0127] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.

[0128] Note that, unless otherwise directly stated, all features disclosed in this specification (including any attached claims, abstracts and drawings) may be replaced by alternative features for achieving the same, equivalent or similar purposes. Therefore, unless otherwise explicitly stated, each feature disclosed is only an example of a group of equivalent or similar features. Where used, further, preferably, further and more preferably are simple beginnings for elaborating another embodiment based on the aforementioned embodiment, and the content of the further, preferably, further or more preferably followed by the combination with the aforementioned embodiment constitutes a complete construction of another embodiment. Several further, preferably, further or more preferably settings following the same embodiment can be arbitrarily combined to form another embodiment.

[0129] It should be understood by those skilled in the art that the embodiments of the present invention described above and shown in the accompanying drawings are only examples and do not limit the present invention. The purpose of the present invention has been fully and effectively achieved. The functional and structural principles of the present invention have been demonstrated and explained in the embodiments, and the embodiments of the present invention may be deformed or modified in any way without departing from the principles.

[0130] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present disclosure, rather than to limit them. Although the present disclosure has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein by equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present disclosure.

Claims

1. An automated penetration testing system for a measurement and control platform, characterized in that: include: Hardware support layer, data operating environment support layer, task support layer and application software layer; Wherein, the hardware support layer is used to provide hardware support; The data operation environment support layer is used to store business data, and the business data includes measurement, operation and control platform data, vulnerability data, and measurement, operation and control platform rule data; The task support layer is used to schedule the test task according to the input feature information of the attack target and the business data, and the test task includes a vulnerability test task and an attack test task; the task support layer is also used to determine the attack target set according to the measurement, operation and control platform data; receive the feature information of the attack target corresponding to the attack target set; match the vulnerability data and the feature information to determine the target vulnerability; generate a vulnerability test task for the target vulnerability; the test result of the vulnerability test task includes whether there is a vulnerability and the type and location of the vulnerability; the task support layer is also used to determine the attack strategy according to the test result of the vulnerability test task and the measurement, operation and control platform rule data; generate an attack test task for the test result of the vulnerability test task according to the attack strategy; The application software layer is used to test the measurement, operation and control platform according to the scheduling result of the test task to obtain the test result; the application software layer is also used to attack the location of the vulnerability according to the attack test task to obtain the test result of the attack test task; the application software layer is also used to supplement the target vulnerability with reflective XSS injection, storage class XSS injection and DOM type XSS injection according to the vulnerability test task for the target vulnerability, to determine whether the measurement, operation and control platform has an XSS injection vulnerability and, if an XSS injection vulnerability exists, to determine the type and location of the XSS injection vulnerability.

2. The system according to claim 1, characterized in that The task support layer schedules test tasks through Clouds message middleware, manages test tasks through SCM service monitoring and management components, matches vulnerabilities and generates attack strategies through DCCP parallel processing components, and arranges test processes through FACTORY.

3. The system according to claim 1, characterized in that The data operation environment support layer includes a MySQL relational database, a CNNVD or CVE vulnerability database, and a CFS file library.

4. The system according to claim 1, characterized in that The application software layer includes an STK display tool for displaying the test results of the measurement and control platform; And a B / S application software tool for executing the test task.

5. An automated penetration testing method for a measurement and control platform, characterized in that: include: Schedule test tasks based on the input attack target feature information and business data; Determine the attack target set based on the data from the measurement, operation and control platform; Receiving characteristic information of attack targets corresponding to the attack target set; Matching the vulnerability data with the characteristic information to determine the target vulnerability; Generate vulnerability testing tasks for target vulnerabilities; According to the vulnerability testing task for the target vulnerability, perform a supplementary reflective XSS injection on the target vulnerability; Determine a test result of a vulnerability test task for a target vulnerability, wherein the test result of the vulnerability test task includes whether a vulnerability exists and the type and location of the vulnerability; Determine the attack strategy based on the test results of the vulnerability test task and the rule data of the test and operation control platform; Generate an attack test task for the test result of the vulnerability test task according to the attack strategy; According to the attack test task, attack the location of the vulnerability; Determine the test results of the attack test task.