Risk assessment method and device of power system and electronic equipment
By obtaining the power parameters of the power system and the source code and operation programs of the industrial control software, using technical means such as forgetting algorithms, stain analysis and fuzzy testing, a risk report is generated, and the problem of low efficiency of risk assessment in the existing technology is solved, and the power system is realized. The stable operation and safety of the power system are improved.
Patent Information
- Application Number
- CN202411269689.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-10
- Publication Date
- 2025-01-17
AI Technical Summary
There are loopholes and limitations in the risk assessment method of power systems in the prior art, resulting in poor risk assessment efficiency and it is difficult to comprehensively and accurately evaluate the safety of the power system. Especially in new power systems, data may be tampered with or contaminated. Code audit It is difficult to detect all security vulnerabilities.
By obtaining the power parameters of the power system and the source code and operation programs of the industrial control software, using technical means such as forgetting algorithms, stain analysis and fuzzy testing, a risk report is generated, and combined with the safety analysis results of the power parameters and source code, a comprehensive evaluation of the power system's Operational risk.
It has achieved the improvement of the risk assessment efficiency of the power system, ensured the stable operation of the power system, timely discovered and repaired potential safety vulnerabilities, and improved the safety and stability of the power system.
Smart Images

Figure CN119323031A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of power system engineering, and in particular to a risk assessment method, device and electronic equipment for a power system. Background Art
[0002] With the development of new power systems, the integration of power systems with other energy systems is becoming increasingly close. The differences in electricity demand and market participation enthusiasm of power users are constantly increasing. The safe and reliable operation of power systems is also facing more complex and diverse risks.
[0003] Since the risks of power system industrial control involve multiple levels and links, including hardware, software, and networks, it is difficult to fully and accurately assess these risks. For example, the loopholes and limitations of risk assessment methods in related technologies make it easy for power system risks to be ignored or misjudged; the data input and output in new power system applications, as well as the sensitive information associated with them, may be tampered with or contaminated during the entire processing process, and checking the security of the source code is also a major challenge; code auditing is an important part of ensuring software security, but in actual operations, due to the complexity of the code and the limitations of auditing methods, it is difficult to discover all security loopholes and hidden dangers.
[0004] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention
[0005] The embodiments of the present application provide a method, device and electronic device for risk assessment of an electric power system, so as to at least solve the technical problem of poor efficiency of risk assessment of an electric power system caused by loopholes and limitations in risk assessment methods in related technologies.
[0006] According to one aspect of an embodiment of the present application, a risk assessment method for an electric power system is provided, comprising: obtaining electric power parameters of the electric power system, and determining a first risk report based on the electric power parameters, wherein the electric power parameters include at least one of the following: current, voltage, and temperature of the electric power system during operation, and the first risk report represents a safety analysis result of the electric power parameters; obtaining source code and an operating program of industrial control software in the electric power system, and determining a second risk report based on the source code and the operating program, wherein the source code is a programming language used when writing the industrial control software, and the operating program is an execution form of the source code after compilation, and the second risk report represents a safety analysis result of the source code and the operating program; determining a risk assessment result of the electric power system based on the first risk report and the second risk report.
[0007] Optionally, determining a first risk report based on power parameters includes: processing the power parameters through a forgetting algorithm to obtain target power parameters; comparing the target power parameters with a preset safety threshold; when the target power parameters are greater than the preset safety threshold, determining the target power parameters as abnormal power parameters, and when the target power parameters are less than or equal to the preset safety threshold, determining the target power parameters as normal power parameters; determining the first risk report based on the abnormal power parameters and the normal power parameters.
[0008] Optionally, the power parameters are processed by a forgetting algorithm to obtain target power parameters, including: obtaining historical power parameters of the power system; determining a forgetting factor of the forgetting algorithm, wherein the forgetting factor is used to balance the weights of the power parameters and the historical power parameters; adjusting the weight of the power parameters to a first weight based on the forgetting factor, and adjusting the weight of the historical power parameters to a second weight based on the forgetting factor; and determining the target power parameters based on the power parameters, the historical power parameters, the forgetting factor, the first weight, and the second weight.
[0009] Optionally, determining a second risk report based on the source code and the running program includes: performing a taint analysis on the source code to obtain a taint analysis result, wherein the taint analysis includes at least one of the following: display flow analysis, dynamic taint analysis, and static taint analysis; performing a fuzzy test on the running program to obtain a fuzzy test result, wherein the fuzzy test includes at least one of the following: gray box fuzz testing, white box fuzz testing, and feedback-based fuzz testing; determining the second risk report based on the taint analysis result and the fuzz test result.
[0010] Optionally, performing taint analysis on the source code to obtain taint analysis results includes: determining a generation point of taint data in the source code, wherein the taint data is an untrusted source of abnormal data in the source code, and the generation point is used to indicate an initial position of the taint data in the source code; determining a potential danger point of the taint data, wherein the potential danger point is used to indicate a potential danger position of the taint data in the source code; determining a propagation path of the taint data based on the generation point and the potential danger point; and determining the taint analysis results based on the propagation path.
[0011] Optionally, a fuzzy test is performed on a running program to obtain a fuzzy test result, including: determining a fuzzy test case for the running program, wherein the fuzzy test case is random data used to test the running program or data constructed based on preset rules; determining a running state of a target program based on the fuzzy test case, wherein the target program is any one of the running programs; and determining a fuzzy test result based on the running state.
[0012] Optionally, the method also includes: receiving feedback information generated when fuzz testing is performed on a running program; and adjusting the fuzz test case based on the feedback information.
[0013] According to another aspect of an embodiment of the present application, a risk assessment device for an electric power system is also provided, including: a first determination module, used to obtain electric power parameters of the electric power system, and determine a first risk report based on the electric power parameters, wherein the electric power parameters include at least one of the following: current, voltage, and temperature of the electric power system during operation, and the first risk report represents the safety analysis results of the electric power parameters; a second determination module, used to obtain source code and running programs of industrial control software in the electric power system, and determine a second risk report based on the source code and the running programs, wherein the source code is the programming language used when writing the industrial control software, and the running program is the execution form of the source code after compilation, and the second risk report represents the safety analysis results of the source code and the running program; a third determination module, used to determine the risk assessment results of the electric power system based on the first risk report and the second risk report.
[0014] According to another aspect of an embodiment of the present application, there is also provided an electronic device, including: a memory and a processor, wherein the memory is used to store program instructions; the processor is connected to the memory and is used to execute the risk assessment method for the above-mentioned power system.
[0015] According to another aspect of the embodiment of the present application, a non-volatile storage medium is further provided, the non-volatile storage medium including a stored computer program, wherein the device where the non-volatile storage medium is located executes the above-mentioned risk assessment method for the power system by running the computer program.
[0016] According to another aspect of the embodiments of the present application, a computer program product is provided, including computer instructions, which implement the above-mentioned risk assessment method for the power system when executed by a processor.
[0017] In an embodiment of the present application, power parameters of the power system are obtained, and a first risk report is determined based on the power parameters, wherein the power parameters include at least one of the following: current, voltage, and temperature of the power system during operation, and the first risk report represents the results of a safety analysis of the power parameters; the source code and running program of the industrial control software in the power system are obtained, and a second risk report is determined based on the source code and the running program, wherein the source code is the programming language used when writing the industrial control software, and the running program is the execution form of the source code after compilation, and the second risk report represents the results of a safety analysis of the source code and the running program; the risk assessment results of the power system are determined based on the first risk report and the second risk report, thereby achieving the purpose of comprehensively assessing the operating risks of the power system based on the power parameters and the industrial control software, thereby achieving the technical effect of improving the risk assessment efficiency of the power system and ensuring the stable operation of the power system, and further solving the technical problem of poor risk assessment efficiency of the power system caused by loopholes and limitations in the risk assessment methods in related technologies. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0019] Figure 1 is a hardware structure diagram of a computer terminal for implementing a risk assessment method for a power system according to an embodiment of the present application;
[0020] Figure 2 is a flow chart of a risk assessment method for a power system according to an embodiment of the present application;
[0021] Figure 3 is a schematic diagram of the structure of a risk assessment system according to an embodiment of the present application;
[0022] Figure 4 is a schematic diagram of a source code and program risk management process according to an embodiment of the present application;
[0023] Figure 5 It is a structural diagram of a risk assessment device for an electric power system according to an embodiment of the present application. DETAILED DESCRIPTION
[0024] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.
[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application 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 data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0026] First, some nouns or terms that appear in the process of explaining the embodiments of the present application are subject to the following explanations:
[0027] Taint analysis: A computer security technique used to detect and prevent potential security vulnerabilities, especially in software systems. Taint analysis tracks the flow of data to identify possible security risks.
[0028] Fuzz testing: Use automated testing technology to automatically or semi-automatically generate random data according to certain rules, input these generated random data into the dynamically running power system program entry, and monitor whether the power system program has any abnormal situations, such as power system crash, assertion failure, etc. to discover software defects, use fuzz testing, vulnerability scanning and other technical means to discover and verify potential security risks in the source code of the power system source program, thereby improving the risk management and control capabilities of the power system.
[0029] In order to solve the problem of poor risk assessment efficiency of power systems in related technologies, the present application embodiment provides a risk assessment method for power systems. The method can be run on Figure 1 In the computer terminal shown, the computer terminal is described below.
[0030] The risk assessment method embodiment of the power system provided in the embodiment of the present application can be executed in a mobile terminal, a computer terminal or a similar computing device. Figure 1 FIG. 1 shows a hardware structure block diagram of a computer terminal for implementing a risk assessment method for a power system. Figure 1 As shown, the computer terminal 10 may include one or more (102a, 102b, ..., 102n are used to illustrate) processors (the processor may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission module 106 for communication functions connected via a wired and / or wireless network. In addition, it may also include: a display, a keyboard, a cursor control device, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the I / O interface), a network interface, and a BUS bus. Those skilled in the art can understand that Figure 1 The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.
[0031] It should be noted that the one or more processors and / or other data processing circuits described above may generally be referred to herein as "data processing circuits". The data processing circuits may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuit may be a single independent processing module, or may be incorporated in whole or in part into any of the other components in the computer terminal 10. As described in the embodiments of the present application, the data processing circuit acts as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).
[0032] The memory 104 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the risk assessment method of the power system in the embodiment of the present application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory 104, that is, realizing the above-mentioned risk assessment method of the power system. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include a memory remotely arranged relative to the processor, and these remote memories may be connected to the computer terminal 10 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0033] The transmission module 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the computer terminal 10. In one example, the transmission module 106 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission module 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0034] The display may be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computer terminal 10 .
[0035] It should be noted that, in some optional embodiments, the above Figure 1 The computer terminal shown may include hardware elements (including circuits), software elements (including computer code stored on a computer-readable medium), or a combination of hardware elements and software elements. It should be noted that Figure 1 This is merely one example of a particular embodiment and is intended to illustrate the types of components that may be present in the computer terminal described above.
[0036] Under the above-mentioned operating environment, an embodiment of the present application provides an embodiment of a risk assessment method for an electric power system. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0037] Figure 2 is a flow chart of a method for risk assessment of a power system according to an embodiment of the present application, such as Figure 2 As shown, the method comprises the following steps:
[0038] Step S202, obtaining power parameters of the power system, and determining a first risk report based on the power parameters, wherein the power parameters include at least one of the following: current, voltage, and temperature of the power system during operation, and the first risk report represents a safety analysis result of the power parameters.
[0039] In the above step S202, the data acquisition process involves capturing real-time operating status data from all aspects of the power system and extracting key parameter information, such as voltage, current, temperature, etc. of the power system during operation. These parameters are analyzed and processed in real time using forgetting algorithms and models, including but not limited to cleaning, converting and standardizing the collected raw data, eliminating noise, outliers and duplicates, converting the data into a format suitable for analysis, and comparing and analyzing on the same scale, providing a high-quality, standardized data foundation for risk identification and assessment. Subsequently, by comparing the preset safety threshold or safety mode, potential safety risks are automatically identified and located, and the corresponding first risk report is generated, which can timely discover and warn possible risk points, thereby providing an important basis for risk management and control, and ensuring the safe and stable operation of the power system.
[0040] Step S204, obtain the source code and running program of the industrial control software in the power system, and determine the second risk report based on the source code and the running program, wherein the source code is the programming language used when writing the industrial control software, and the running program is the execution form of the source code after compilation. The second risk report represents the security analysis results of the source code and the running program.
[0041] In the above step S204, the source code can be analyzed by taint analysis technology, including but not limited to display flow analysis, dynamic taint analysis and static taint analysis. Specifically, the source code (the initial programming language used when writing industrial control software) is analyzed line by line by taint analysis technology to check whether the structure, logic, function call and other aspects of the source code meet the security specifications. The code attack injection technology is used to deeply analyze the power system program code to find possible security risks; the code can also be checked in a targeted manner in combination with known security vulnerabilities and attack modes; and static auditing can also be used to detect and fix potential security issues as early as possible to improve the security and stability of the software.
[0042] Furthermore, fuzz testing technology can be used to analyze running programs, including but not limited to gray box fuzz testing, white box fuzz testing and feedback-based fuzz testing. Specifically, fuzz testing technology is used to dynamically track and evaluate the behavior patterns and performance changes of running programs, so as to timely discover abnormal behaviors or potential risks, provide real-time and accurate information support for decision-making, and use automated testing technology to automatically or semi-automatically generate random data according to certain rules. These generated random data are input into the dynamically running power system program entry, and the power system program is monitored for abnormal situations at the same time, so as to better understand the operating status of the power industrial control system or object and ensure its safe and stable operation.
[0043] Step S206: determining a risk assessment result of the power system according to the first risk report and the second risk report.
[0044] In the above step S206, the first risk report is the security analysis result of the power parameters, and the second risk assessment report is the security analysis result of the source code and running program of the industrial control software in the power system. By comprehensively analyzing the first risk assessment report and the second risk assessment report, the interaction and potential risks between the power parameters and the industrial control software can be understood, so as to conduct a comprehensive risk assessment.
[0045] Through the above steps S202 to S206, the purpose of comprehensively evaluating the operating risks of the power system based on power parameters and industrial control software is achieved, thereby achieving the technical effect of improving the risk assessment efficiency of the power system and ensuring the stable operation of the power system, and further solving the technical problem of poor risk assessment efficiency of the power system caused by loopholes and limitations in risk assessment methods in related technologies.
[0046] Figure 3 is a schematic diagram of the structure of a risk assessment system according to an embodiment of the present application, such as Figure 3 As shown, the risk assessment system includes:
[0047] The risk detection and identification module is used to collect and preprocess data of the power system, detect and identify the power parameters (basic parameters such as voltage, current, temperature, etc. when the power system is in operation), process the power parameters through the forgetting algorithm, generate the first risk report, and forward it to the risk assessment and safety system.
[0048] The source code and program risk management module is used to perform taint analysis on the source code of the industrial control software in the power system, and to perform fuzz testing on the running programs of the industrial control software, generate a second risk report based on the source code and running programs, and forward it to the risk assessment and safety system.
[0049] The risk assessment and safety system includes a risk assessment model, which is used to classify the risk level of the power system based on the first risk assessment report and the second risk assessment report. For example, parameter identification risk is classified as Class A risk, program risk is classified as Class B risk, and code risk is classified as Class C risk, and the power system is subjected to corresponding security reinforcement and vulnerability repair according to different risk levels.
[0050] The system optimization module includes a feedback mechanism, in which the risk feedback channel is sent from the server to the management end and then fed back to the management terminal. The feedback channel can help staff members to timely understand the risk management content and loopholes, so as to make corresponding technical updates and upgrades.
[0051] The following combination Figure 3 The risk detection and identification module, source code and program risk management module, risk assessment and security system and system optimization module provide detailed explanations of the above steps S202 to S206.
[0052] In the above step S202, a first risk report is determined based on power parameters, including: processing the power parameters through a forgetting algorithm to obtain target power parameters; comparing the target power parameters with a preset safety threshold; when the target power parameters are greater than the preset safety threshold, determining the target power parameters as abnormal power parameters, and when the target power parameters are less than or equal to the preset safety threshold, determining the target power parameters as normal power parameters; determining the first risk report based on the abnormal power parameters and the normal power parameters.
[0053] In the embodiment of the present application, the specific process of processing the power parameters by the forgetting algorithm to determine the first risk inclusion may be as follows:
[0054] 1. Use the forgetting algorithm to process the collected power parameters. Specifically, the forgetting algorithm gives higher weights to current power parameters and lower weights to historical power parameters, thereby achieving real-time analysis and processing of power parameters. The purpose of the forgetting algorithm is to extract target power parameters that reflect the current operating status of the power system, thereby providing a high-quality and standardized data basis for risk identification and assessment.
[0055] 2. Determine a preset safety threshold or safety mode of the power system, which is pre-set based on the design standards, historical data and safety requirements of the power system.
[0056] 3. Compare the processed target power parameters with the preset safety threshold. When the target power parameters are less than or equal to the preset safety threshold, it indicates that the system is normal and the target power parameters are marked as normal power parameters; when the target power parameters are greater than the preset safety threshold, it indicates that there are safety hazards or system abnormalities, such as overload, overheating, etc., and the target power parameters are marked as abnormal power parameters.
[0057] 4. Generate a first risk report based on the normal power parameters and the abnormal power parameters. The first risk report details the abnormal behavior of the abnormal power parameters and the impact of the abnormal power parameters on the safe operation of the power system, for example, the specific value of the abnormal power parameters, the time of occurrence, the possible cause and the recommended countermeasures.
[0058] Furthermore, the power parameters are processed by a forgetting algorithm to obtain target power parameters, including: obtaining historical power parameters of the power system; determining a forgetting factor of the forgetting algorithm, wherein the forgetting factor is used to balance the weights of the power parameters and the historical power parameters; adjusting the weight of the power parameters to a first weight based on the forgetting factor, and adjusting the weight of the historical power parameters to a second weight based on the forgetting factor; and determining the target power parameters based on the power parameters, the historical power parameters, the forgetting factor, the first weight, and the second weight.
[0059] In the embodiment of the present application, when the forgetting algorithm is used to process the power parameters, it involves weighted processing of new and old data (current power parameters and historical power parameters), so that the model can pay more attention to the latest data changes.
[0060] The specific process can be as follows:
[0061] 1. Determine the forgetting factor:
[0062] The forgetting factor (usually denoted as p) is a parameter between 0 and 1, which is used to adjust the weights of current power parameters and historical power parameters. It determines the weight of historical power parameters in the current estimation. A higher forgetting factor means that the model gives more weight to historical power parameters, while a lower forgetting factor enables the model to adapt to current power parameters more quickly.
[0063] 2. Weight adjustment:
[0064] First weight: increase the weight of the current power parameter according to the forgetting factor to reflect the importance of the current power parameter in the estimation;
[0065] Second weight: Reduce the weight of historical power parameters according to the forgetting factor to reflect the relative importance of historical power parameters in the estimation.
[0066] 3. Determine target power parameters:
[0067] A recursive least squares (RLS) algorithm may be used, combined with the forgetting factor, to perform weighted processing on the first weight of the current power parameter and the second weight of the historical power parameter, thereby obtaining the target power parameter.
[0068] Due to the availability of power system information, the oblivious algorithm will autonomously identify and adapt to changes in data parameters without the need for task-specific clues or labels. By developing a robust and adaptive mechanism through the oblivious algorithm, changes in the distribution of power parameters in the power system can be detected and responded to for subsequent evaluation and action.
[0069] In the above step S204, a second risk report is determined based on the source code and the running program, including: performing a taint analysis on the source code to obtain a taint analysis result, wherein the taint analysis includes at least one of the following: display flow analysis, dynamic taint analysis, and static taint analysis; performing a fuzzy test on the running program to obtain a fuzzy test result, wherein the fuzzy test includes at least one of the following: gray box fuzz testing, white box fuzz testing, and feedback-based fuzz testing; and determining the second risk report based on the taint analysis result and the fuzz test result.
[0070] Figure 4 is a schematic diagram of a source code and program risk management process according to an embodiment of the present application, such as Figure 4 As shown, the process includes:
[0071] Source code analysis: Perform taint analysis on the source code to identify potential dangerous points in data flow, such as taint generation points and taint convergence points. The taint analysis includes but is not limited to explicit flow analysis, dynamic taint analysis, and static taint analysis.
[0072] Software / Program Analysis: Fuzz testing is performed on the running program after source code compilation, using limited internal program data to discover vulnerabilities. Fuzz testing includes but is not limited to gray-box fuzz testing, white-box fuzz testing, and feedback-based fuzz testing.
[0073] Vulnerability and weakness detection: In taint analysis, taint convergence points are program locations where tainted data in the source code may cause code errors or vulnerabilities. They are marked and a first risk report is generated. Additional code audit activities can also be performed to ensure the quality and security of the code. In fuzz testing, vulnerabilities or weaknesses detected by fuzz test cases are marked and a second risk report is generated. Other software or program detection can also be performed to determine the stable operation of the running program.
[0074] Data forwarding: Send the first risk report and the second risk report to the risk assessment and safety system to determine the overall safety status and risk level of the power system.
[0075] Specifically, a taint analysis is performed on the source code to obtain a taint analysis result, including: determining a generation point of tainted data in the source code, wherein the tainted data is an untrusted source of abnormal data in the source code, and the generation point is used to represent the initial position of the tainted data in the source code; determining a potential danger point of the tainted data, wherein the potential danger point is used to represent the potential danger position of the tainted data in the source code; determining a propagation path of the tainted data based on the generation point and the potential danger point; and determining a taint analysis result based on the propagation path.
[0076] In the embodiment of the present application, taint analysis is used to detect and identify potential security vulnerabilities in source code. The specific process can be as follows:
[0077] 1. Identify the Source point:
[0078] Determine the source point of the tainted data in the source code, where the tainted data is an untrusted or external data source in the source code, such as user input, file reading, external data interface, etc. The source point refers to the location where the tainted data first enters the running program, that is, the initial location of the tainted data in the source code.
[0079] 2. Identify Sink points (potential danger points):
[0080] Identify the Sink points in the source code that may cause security issues, such as data output, system calls, etc., where the Sink point refers to the location where tainted data may cause security issues (such as information leakage, system crash, data corruption, etc.) when flowing in the source code, that is, the potential dangerous location of tainted data in the source code.
[0081] 3. Determine the transmission path:
[0082] Analyze the propagation path of the tainted data from the source point to the sink point, which includes all the variables, functions, and execution paths that flow through. Furthermore, according to the propagation path of all tainted data, detailed taint analysis results can be generated to point out potential security vulnerabilities and incorrect coding to evaluate the security of the source code.
[0083] The specific stain analysis method can be as follows:
[0084] (1) Display flow analysis:
[0085] Analyze how tainted data propagates along with the data dependencies between variables in the program, and detect risks by detecting data transmission in the source code to improve the risk management and control capabilities of the power system. The sample code is as follows:
[0086] void foo(){
[0087] Int a = source();
[0088] Int b = source();
[0089] Int x,y;
[0090] X = a*2;
[0091] Y = b + 4;
[0092] Sink(x);
[0093] Sink(y);
[0094] }
[0095] In the above example, variables a and b are marked as Source points, and their taint marks are propagated to variables x and y through data operations; when variables x and y are passed to the Sink function, security issues may occur if variables x and y carry taint marks.
[0096] (2) Dynamic taint analysis:
[0097] During the program running process, the propagation of the program's tainted data in the power system program is monitored in real time to detect whether the data can be propagated from the tainted source to the tainted sink. Specifically, dynamic taint analysis first needs to extend a tainted tag for the tainted data and store it in a storage unit (memory, register, cache, etc.), and design the corresponding propagation logic to propagate the tainted tag according to the instruction type and instruction operand.
[0098] Dynamic taint analysis is divided into hardware-based, software-based, and hybrid taint propagation analysis according to the implementation level.
[0099] (3) Static taint analysis:
[0100] The static taint analysis system first parses the program code to obtain the intermediate representation of the program code, and then performs auxiliary analysis such as control flow analysis on the program code based on the intermediate representation to obtain the required control flow graph, call graph, etc. In the auxiliary analysis process, the system can use the taint analysis rules to identify the source points and sink points in the program on the intermediate representation. Finally, the detection system uses static taint analysis to check the program according to the taint analysis rules to determine whether there are taint-type vulnerabilities in the source code.
[0101] Specifically, a fuzzy test is performed on a running program to obtain a fuzzy test result, including: determining a fuzzy test case for the running program, wherein the fuzzy test case is random data used to test the running program or data constructed based on preset rules; determining a running state of a target program based on the fuzzy test case, wherein the target program is any one of the running programs; and determining a fuzzy test result based on the running state.
[0102] Optionally, the method also includes: receiving feedback information generated when fuzz testing is performed on a running program; and adjusting the fuzz test case based on the feedback information.
[0103] In the embodiments of the present application, fuzz testing is the main technology used to find software vulnerabilities, which can easily consider the robustness and security risk status of the software in the power system. Through fuzz testing, the operating status of the power system can be better understood to ensure its safe and stable operation.
[0104] Fuzz testing mainly uses fuzzy test cases to detect vulnerabilities in running programs that may be exploited by attackers. Fuzzy test cases refer to random data or data constructed based on preset rules used to test running programs. These data usually do not meet the expected input specifications of the program and are used to simulate incorrect input phenomena. Specifically, a pre-defined fuzzy test case is input into any running program (i.e., the target program mentioned above), and the target program's response to the fuzzy test case is observed and recorded, including normal functions, error messages, abnormal behaviors, and system crashes, etc. The target program's response to the fuzzy test case is analyzed to generate a fuzzy test result.
[0105] The specific fuzz testing method is as follows:
[0106] (1) Gray box testing:
[0107] Gray-box fuzz testing is a testing method between white-box (static analysis) and black-box (focusing only on input and output). It is suitable for those who have a certain understanding of the internal structure and logic of the running program but do not need full source code visibility.
[0108] In gray box fuzz testing, testers or tools reverse engineer the target program in power system engineering, analyze its internal structure and logic, and obtain the operation mode of the target program. Furthermore, based on the operation mode, test cases are generated in a targeted manner, limiting field values or focusing on testing some key paths and sensitive functions to increase the chance of discovering power system vulnerabilities, thereby improving the risk management and control capabilities of the power system.
[0109] (2) White box testing:
[0110] White-box fuzz testing enhances the concept of gray-box testing and introduces advanced analysis techniques such as symbolic execution, providing full visibility into the internal structure of a running program.
[0111] In white-box fuzz testing, the testing tool uses reverse engineering technology to analyze the source code, control flow, data flow and other internal information of the power system program, and performs industrial control risk management by identifying parameters. Parameter identification is used to build a symbolic execution model to understand the execution path of the program, and then generate power system test cases to test these paths. White-box fuzz testing can more comprehensively cover the various execution paths of the program, thereby increasing the probability of discovering vulnerabilities in the power industrial control system.
[0112] (3) Feedback-based fuzz testing:
[0113] The feedback-based fuzz testing method focuses on collecting and analyzing the feedback information generated during the power system industrial control risk testing process to optimize the generation strategy of fuzzy test cases in the subsequent power system. By optimizing the fuzzy test cases, the efficiency of vulnerability discovery and the overall testing effect can be improved.
[0114] In this method, the test tool statistically analyzes the characteristics of the fuzz test cases and the characteristics of the test results. Using this information, the test tool can dynamically adjust the test case generation strategy to generate more promising power system industrial control test cases and further improve the efficiency of vulnerability discovery. The generation of test cases is analyzed and adjusted using statistical methods (u-testing) to achieve the testing of intelligent power system industrial control. Advanced fuzz testing methods aim to improve the efficiency and effectiveness of fuzz testing through deeper analysis and optimization of parameter identification in power system industrial control. Better results in vulnerability discovery can be achieved with more expertise and sophisticated tool support. The efficiency of identifying parameters in power system industrial control risk management depends on the test objectives, test environment, and available resources.
[0115] In the embodiment of the present application, the risk assessment and security system mainly includes a risk assessment model, risk classification levels, and security reinforcement and vulnerability repair. The details are as follows:
[0116] (1) Risk assessment model:
[0117] The risk assessment system receives the first risk report of the risk detection and identification module and the second risk report of the source code and program risk management. The risk assessment model established according to the first risk report and the second risk report is as follows:
[0118] ①Threat Analysis
[0119] Threat analysis is the first step in the risk assessment of power system industrial control, focusing on identifying vulnerabilities and errors in source code and programs that threaten the safe operation of power systems. In the process of threat analysis, historical threat data is collected and studied, and a learning library of source code and program vulnerabilities and errors is established. Then the risk assessment system matches the items in the learning library. If not, the threat is added to the learning library to better understand the source, frequency and possible impact of the threat.
[0120] ②Risk assessment
[0121] Risk assessment is a comprehensive assessment of the risks faced by power system industrial control security based on threat analysis. Risks are graded and classified into three levels: ABC for data detection and identification of anomalies and source code and program risks. This process involves comprehensive consideration of the severity of the threat, the likelihood of occurrence, and the potential impact. The purpose of risk assessment is to determine which threats pose the greatest risk to the safe operation of the power system and provide a basis for subsequent risk control.
[0122] ③Vulnerability Analysis
[0123] Vulnerability analysis is to evaluate the security of power system industrial control source code and programs. The source code and source program risk management module reports are fully matched with the database, and security vulnerabilities are matched through a comprehensive review of system hardware and software, network architecture, and security management processes. Through the grafting of models and detection platforms, the risk assessment model uses security testing tools and technologies to ensure the accuracy and effectiveness of the assessment results.
[0124] ④ Emergency response
[0125] Emergency response is a key measure to deal with power system industrial control security incidents. The risk assessment system receives data and reports from the risk detection and identification module and the source code and program risk management module. Through the data analysis and reporting system, it automatically responds to emergency plans, issues risk warnings, and marks risk areas and software for ground physical equipment as early as possible. The purpose of emergency response is to respond quickly and effectively when a security incident occurs, and to minimize the impact of the incident on the power system.
[0126] ⑤Qualitative risk assessment
[0127] Qualitative risk assessment is a process of qualitative analysis of the impact of parameter identification, source code and program on the industrial control safety of power systems. Through qualitative assessment, key risk points are identified to provide guidance for subsequent risk control. Qualitative risk assessment is performed by matching the established database data.
[0128] ⑥Quantitative risk assessment
[0129] Quantitative risk assessment is a process of quantitatively analyzing the risk based on qualitative assessment, using mathematical methods and models to analyze the range of parameters identified by parameter detection, source code vulnerabilities and source program errors. Through quantitative assessment, a more accurate risk value can be obtained, thereby more accurately assessing the size and importance of the risk. Collect a large amount of data and establish a corresponding database matching project for calculation.
[0130] After clarifying the assessment objectives and standards, we will use statistical analysis and machine learning methods to process data and build models by receiving data from the risk detection and identification module. After the model is built, we will compare the received data with the established database to find loopholes, verify and tune the model, and ensure that the model can accurately reflect the risk status.
[0131] (2) Risk level classification:
[0132] Risk classification is a systematic process. The risk assessment system divides risks into three levels: A, B, and C. From low to high, the power parameter identification risk is classified as A-level risk, the operation procedure risk is classified as B-level risk, and the code risk is classified as C-level risk. The risk level can provide the risk assessment system with the corresponding next step instructions, clarify the types and characteristics of power parameter identification risk, code risk, and operation procedure risk, and divide the risk into different abc secondary levels based on the severity of the risk and automatic scientific assessment. This process helps to better understand and manage the risks of the classification level, so as to formulate effective risk control measures and reduce potential losses. Through the risk level classification, the assessment system can better identify, evaluate and control risks, and provide strong support for decision-making and planning.
[0133] (3) Security reinforcement and vulnerability repair:
[0134] Conduct a comprehensive security assessment of the data parameters obtained by the detection and identification parameter technology of the power system security risk system, and identify existing security vulnerabilities and weaknesses through dynamic taint analysis technology, static taint analysis technology, display flow analysis, white box fuzz testing, gray box fuzz testing, and feedback-based fuzz testing technology. Develop a reinforcement plan based on the assessment results, including updating patches, strengthening access control, optimizing security configuration, etc. During the reinforcement process, pay close attention to the operating status of the system to ensure that the reinforcement measures will not affect the normal operation of the system. For the vulnerabilities that have been discovered, repair them in a timely manner to prevent malicious exploitation. Through security reinforcement and vulnerability repair, the security of the system can be significantly improved and security risks can be reduced.
[0135] The specific measures for security reinforcement and vulnerability repair are as follows:
[0136] ①Vulnerability repair
[0137] An automatic repair method based on program transplantation is added to the risk and security assessment system. Through the program source code detection report, a sample is input that can cause the target program (Recipient) to crash, and then the program (Donor) that can satisfy both sample conditions is searched from the program code repository. The execution paths of the two samples are compared to locate the error location, and the processing logic of the Donor for the input data is extracted to generate the corresponding patch code, which is then inserted into the error location for repair. Context information is then collected to adapt and convert the patch code, and finally it is verified whether the patch is eliminated. Finally, the repair result is obtained and fed back to the management end.
[0138] The risk detection and identification module pre-processes and pre-processes the collected data to obtain the primary data of the test device, and sends it to the risk assessment system. The assessment system conducts the next secondary risk assessment to assess whether there is a risk. If there is a risk, the detection location is extracted from the database, and the marked location and detection report are given and transmitted to the safety system. The safety system further finds the vulnerability or error through the marked location and the first risk report, and retrieves the data from the vulnerability or error database to complete the security repair.
[0139] The source code and program risk module identifies existing security vulnerabilities and weaknesses through dynamic taint analysis technology, static taint analysis technology, display flow analysis, white-box fuzz testing, gray-box fuzz testing, and feedback-based fuzz testing technology, generates a second risk report and marks the location, and sends it to the risk assessment system. The assessment system conducts the next secondary risk assessment to assess whether there is a risk. If there is a risk, the detection location is extracted from the database, and the marked location and detection report are given and sent to the security system. The security system further finds vulnerabilities or errors through the marked location and detection report, and retrieves data from the vulnerability or error database to complete security repairs.
[0140] ②Security reinforcement
[0141] Security control of power system management: The security system sets up power system program access control policies, multi-factor authentication, role-based access control, and automatically and regularly audits and reviews user permissions to prevent abuse of permissions.
[0142] Encrypted communication: Encrypted communication is used for data transmission between risk detection and identification, source code and program risk management, and risk assessment and safety systems. The risk assessment and safety systems encrypt data transmission between remote programs in the power system to protect source code and program information from being stolen. Use strong password policies to protect data storage and transmission.
[0143] Security software updates: Risk assessment and security systems automatically scan and update patches and security patches of power system industrial control operating systems and applications on a regular basis. Enable the automatic update function to ensure that the system always maintains the latest security features.
[0144] Vulnerability management: The risk assessment and security system automatically and regularly scans and assesses the vulnerabilities of power system programs and data transmission through the database, generates logs and stores them in the database, and promptly repairs known vulnerabilities through the vulnerability repair module.
[0145] Backup and disaster recovery: Risk assessment and safety systems regularly back up important parameters and system data of the power system through the database and store them in a safe place. Establish a disaster recovery plan to deal with possible data loss or system interruption.
[0146] In the embodiment of the present application, the system optimization module includes feedback mechanisms and technical updates and upgrades, collectively as follows:
[0147] (1) Feedback mechanism:
[0148] Clarify the goals and expectations of security repairs and repairs of system vulnerabilities, establish a database through feedback-based fuzz testing and taint analysis results, and ensure that the feedback mechanism can serve by retrieving data with the same attributes in the database. Obtain an assessment report through the risk assessment model to meet the risk management and control needs of the power system.
[0149] The risk management module in the risk assessment system broadens the risk feedback channel, which is sent from the server to the management end and fed back to the management terminal. The feedback channel helps the staff to understand the risk management content and loopholes in a timely manner. To ensure the effectiveness of the feedback mechanism, the power system industrial control risk management and assessment system automatically or manually evaluates and adjusts the feedback mechanism regularly to adapt to the changing organizational environment and needs, thereby establishing an efficient, reliable and fruitful feedback mechanism.
[0150] (2)Technology update and upgrade:
[0151] The system conducts a comprehensive assessment of the system's taint analysis, detection and identification parameters, fuzzy testing and other technologies through the external network platform, identifies the limitations of existing technologies and potential for improvement, and provides feedback to the system's back-end security personnel through feedback channels. The staff will give corresponding technical upgrade and update prompts based on the system's own evaluation. During the upgrade process, the risk management system ensures that the upgrade will not have a negative impact on the business based on its own technical compatibility and system stability. After the upgrade is completed, system testing and performance evaluation are carried out to ensure the effectiveness and reliability of the new technology. Regularly review the upgrade results, continuously optimize the technical environment, and adapt to changing service needs and new technology development trends.
[0152] In an embodiment of the present application, a comprehensive and efficient power system risk assessment method is provided through real-time data acquisition, forgetting algorithm analysis, stain analysis technology and fuzz testing technology. This method ensures the integrity and accuracy of the data, can identify and locate potential security risks in real time, and quickly respond to and repair security vulnerabilities through automated risk assessment reports and feedback mechanisms. In addition, the efficiency and depth of source code audits are enhanced, the overall security and stability of the power system are improved, and the reliability and safety of power supply are ensured. Through the above method, the power system can manage risks more intelligently and proactively, and effectively prevent and reduce the occurrence of safety accidents.
[0153] According to an embodiment of the present application, a risk assessment device for a power system is provided. It should be noted that the risk assessment device for a power system in the embodiment of the present application can be used to execute the risk assessment method for a power system provided in the embodiment of the present application. The risk assessment device for a power system provided in the embodiment of the present application is introduced below.
[0154] Figure 5 is a structural diagram of a risk assessment device for a power system provided according to an embodiment of the present application. Figure 5 As shown, the device comprises:
[0155] A first determination module 50 is used to obtain power parameters of the power system and determine a first risk report based on the power parameters, wherein the power parameters include at least one of the following: current, voltage, and temperature of the power system during operation, and the first risk report indicates a safety analysis result of the power parameters;
[0156] The second determination module 52 is used to obtain the source code and running program of the industrial control software in the power system, and determine the second risk report based on the source code and the running program, wherein the source code is the programming language used when writing the industrial control software, the running program is the execution form of the source code after compilation, and the second risk report represents the security analysis result of the source code and the running program;
[0157] The third determination module 54 is used to determine the risk assessment result of the power system according to the first risk report and the second risk report.
[0158] Through the first determination module 50, the second determination module 52 and the third determination module 54 in the risk assessment device of the above-mentioned power system, the purpose of comprehensively assessing the operation risk of the power system based on power parameters and industrial control software is achieved, thereby achieving the technical effect of improving the risk assessment efficiency of the power system and ensuring the stable operation of the power system, and further solving the technical problem of poor risk assessment efficiency of the power system caused by loopholes and limitations in the risk assessment methods in related technologies.
[0159] In the risk assessment device for the power system provided in the embodiment of the present application, the first determination module is also used to process the power parameters through a forgetting algorithm to obtain target power parameters; compare the target power parameters with a preset safety threshold; when the target power parameters are greater than the preset safety threshold, determine the target power parameters as abnormal power parameters, and when the target power parameters are less than or equal to the preset safety threshold, determine the target power parameters as normal power parameters; determine the first risk report based on the abnormal power parameters and the normal power parameters.
[0160] In the risk assessment device for the power system provided in the embodiment of the present application, the first determination module is also used to obtain the historical power parameters of the power system; determine the forgetting factor of the forgetting algorithm, wherein the forgetting factor is used to balance the weights of the power parameters and the historical power parameters; adjust the weight of the power parameters to a first weight based on the forgetting factor, and adjust the weight of the historical power parameters to a second weight based on the forgetting factor; determine the target power parameters based on the power parameters, the historical power parameters, the forgetting factor, the first weight and the second weight.
[0161] In the risk assessment device for the power system provided in the embodiment of the present application, the second determination module is also used to perform taint analysis on the source code to obtain the taint analysis result, wherein the taint analysis includes at least one of the following: display flow analysis, dynamic taint analysis and static taint analysis; perform fuzz testing on the running program to obtain the fuzz testing result, wherein the fuzz testing includes at least one of the following: gray box fuzz testing, white box fuzz testing and feedback-based fuzz testing; determine the second risk report based on the taint analysis result and the fuzz testing result.
[0162] In the risk assessment device for the power system provided in the embodiment of the present application, the second determination module is also used to determine the generation point of the tainted data in the source code, wherein the tainted data is an untrusted source of abnormal data in the source code, and the generation point is used to indicate the initial position of the tainted data in the source code; determine the potential danger point of the tainted data, wherein the potential danger point is used to indicate the potential danger position of the tainted data in the source code; determine the propagation path of the tainted data based on the generation point and the potential danger point; and determine the taint analysis result based on the propagation path.
[0163] In the risk assessment device of the power system provided in the embodiment of the present application, the second determination module is also used to determine a fuzzy test case of the running program, wherein the fuzzy test case is random data used to test the running program or data constructed based on preset rules; determine the running status of the target program based on the fuzzy test case, wherein the target program is any one of the running programs; and determine the fuzzy test result based on the running status.
[0164] In the risk assessment device for the power system provided in the embodiment of the present application, the second determination module is also used to receive feedback information generated when the running program is fuzzy tested; and adjust the fuzzy test case based on the feedback information.
[0165] An embodiment of the present application also provides an electronic device, including: a memory and a processor, wherein the memory is used to store program instructions; the processor is connected to the memory and is used to execute the risk assessment method for the above-mentioned power system.
[0166] It should be noted that the above electronic equipment is used to execute Figure 2 The risk assessment method for the power system shown in the figure, therefore the relevant explanations in the above-mentioned risk assessment method for the power system are also applicable to the electronic equipment and will not be repeated here.
[0167] An embodiment of the present application also provides a non-volatile storage medium, which includes a stored computer program, wherein the device where the non-volatile storage medium is located executes the above-mentioned risk assessment method for the power system by running the computer program.
[0168] It should be noted that the above non-volatile storage medium is used to execute Figure 2 The risk assessment method for the power system shown in the figure, therefore the relevant explanations in the above-mentioned risk assessment method for the power system are also applicable to the non-volatile storage medium, and will not be repeated here.
[0169] An embodiment of the present application also provides a computer program product, including computer instructions, which implement the above-mentioned risk assessment method for the power system when executed by a processor.
[0170] It should be noted that the above-mentioned computer program product is used to execute Figure 2 The risk assessment method for the power system shown in the figure, therefore the relevant explanations in the above-mentioned risk assessment method for the power system are also applicable to the computer program product, and will not be repeated here.
[0171] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0172] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0173] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units 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 units or modules, which can be electrical or other forms.
[0174] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0175] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0176] If the integrated unit is implemented in the form of a software functional unit 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, in essence, 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, and the computer software product is stored in a storage medium, including a number of instructions to enable 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 method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.
[0177] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A risk assessment method for a power system, characterized in that: include: Acquire power parameters of the power system, and determine a first risk report based on the power parameters, wherein the power parameters include at least one of the following: current, voltage, and temperature of the power system during operation, and the first risk report indicates a safety analysis result of the power parameters; Obtaining source code and running program of the industrial control software in the power system, and determining a second risk report based on the source code and the running program, wherein the source code is a programming language used when writing the industrial control software, the running program is an execution form of the source code after compilation, and the second risk report represents a security analysis result of the source code and the running program; A risk assessment result of the power system is determined based on the first risk report and the second risk report.
2. The method according to claim 1, characterized in that Determining a first risk report according to the power parameter includes: Processing the power parameters by using a forgetting algorithm to obtain target power parameters; comparing the target power parameter with a preset safety threshold; When the target power parameter is greater than the preset safety threshold, the target power parameter is determined as an abnormal power parameter, and when the target power parameter is less than or equal to the preset safety threshold, the target power parameter is determined as a normal power parameter; The first risk report is determined according to the abnormal power parameter and the normal power parameter.
3. The method according to claim 2, characterized in that The power parameters are processed by a forgetting algorithm to obtain target power parameters, including: Acquiring historical power parameters of the power system; Determining a forgetting factor of the forgetting algorithm, wherein the forgetting factor is used to balance the weights of the power parameter and the historical power parameter; adjusting the weight of the power parameter to a first weight according to the forgetting factor, and adjusting the weight of the historical power parameter to a second weight according to the forgetting factor; The target power parameter is determined according to the power parameter, the historical power parameter, the forgetting factor, the first weight, and the second weight.
4. The method according to claim 1, characterized in that: Determining a second risk report according to the source code and the running program includes: Performing taint analysis on the source code to obtain a taint analysis result, wherein the taint analysis includes at least one of the following: display flow analysis, dynamic taint analysis, and static taint analysis; Performing a fuzz test on the running program to obtain a fuzz test result, wherein the fuzz test includes at least one of the following: a gray box fuzz test, a white box fuzz test, and a feedback-based fuzz test; The second risk report is determined according to the taint analysis result and the fuzzy test result.
5. The method according to claim 4, characterized in that Performing taint analysis on the source code to obtain taint analysis results, including: Determine a generation point of tainted data in the source code, wherein the tainted data is a source of untrusted abnormal data in the source code, and the generation point is used to indicate an initial position of the tainted data in the source code; Determining a potential danger point of the tainted data, wherein the potential danger point is used to indicate a potential danger position of the tainted data in the source code; Determining a propagation path of the tainted data according to the generation point and the potential risk point; The stain analysis result is determined according to the propagation path.
6. The method according to claim 4, characterized in that Performing a fuzz test on the running program to obtain a fuzz test result includes: Determining a fuzzy test case of the running program, wherein the fuzzy test case is random data or data constructed based on preset rules for testing the running program; Determining the running state of a target program according to the fuzzy test case, wherein the target program is any one of the running programs; The fuzzy test result is determined according to the running status.
7. The method according to claim 6, characterized in that The method further comprises: Receiving feedback information generated when fuzz testing is performed on the running program; The fuzzy test case is adjusted according to the feedback information.
8. A risk assessment device for a power system, characterized in that: include: A first determination module is used to obtain power parameters of the power system and determine a first risk report based on the power parameters, wherein the power parameters include at least one of the following: current, voltage, and temperature of the power system during operation, and the first risk report indicates a safety analysis result of the power parameters; a second determination module, configured to obtain source code and operating program of the industrial control software in the power system, and determine a second risk report based on the source code and the operating program, wherein the source code is a programming language used when writing the industrial control software, the operating program is an execution form of the source code after compilation, and the second risk report indicates a security analysis result of the source code and the operating program; The third determination module is used to determine the risk assessment result of the power system according to the first risk report and the second risk report.
9. An electronic device, characterized in that: include: A memory and a processor, wherein the memory is used to store program instructions; The processor is connected to the memory and is used to execute the risk assessment method for the power system as described in any one of claims 1 to 7.
10. A non-volatile storage medium, characterized in that: The non-volatile storage medium includes a stored computer program, wherein the device where the non-volatile storage medium is located executes the risk assessment method for the power system according to any one of claims 1 to 7 by running the computer program.
11. A computer program product comprising computer instructions, characterized in that: When the computer instructions are executed by a processor, the risk assessment method for a power system as described in any one of claims 1 to 7 is implemented.