Data processing method and device, equipment and storage medium
Patent Information
- Application Number
- CN202310077727.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-01-19
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2043-01-19
AI Technical Summary
[0003]本申请实施例提供一种数据处理方法、装置、设备及存储介质,能够解决现有技术中测试范围受限以及测试效率低的问题
[0035] The data processing method, apparatus, device, and storage medium of this application embodiment receive a first test request sent by a data sender. The first test request carries encrypted traffic data. Then, the encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain decrypted traffic data from the data sender. Furthermore, encrypted attack test traffic data is determined based on the decrypted traffic data and a first preset encryption algorithm corresponding to the first preset decryption algorithm. Next, a second test request is sent to a data receiver. The second test request includes the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation. Then, upon receiving feedback traffic data from the data receiver, a target test result is generated based on the preset test result and the attack test result in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver. In this way, the data processing method provided in this application embodiment can be implemented through a three-layer proxy approach. The first-layer proxy intercepts encrypted traffic data and calls a preset decryption algorithm corresponding to the encrypted traffic data to decrypt it. Next, the second-layer proxy determines encrypted attack test traffic data (such as attack payload) based on the decrypted traffic data existing in plaintext and the preset encryption algorithm corresponding to the first preset decryption algorithm. Then, the third-layer proxy intercepts the encrypted attack test traffic data and constructs a second test request based on the encrypted attack test traffic data to transmit the encrypted attack test traffic data to the data receiver. This allows for security testing of encrypted traffic data, broadening the testing scope. Furthermore, it allows for the determination of whether there is execution risk in the code data of the data receiver based on the attack test results and preset test results in the test request fed back by the data receiver, thereby completing the test. This achieves automatic encryption and decryption of encrypted data, automatic construction of encrypted attack test traffic data, and automatic forwarding to the data receiver, reducing manual intervention and improving overall testing efficiency.
Smart Images

Figure CN116132034B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of data processing technology, and in particular relates to a data processing method, apparatus, device and storage medium. Background Technology
[0002] Dynamic scanning tools can provide automated security checks on plaintext traffic data from applications with a front-end page. However, as various network platforms place increasing emphasis on secure data transmission, many platforms encrypt plaintext traffic data when transmitting it through Application Programming Interfaces (APIs). Since dynamic scanning tools cannot identify this encrypted data traffic and cannot detect traffic data from applications without a front-end page, this limits the scope of testing and reduces testing efficiency. Summary of the Invention
[0003] This application provides a data processing method, apparatus, device, and storage medium that can solve the problems of limited testing scope and low testing efficiency in the prior art.
[0004] In a first aspect, embodiments of this application provide a data processing method applied to a data testing party, the method including:
[0005] Receive the first test request sent by the data sender, which carries encrypted traffic data;
[0006] The encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data, to obtain the decrypted traffic data from the data sender.
[0007] Based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm, the encryption attack test traffic data is determined;
[0008] Send a second test request to the data receiver. The second test request includes encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation.
[0009] Upon receiving feedback traffic data from the data receiver, target test results are generated based on preset test results and attack test results in the feedback traffic data. These target test results are used to characterize whether there are execution risks in the code data of the data receiver.
[0010] Secondly, embodiments of this application provide a data processing method applied to a data receiver, which may include:
[0011] Receive a second test request sent by the data tester, the second test request including encrypted attack test traffic data;
[0012] If the data receiver is successfully attacked, the operation corresponding to the encrypted attack test traffic data is executed, and the attack test result corresponding to the operation is obtained.
[0013] Feedback traffic data is sent to the data testing party. The feedback traffic data includes attack test results, which are used to determine whether there are execution risks in the code data of the data recipient.
[0014] Thirdly, embodiments of this application provide a data processing system, which may include:
[0015] Data sender, data tester, and data receiver; among them,
[0016] The data sender is used to send a first test request to the data tester. The first test request carries encrypted traffic data.
[0017] The data tester, upon receiving a first test request, decrypts the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain the decrypted traffic data of the data sender; determines the encrypted attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm; and sends a second test request to the data receiver, the second test request including the encrypted attack test traffic data.
[0018] The data receiver is used to perform the operation corresponding to the encrypted attack test traffic data when it receives the second test request and the data receiver is successfully attacked, to obtain the attack test result corresponding to the operation, and to send feedback traffic data to the data tester, including the attack test result.
[0019] The data testing team is also used to generate target test results based on preset test results and attack test results in the feedback traffic data when receiving feedback traffic data from the data receiver. The target test results are used to characterize whether there are execution risks in the code data of the data receiver.
[0020] Fourthly, embodiments of this application provide a data processing apparatus for use in data testing, the apparatus including:
[0021] The receiving module is used to receive the first test request sent by the data sender. The first test request carries encrypted traffic data.
[0022] The decryption module is used to decrypt the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data, so as to obtain the decrypted traffic data of the data sender.
[0023] The determination module is used to determine the encryption attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm;
[0024] The sending module is used to send a second test request to the data receiver. The second test request includes encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation.
[0025] The generation module is used to generate target test results based on preset test results and attack test results in the feedback traffic data when receiving feedback traffic data from the data receiver. The target test results are used to characterize whether there is any execution risk in the code data of the data receiver.
[0026] Fifthly, embodiments of this application provide a data processing apparatus applied to a data receiver, the apparatus including:
[0027] The receiving module is used to receive a second test request sent by the data tester. The second test request includes encrypted attack test traffic data.
[0028] The execution module is used to perform operations corresponding to the encrypted attack test traffic data when the data receiver is successfully attacked, and to obtain the attack test results corresponding to the operations.
[0029] The sending module is used to send feedback traffic data to the data tester. The feedback traffic data includes attack test results, which are used to determine whether there are execution risks in the code data of the data receiver.
[0030] In a sixth aspect, embodiments of this application provide a computing device, which includes: a processor and a memory storing computer program instructions;
[0031] When a processor executes computer program instructions, it implements a data processing method as shown in the first aspect or a data processing method as shown in the second aspect.
[0032] In a seventh aspect, embodiments of this application provide a computer storage medium storing computer program instructions, which, when executed by a processor, implement the data processing method as shown in the first aspect or the data processing method as shown in the second aspect.
[0033] Eighthly, embodiments of this application provide a chip, which includes a processor and a communication interface. The communication interface and the processor are coupled. The processor is used to run programs or instructions to implement the data processing method as shown in the first aspect or the data processing method as shown in the second aspect.
[0034] Ninthly, embodiments of this application provide a computer program product stored in a storage medium, which is executed by at least one processor to implement the data processing method as shown in the first aspect or the data processing method as shown in the second aspect.
[0035] The data processing method, apparatus, device, and storage medium of this application embodiment receive a first test request sent by a data sender. The first test request carries encrypted traffic data. Then, the encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain decrypted traffic data from the data sender. Furthermore, encrypted attack test traffic data is determined based on the decrypted traffic data and a first preset encryption algorithm corresponding to the first preset decryption algorithm. Next, a second test request is sent to a data receiver. The second test request includes the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation. Then, upon receiving feedback traffic data from the data receiver, a target test result is generated based on the preset test result and the attack test result in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver. In this way, the data processing method provided in this application embodiment can be implemented through a three-layer proxy approach. The first-layer proxy intercepts encrypted traffic data and calls a preset decryption algorithm corresponding to the encrypted traffic data to decrypt it. Next, the second-layer proxy determines encrypted attack test traffic data (such as attack payload) based on the decrypted traffic data existing in plaintext and the preset encryption algorithm corresponding to the first preset decryption algorithm. Then, the third-layer proxy intercepts the encrypted attack test traffic data and constructs a second test request based on the encrypted attack test traffic data to transmit the encrypted attack test traffic data to the data receiver. This allows for security testing of encrypted traffic data, broadening the testing scope. Furthermore, it allows for the determination of whether there is execution risk in the code data of the data receiver based on the attack test results and preset test results in the test request fed back by the data receiver, thereby completing the test. This achieves automatic encryption and decryption of encrypted data, automatic construction of encrypted attack test traffic data, and automatic forwarding to the data receiver, reducing manual intervention and improving overall testing efficiency. Attached Figure Description
[0036] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0037] Figure 1 This is a schematic diagram of the structure of a data processing system provided in an embodiment of this application;
[0038] Figure 2 A flowchart illustrating a data processing method provided in an embodiment of this application;
[0039] Figure 3 This is a flowchart illustrating the process of determining encryption attack test traffic data in a data processing method provided in an embodiment of this application.
[0040] Figure 4 A flowchart illustrating the determination of a second test request in a data processing method provided in an embodiment of this application;
[0041] Figure 5 This is a flowchart illustrating the process of determining feedback traffic data in a data processing method provided in an embodiment of this application.
[0042] Figure 6 A flowchart illustrating a data processing method based on a data receiver, provided as an embodiment of this application;
[0043] Figure 7 This is a schematic diagram of the structure of a data processing apparatus provided in one embodiment of this application;
[0044] Figure 8 This is a schematic diagram of the structure of a data processing device based on a data receiver according to an embodiment of this application;
[0045] Figure 9 This is a schematic diagram of the structure of a data processing device provided in one embodiment of this application. Detailed Implementation
[0046] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0047] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0048] In related technologies, dynamic scanning tools can provide automated security testing for plaintext traffic data. However, as various network platforms (such as network monitoring platforms and application service platforms) place increasing emphasis on secure transmission, many platforms use methods such as encrypting traffic and signing packets when transmitting via APIs. This makes it impossible for dynamic scanning tools to detect encrypted and signed traffic data during dynamic scanning. Furthermore, dynamic scanning tools focus on application traffic with web pages, and have insufficient support for APIs with purely backend interactions (i.e., no front-end pages), thus hindering flexible automated security testing and narrowing the testing scope.
[0049] Furthermore, the gray-box testing tools commonly used in Interactive Application Security Testing (IAST) work by dynamically instrumenting "probes" (Agents) into the application's bytecode to obtain various contextual information during application runtime, and then analyzing the application's security vulnerabilities in real time. However, gray-box testing tools require deploying corresponding Agents for each application, which is highly intrusive. Additionally, different Agents need to be configured for applications developed in different languages, leading to high testing costs and reduced testing efficiency.
[0050] To address the aforementioned problems, embodiments of this application provide a data processing method, apparatus, computer equipment, and storage medium. The following will describe these in conjunction with the accompanying drawings. Figures 1 to 9 This application describes in detail the data processing system, method, apparatus, server, and storage medium of the embodiments thereof. It should be noted that these embodiments are not intended to limit the scope of this application.
[0051] First, the data processing system of the data processing method provided in the embodiments of this application will be described.
[0052] like Figure 1As shown, the data processing system 10 includes a data sender 101, a data tester 102, and a data receiver 103. The data sender 101, data tester 102, and data receiver 103 can interact with each other.
[0053] The following sections will provide a detailed description of each part of its data processing system 10.
[0054] Data sender 101 is used to call the API of the interactive application and send a first test request to data tester 102 through the API according to the first preset proxy address, wherein the first preset proxy address is the proxy address of the front-end module 1021 in data tester 102.
[0055] The data testing module 102 may include a front-end module 1021, a preset dynamic scanning tool module 1022, and a back-end module 1023. The front-end module 1021 provides decryption and proxy forwarding functions; the preset dynamic scanning tool module 1022 provides functions for constructing attack test traffic data, proxy forwarding, and generating test results; and the back-end module 1023 provides encryption, proxy forwarding, and re-signing functions.
[0056] In one example, the front-end module 1021 receives a first test request sent by the data sender 101 and determines whether the traffic data carried in the first test request is encrypted traffic data. Specifically, if the front-end module 1021 determines that the traffic data carried in the first test request is not encrypted traffic data, it adjusts the first preset proxy address to a second preset proxy address and forwards the first test request to the preset dynamic scanning tool module 1022 according to the second preset proxy address, where the second preset proxy address is the proxy address of the preset dynamic scanning tool module 1022. The preset dynamic scanning tool module 1022 processes the traffic data carried in the first test request using a preset dynamic scanning tool to obtain attack test traffic data, adjusts the second preset proxy address to a third preset proxy address, and sends the attack test traffic data to the back-end module 1023 according to the third preset proxy address, where the third preset proxy address is the proxy address of the back-end module 1023. The post-module 1023 determines whether the first test request carries a digital signature of the data sender. If it determines that the first test request carries a digital signature, it re-signs the attack test traffic data using a preset signature algorithm associated with the data sender, and sends a third test request to the data receiver 103 according to the proxy address of the data receiver 103. This third test request is used to request the data receiver 103 to perform the operation corresponding to the re-signed attack test traffic data in the third test request if the attack is successful, and to provide feedback on the attack test result corresponding to the operation. The data receiver 103 receives the third test request sent by the data tester 102, and if the attack is successful, the data receiver 102 performs the operation corresponding to the re-signed attack test traffic data in the third test request, obtains the attack test result corresponding to the operation, and sends feedback traffic data, including the attack test result, to the post-module 1023. The post-module 1023 is further configured to, upon receiving feedback traffic data sent by the data receiver 103, determine whether the feedback traffic data is encrypted data; if the feedback traffic data is determined not to be encrypted data, then send the feedback traffic data to the preset dynamic scanning tool module 1022; otherwise, if the feedback traffic data is determined to be encrypted data, obtain the unified resource location address corresponding to the feedback traffic data, and obtain a second preset encryption algorithm associated with the unified resource location address based on the association information between the preset unified resource location address and the preset encryption algorithm; decrypt the feedback traffic data using a second preset decryption algorithm corresponding to the second preset encryption algorithm to obtain the attack test result, and send the attack test result to the preset dynamic scanning tool module 1022.The preset dynamic scanning tool module 1022 is used to generate target test results based on preset test results and attack test results in feedback traffic data. The target test results are used to characterize whether there is execution risk in the code data of the data receiver.
[0057] Based on the foregoing example, in another example, the front-end module 1021 determines that the traffic data carried in the first test request is encrypted traffic data. It then decrypts the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data, obtaining the decrypted traffic data from the data sender. The front-end module 1021 then adjusts the first preset proxy address to a second preset proxy address and sends the decrypted traffic data to the preset dynamic scanning tool module 1022 according to the second preset proxy address. The preset dynamic scanning tool module 1022 processes the decrypted traffic data using a preset dynamic scanning tool to obtain attack test traffic data. It then adjusts the second preset proxy address to a third preset proxy address and sends the attack test traffic data to the back-end module 1023 according to the third preset proxy address. The post-module 1023 is used to encrypt the attack test traffic data using a first preset encryption algorithm corresponding to the first preset decryption algorithm to obtain encrypted attack test traffic data; and to determine whether the first test request carries the digital signature of the data sender. If it is determined that the first test request carries a digital signature, the encrypted attack test traffic data is re-signed using a preset signature algorithm associated with the data sender. Based on the re-signed encrypted attack test traffic data, the second test request is generated, and the second test request is sent to the data receiver 103 according to the proxy address of the data receiver 103. The post-module 1023 is further configured to, upon receiving feedback traffic data sent by the data receiver 103, determine whether the feedback traffic data is encrypted data; if the feedback traffic data is determined not to be encrypted data, then send the feedback traffic data to the preset dynamic scanning tool module 1022; otherwise, if the feedback traffic data is determined to be encrypted data, obtain the unified resource location address corresponding to the feedback traffic data, and obtain a second preset encryption algorithm associated with the unified resource location address based on the association information between the preset unified resource location address and the preset encryption algorithm; decrypt the feedback traffic data using a second preset decryption algorithm corresponding to the second preset encryption algorithm to obtain the attack test result, and send the attack test result to the preset dynamic scanning tool module 1022.
[0058] The preset dynamic scanning tool module 1022 is used to generate target test results based on preset test results and attack test results in feedback traffic data. The target test results are used to characterize whether there is execution risk in the code data of the data receiver.
[0059] It should be noted that the dynamic scanning tool in this application embodiment belongs to the black-box testing tool. It can obtain the test entry by crawling the application webpage of the interactive application. In the test, the interactive application is regarded as a black box that cannot be opened. Without considering the internal structure and internal characteristics of the interactive application, the test is performed on the output side of the API of the interactive application to check whether the function of the interactive application is used normally according to the preset information, and whether the interactive application can receive input data and generate correct output information.
[0060] Based on this, the data processing method provided in this application embodiment can be applied to scenarios where any function in an interactive application is being tested.
[0061] Therefore, based on the aforementioned data processing system and application scenarios, this application provides a data processing method, apparatus, device, and storage medium. The following will be discussed in conjunction with the appendix... Figures 2 to 8 This application describes in detail the data processing methods, apparatus, computer equipment, and storage media of the embodiments thereof. It should be noted that these embodiments are not intended to limit the scope of this application.
[0062] First, combined Figure 2 The data processing method provided in the embodiments of this application will be described in detail.
[0063] Figure 2 This is a flowchart of a data processing method provided in an embodiment of this application.
[0064] like Figure 2 As shown, this data processing method can be applied to, for example... Figure 1 The data testing method shown may specifically include the following steps:
[0065] Step 210: Receive a first test request from the data sender, the first test request carrying encrypted traffic data; Step 220: Decrypt the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain the decrypted traffic data from the data sender; Step 230: Determine encrypted attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm; Step 240: Send a second test request to the data receiver, the second test request including the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation; Step 250: Upon receiving feedback traffic data from the data receiver, generate a target test result based on the preset test result and the attack test result in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver.
[0066] Therefore, the data processing method provided in this application embodiment can be implemented through a three-layer proxy approach. The first-layer proxy intercepts encrypted traffic data and calls a preset decryption algorithm corresponding to the encrypted traffic data to decrypt it. Next, the second-layer proxy determines encrypted attack test traffic data (such as attack payload) based on the decrypted traffic data existing in plaintext and the preset encryption algorithm corresponding to the first preset decryption algorithm. Then, the third-layer proxy intercepts the encrypted attack test traffic data and constructs a second test request based on the encrypted attack test traffic data to transmit the encrypted attack test traffic data to the data receiver. In this way, security testing of encrypted traffic data can be performed, broadening the testing scope. Furthermore, based on the attack test results and preset test results in the test request fed back by the data receiver, it can be determined whether there is an execution risk in the code data of the data receiver, thereby completing the test. This achieves automatic encryption and decryption of encrypted data, automatic construction of encrypted attack test traffic data, and automatic forwarding to the data receiver, reducing manual intervention and improving overall testing efficiency.
[0067] The above steps are explained in detail below:
[0068] First, regarding step 210, in one or more possible embodiments, step 210 may specifically include:
[0069] Step 2101: Based on the first test request sent by the data sender through the API, determine whether the traffic data carried in the first test request is encrypted traffic data.
[0070] Specifically, step 2101 may include:
[0071] Based on the Uniform Resource Locator (URL) corresponding to the first test request, the first test request is parsed to obtain the first configuration file;
[0072] If the first configuration file includes first encryption information, the traffic data carried in the first test request is determined to be encrypted traffic data. The first encryption information may include at least one of the following: a first encryption identifier, a first preset encryption algorithm corresponding to the encrypted traffic data, a first preset decryption algorithm corresponding to the encrypted traffic data, and a first encryption key corresponding to the encrypted traffic data. Here, the first encryption identifier is used to identify whether the first test request carries encrypted traffic data.
[0073] Conversely, if the first configuration file does not include the first encryption information, it is determined that the traffic data carried in the first test request is not encrypted traffic data.
[0074] It should be noted that, in this embodiment, the first test request may also carry the digital signature of the data sender. Based on this, the first encrypted information may further include a preset signature algorithm associated with the data sender and a written signature plugin. Specifically, the written signature plugin may be a plugin for writing digital signatures or a plugin for writing general data signatures. This allows for the detection of whether the first test request carries a digital signature before sending the second test request to the data receiver. If it does, the attack test traffic data reconstructed from the decrypted traffic data is re-signed to generate the second test request, thereby effectively proving the authenticity of the data sent by the data sender.
[0075] Secondly, regarding step 220, in one or more possible embodiments, the first preset decryption algorithm provided in this application embodiment may be parsed from the first test request as shown above, or it may be pre-stored in the data tester.
[0076] When the first preset decryption algorithm is pre-stored on the data tester, in one example, the first test request carries the identity identifier of the data sender. Based on this, step 220 may specifically include:
[0077] Based on the identity identifier of the data sender carried in the first test request, a preset decryption algorithm corresponding to the identity identifier is obtained from the preset database;
[0078] The preset decryption algorithm corresponding to the identity identifier will be obtained from the preset database and determined as the first preset decryption algorithm.
[0079] In another example, step 220 may specifically include:
[0080] Based on the association information between the preset Uniform Resource Locator (URL) and the preset decryption algorithm, obtain the first preset decryption algorithm corresponding to the URL carried in the first test request.
[0081] For example, combined Figure 1 The data processing architecture involved, specifically combined with Figure 3 Steps 210 and 220 will be explained below. Figure 3As shown, the front-end module receives a first test request sent by the data sender. Based on the Uniform Resource Locator (URL) corresponding to the first test request, it parses the first test request to obtain a first configuration file. If the first configuration file includes first encryption information, it determines that the traffic data carried in the first test request is encrypted traffic data. If the first configuration file does not include the first encryption information, it determines that the traffic data carried in the first test request is not encrypted traffic data. Based on this, if the front-end module determines that the traffic data carried in the first test request is not encrypted traffic data, it can adjust the first preset proxy address carried in the first test request to a second preset proxy address, and send the first test request to the preset dynamic scanning tool module according to the second preset proxy address. Conversely, if the front-end module determines that the traffic data carried in the first test request is encrypted traffic data, it can obtain the first preset decryption algorithm corresponding to the Uniform Resource Locator (URL) carried in the first test request based on the association information between the preset URL and the preset decryption algorithm. Then, it can decrypt the encrypted traffic data using the first preset decryption algorithm to obtain the plaintext decrypted traffic data of the data sender. After that, it can adjust the first preset proxy address carried in the first test request to the second preset proxy address and send the decrypted traffic data to the preset dynamic scanning tool module according to the second preset proxy address.
[0082] Next, regarding step 230, in one or more possible embodiments, the traffic data carried in the first test request is encrypted traffic data, and step 230 may specifically include:
[0083] Step 2301: Process the decrypted traffic data using a preset dynamic scanning tool to obtain attack test traffic data;
[0084] Step 2302: Encrypt the attack test traffic data using the first preset encryption algorithm corresponding to the first preset decryption algorithm to obtain encrypted attack test traffic data.
[0085] It should be noted that the attack test traffic data in this application embodiment can be an attack payload. An attack payload refers to code data pre-configured by the data sender to be executed after a successful attack on the data receiver. For example, it can create an extension module (Meterpreter) connection or bind to a listening port to obtain system shell interaction. It can also use the attack payload to execute some commands on the target operating system, such as adding accounts or querying communication numbers.
[0086] Additionally, the traffic data carried in the first test request is not encrypted traffic data; step 230 may specifically include:
[0087] By processing the traffic data in the first test request using a preset dynamic scanning tool, attack test traffic data is obtained.
[0088] In this way, a fourth test request can be sent to the data receiver. The fourth test request includes attack test traffic data. If the data receiver is successfully attacked, the fourth test request is used to request the data receiver to perform the operation corresponding to the attack test traffic data and to provide feedback on the attack test result corresponding to the operation.
[0089] In another or more possible embodiments, the first test request carries a first preset proxy address for receiving the first test request. Before step 2301, the data processing method provided in this application embodiment may further include:
[0090] Change the first preset proxy address to the second preset proxy address;
[0091] The preset dynamic scanning tool is invoked according to the second preset proxy address.
[0092] In yet another possible embodiment, after step 2302, the data processing method provided in this application embodiment may further include:
[0093] Change the second preset proxy address to the third preset proxy address;
[0094] According to the third preset proxy address, the first preset encryption algorithm corresponding to the first preset decryption algorithm is invoked.
[0095] Furthermore, regarding step 240, in one or more possible embodiments, based on the third preset proxy address adjusted in step 230 above, before executing step 240, the data processing method provided in this application embodiment may further include:
[0096] Adjust the third preset proxy address to the proxy address of the data receiver;
[0097] Based on this, step 240 may specifically include:
[0098] Send a second test request to the data receiver based on the data receiver's proxy address.
[0099] Thus, by using a three-layer proxy data forwarding testing method, the automatic encryption and decryption of encrypted data, the construction of encrypted attack test traffic data, and the automatic allocation of data to the data receiver are realized, reducing manual intervention and improving overall testing efficiency.
[0100] In another or more possible embodiments, the first test request also carries the digital signature of the data sender and encrypted traffic data. Based on this, before performing step 240, the data processing method provided in this application embodiment may further include:
[0101] The encrypted attack test traffic data is re-signed using a preset signature algorithm associated with the data sender.
[0102] A second test request is generated based on the encrypted attack test traffic data that has been re-signed.
[0103] Conversely, if the first test request carries the digital signature of the data sender and does not carry encrypted traffic data, then before executing step 240, the data processing method provided in this application embodiment may further include:
[0104] The attack test traffic data is re-signed using a preset signature algorithm associated with the data sender.
[0105] Based on the attack test traffic data after re-signing, a third test request is generated and sent to the data receiver. This third test request is used to request the data receiver to perform the operation corresponding to the attack test traffic data after re-signing in the third test request, and to provide feedback on the attack test result corresponding to the operation, in the event that the data receiver has been successfully attacked.
[0106] For example, combined Figure 1 The data processing architecture involved, specifically combined with Figure 4 Steps 230 and 240 will be explained.
[0107] like Figure 4 As shown, the preset dynamic scanning tool module receives plaintext attack test traffic data and uses a front-end module to determine whether the traffic data carried in the first test request is encrypted. If the traffic data carried in the first test request is not encrypted, the front-end module determines whether the first test request carries the digital signature of the data sender. Conversely, if the traffic data carried in the first test request is encrypted, the attack test traffic data is encrypted according to the first preset encryption algorithm corresponding to the first preset decryption algorithm to obtain encrypted attack test traffic data, and the front-end module then determines whether the first test request carries the digital signature of the data sender.
[0108] Specifically, if the traffic data carried in the first test request is not encrypted traffic data and does not carry the digital signature of the data sender, then the third preset proxy address will be adjusted to the proxy address of the data receiver, and the attack test traffic data will be sent to the data receiver according to the proxy address of the data receiver.
[0109] If the traffic data carried in the first test request is encrypted traffic data and does not carry the digital signature of the data sender, then the third preset proxy address will be adjusted to the proxy address of the data receiver, and a second test request will be sent to the data receiver according to the proxy address of the data receiver. The second test request includes encrypted attack test traffic data.
[0110] If the traffic data carried in the first test request is not encrypted traffic data and carries the digital signature of the data sender, then the attack test traffic data is re-signed using a preset signature algorithm associated with the data sender; based on the re-signed attack test traffic data, a third test request is generated and sent to the data receiver according to the proxy address of the data receiver.
[0111] If the traffic data carried in the first test request is encrypted traffic data and carries the digital signature of the data sender, then the encrypted attack test traffic data is re-signed using a preset signature algorithm associated with the data sender; based on the re-signed encrypted attack test traffic data, a second test request is generated and sent to the data receiver according to the proxy address of the data receiver.
[0112] Then, relating to step 250, in one or more possible embodiments, prior to step 250, the data processing method provided in this application embodiment may further include:
[0113] Obtain the Uniform Resource Locator (URL) corresponding to the feedback traffic data;
[0114] Based on the association information between the preset unified resource location address and the preset encryption algorithm, obtain the second preset encryption algorithm associated with the unified resource location address;
[0115] The feedback traffic data is decrypted using the second preset decryption algorithm corresponding to the second preset encryption algorithm, and the attack test results are obtained.
[0116] In another or more possible embodiments, prior to step 250, the data processing method provided in this application embodiment may further include:
[0117] Parse the feedback traffic data to obtain the second configuration file;
[0118] If the second configuration file includes second encryption information, extract the second preset encryption algorithm associated with the feedback traffic data from the second encryption information;
[0119] The feedback traffic data is decrypted using the second preset decryption algorithm corresponding to the second preset encryption algorithm, and the attack test results are obtained.
[0120] In yet another possible embodiment, prior to step 250, the data processing method provided in this application embodiment may further include:
[0121] Parse the feedback traffic data to obtain the second configuration file;
[0122] When the second configuration file includes the second encryption information and the feedback traffic data carries the identity identifier of the data receiver, the second preset encryption algorithm corresponding to the identity identifier of the data receiver is obtained from the preset database according to the identity identifier of the data receiver;
[0123] The feedback traffic data is decrypted using the second preset decryption algorithm corresponding to the second preset encryption algorithm, and the attack test results are obtained.
[0124] Furthermore, prior to the step of "generating target test results based on preset test results and attack test results in feedback traffic data" mentioned in step 250 above, the data processing method may also include:
[0125] Adjust the third preset proxy address carried in the feedback traffic data to the second preset proxy address;
[0126] Invoke the preset dynamic scanning tool according to the second preset proxy address;
[0127] Based on this, step 250 above may specifically include:
[0128] The target test results can be generated by using a preset dynamic scanning tool based on preset test results and attack test results in the feedback traffic data.
[0129] Based on this, in one or more possible embodiments, step 250 may specifically include:
[0130] If the preset test results and the attack test results match, generate target test results showing that there is no execution risk in the code data of the data receiver;
[0131] In cases where the preset test results and the attack test results do not match, generate target test results indicating that the code data in the data receiver has execution risks.
[0132] It should be noted that, in the embodiments of this application, the successful attack on the data receiver includes the function of the data tester controlling the data receiver to establish a session connection with the data tester.
[0133] Exemplary, exemplary, combined Figure 1 The data processing architecture involved, specifically combined with Figure 5 Step 250 will be explained below. For example... Figure 5As shown, the back-end module receives the attack test results sent by the data receiver. Since the attack test results may also be encrypted, it can obtain the Uniform Resource Locator (URL) corresponding to the feedback traffic data. Based on the association information between the preset URL and the preset encryption algorithm, it obtains the second preset encryption algorithm associated with the URL of the feedback traffic data. Then, it decrypts the feedback traffic data using the second preset decryption algorithm corresponding to the second preset encryption algorithm to obtain the attack test results. It then adjusts the third preset proxy address carried in the feedback traffic data to the second preset proxy address. Finally, according to the second preset proxy address, it sends the attack test results to the preset dynamic scanning tool module. The preset dynamic scanning tool module can generate target test results based on the preset test results and the attack test results in the feedback traffic data. It should be noted that the digital signature of the feedback traffic data is not considered here because the preset dynamic scanning tool module does not need to perform signature verification.
[0134] The preset dynamic scanning tool module can receive attack test results. If the preset test result is "User A's communication number found: 1111111111", and the attack test result is "User A's communication number found: 1111111111 and User B's communication number found: 2222222", it indicates a mismatch between the preset test result and the attack test result, suggesting that the code data in the data receiver contains execution risks. The reverse is also true, and will not be elaborated further here.
[0135] In summary, the data processing method provided in this application embodiment receives a first test request sent by a data sender, the first test request carrying encrypted traffic data. Then, the encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain decrypted traffic data from the data sender. Furthermore, encrypted attack test traffic data is determined based on the decrypted traffic data and a first preset encryption algorithm corresponding to the first preset decryption algorithm. Next, a second test request is sent to a data receiver, the second test request including the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation. Then, upon receiving feedback traffic data from the data receiver, a target test result is generated based on the preset test result and the attack test result in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver. In this way, the data processing method provided in this application embodiment can be implemented through a three-layer proxy approach. The first-layer proxy intercepts encrypted traffic data and calls a preset decryption algorithm corresponding to the encrypted traffic data to decrypt it. Next, the second-layer proxy determines encrypted attack test traffic data (such as attack payload) based on the decrypted traffic data existing in plaintext and the preset encryption algorithm corresponding to the first preset decryption algorithm. Then, the third-layer proxy intercepts the encrypted attack test traffic data and constructs a second test request based on the encrypted attack test traffic data to transmit the encrypted attack test traffic data to the data receiver. This allows for security testing of encrypted traffic data, broadening the testing scope. Furthermore, it allows for the determination of whether there is execution risk in the code data of the data receiver based on the attack test results and preset test results in the test request fed back by the data receiver, thereby completing the test. This achieves automatic encryption and decryption of encrypted data, construction of encrypted attack test traffic data, and automatic forwarding to the corresponding module and data receiver (data tester) by automatically adjusting the proxy address, realizing automatic test allocation, reducing manual intervention, and improving overall testing efficiency.
[0136] Based on the same inventive concept, this application also provides a data processing method applied to a data receiver. (Specifically combined with...) Figure 6 Please provide a detailed explanation.
[0137] Combination Figure 6 The data processing method provided in the embodiments of this application will be described in detail.
[0138] Figure 6 This is a flowchart illustrating a data processing method based on a data receiver, as provided in an embodiment of this application.
[0139] like Figure 6 As shown, this data processing method can be applied to, for example... Figure 1 The data processing method, as shown in the data receiver diagram, may specifically include the following steps:
[0140] Step 610: Receive a second test request sent by the data tester, the second test request including encrypted attack test traffic data; Step 620: If the data receiver is successfully attacked, execute the operation corresponding to the encrypted attack test traffic data to obtain the attack test result corresponding to the operation; Step 630: Send feedback traffic data to the data tester, the feedback traffic data including the attack test result, the attack test result being used to determine whether there is an execution risk in the code data of the data receiver.
[0141] The above steps are explained in detail below:
[0142] First, relating to step 610, in one or more possible embodiments, after step 610, the data processing method may further include:
[0143] If it is determined that the data tester controls the function of establishing a session connection with the data receiver, then it is determined that the data receiver was successfully attacked.
[0144] Then, relating to step 630, in one or more possible embodiments, the second test request may carry a third preset proxy address. Based on this, step 630 may specifically include:
[0145] Feedback traffic data is sent to the data testing party according to the third preset proxy address.
[0146] Based on the same inventive concept, this application also provides a data processing device. (Specifically combined with...) Figure 7 Please provide a detailed explanation.
[0147] Figure 7 This is a schematic diagram of the structure of a data processing apparatus provided in one embodiment of this application.
[0148] like Figure 7 As shown, the data processing device 70 may specifically include:
[0149] The receiving module 701 is used to receive a first test request sent by the data sender, the first test request carrying encrypted traffic data;
[0150] The decryption module 702 is used to decrypt the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data, so as to obtain the decrypted traffic data of the data sender.
[0151] The determination module 703 is used to determine the encryption attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm;
[0152] The sending module 704 is used to send a second test request to the data receiver. The second test request includes encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation.
[0153] The generation module 705 is used to generate target test results based on preset test results and attack test results in the feedback traffic data when receiving feedback traffic data sent by the data receiver. The target test results are used to characterize whether there is an execution risk in the code data in the data receiver.
[0154] The data processing device 70 in the embodiments of this application will be described in detail below.
[0155] In one or more optional embodiments, the data processing device 70 in this application embodiment may further include a processing module and an encryption module; wherein,
[0156] The processing module is used to process the decrypted traffic data using a preset dynamic scanning tool to obtain attack test traffic data;
[0157] The encryption module is used to encrypt the attack test traffic data using a first preset encryption algorithm corresponding to the first preset decryption algorithm, so as to obtain encrypted attack test traffic data.
[0158] In another or more alternative embodiments, the data processing device 70 in this application embodiment may further include a first adjustment module and a first invocation module; wherein,
[0159] The first adjustment module is used to adjust the first preset proxy address to a second preset proxy address when the first test request carries the first preset proxy address;
[0160] The first calling module is used to call the preset dynamic scanning tool according to the second preset proxy address.
[0161] In another or more alternative embodiments, the data processing device 70 in this application embodiment may further include a second adjustment module and a second invocation module; wherein,
[0162] The second adjustment module is used to adjust the second preset proxy address to the third preset proxy address;
[0163] The second calling module is used to call the first preset encryption algorithm corresponding to the first preset decryption algorithm according to the third preset proxy address.
[0164] In another or more alternative embodiments, the data processing device 70 in this application embodiment may further include a third adjustment module; wherein,
[0165] The third adjustment module is used to adjust the third preset proxy address to the proxy address of the data receiver;
[0166] The sending module 704 can also be used to send a second test request to the data receiver according to the data receiver's proxy address.
[0167] In another or more alternative embodiments, the data processing apparatus 70 in this application embodiment may further include a processing module; wherein,
[0168] The processing module is used to re-sign the attack test traffic data using a preset signature algorithm associated with the data sender, provided that the first test request also carries the digital signature of the data sender.
[0169] The generation module 705 can also be used to generate a second test request based on the encrypted attack test traffic data that has been re-signed.
[0170] In another or more alternative embodiments, the data processing apparatus 70 in this application embodiment may further include an acquisition module; wherein,
[0171] The acquisition module is used to acquire a Uniform Resource Locator (URL); and, based on the association information between a preset URL and a preset encryption algorithm, acquire a second preset encryption algorithm associated with the URL.
[0172] The decryption module 702 can also be used to decrypt the feedback traffic data using a second preset decryption algorithm corresponding to the second preset encryption algorithm, so as to obtain the attack test results.
[0173] In another or more alternative embodiments, the generation module 705 may be specifically used to generate a target test result in which the code data in the data receiver does not pose an execution risk, provided that the preset test result and the attack test result match.
[0174] In cases where the preset test results and the attack test results do not match, generate target test results indicating that the code data in the data receiver has execution risks.
[0175] In another or more alternative embodiments, the successful attack on the data receiver includes the function of the data tester controlling the data receiver to establish a session connection with the data tester.
[0176] Based on the same inventive concept, this application also provides a data processing device based on a data receiver. (Specifically combined with...) Figure 8Please provide a detailed explanation.
[0177] Figure 8 This is a schematic diagram of the structure of a data processing device based on a data receiver provided in one embodiment of this application.
[0178] like Figure 8 As shown, the data processing device 80 may specifically include:
[0179] The receiving module 801 is used to receive a second test request sent by the data tester, the second test request including encrypted attack test traffic data;
[0180] The execution module 802 is used to perform the operation corresponding to the encrypted attack test traffic data when the data receiver is successfully attacked, and to obtain the attack test result corresponding to the operation.
[0181] The sending module 803 is used to send feedback traffic data to the data tester. The feedback traffic data includes attack test results, which are used to determine whether there is any execution risk in the code data of the data receiver.
[0182] The data processing device 80 in the embodiments of this application will be described in detail below.
[0183] In one or more optional embodiments, the data processing apparatus 80 in this application embodiment may further include a determining module; wherein,
[0184] The determination module is used to determine whether the data receiver has been successfully attacked, provided that the data tester controls the function of establishing a session connection with the data receiver.
[0185] Therefore, in this embodiment, a first test request is received from the data sender, the first test request carrying encrypted traffic data. Then, the encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain the decrypted traffic data from the data sender. Furthermore, encrypted attack test traffic data is determined based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm. Next, a second test request is sent to the data receiver, the second test request including the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data if the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation. Then, upon receiving feedback traffic data from the data receiver, a target test result is generated based on the preset test result and the attack test result in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver. In this way, the data processing method provided in this application embodiment can be implemented through a three-layer proxy approach. The first-layer proxy intercepts encrypted traffic data and calls a preset decryption algorithm corresponding to the encrypted traffic data to decrypt it. Next, the second-layer proxy determines encrypted attack test traffic data (such as attack payload) based on the decrypted traffic data existing in plaintext and the preset encryption algorithm corresponding to the first preset decryption algorithm. Then, the third-layer proxy intercepts the encrypted attack test traffic data and constructs a second test request based on the encrypted attack test traffic data to transmit the encrypted attack test traffic data to the data receiver. This allows for security testing of encrypted traffic data, broadening the testing scope. Furthermore, it allows for the determination of whether there is execution risk in the code data of the data receiver based on the attack test results and preset test results in the test request fed back by the data receiver, thereby completing the test. This achieves automatic encryption and decryption of encrypted data, automatic construction of encrypted attack test traffic data, and automatic forwarding to the data receiver, reducing manual intervention and improving overall testing efficiency.
[0186] Based on the same inventive concept, this application also provides a data processing device. (Specifically combined with...) Figure 9 Please provide a detailed explanation.
[0187] Figure 9 This is a schematic diagram of the structure of a data processing device provided in one embodiment of this application.
[0188] like Figure 9 As shown, the data processing device may include at least one of the following as described in the embodiments of this application: an electronic device, a server. The data processing device may include a processor 901 and a memory 902 storing computer program instructions.
[0189] Specifically, the processor 901 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0190] Memory 902 may include a large-capacity memory for data or instructions. For example, and not limitingly, memory 902 may include a hard disk drive (HDD), a floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or a Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 902 may include removable or non-removable (or fixed) media. Where appropriate, memory 902 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 902 is non-volatile solid-state memory. In a particular embodiment, memory 902 includes solid-state storage (ROM). Where appropriate, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically rewritable ROM (EAROM), or flash memory, or a combination of two or more of these.
[0191] The processor 901 implements any of the data processing methods described in the above embodiments by reading and executing computer program instructions stored in the memory 902.
[0192] In one example, the data processing device may further include a communication interface 903 and a bus 910. Wherein, as... Figure 9 As shown, the processor 901, memory 902, and communication interface 903 are connected through bus 910 and complete communication with each other.
[0193] The communication interface 903 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0194] Bus 910 includes hardware, software, or both, that couples components of a flow control device together. For example, and not limitingly, the bus may include Accelerated Graphics Gateway (AGP) or other graphics buses, Enhanced Industry Standard Architecture (EISA) buses, Front Side Bus (FSB), HyperTransport (HT) interconnects, Industry Standard Architecture (ISA) buses, Infinite Bandwidth Interconnects, Low Pin Count (LPC) buses, memory buses, Microchannel Architecture (MCA) buses, Peripheral Component Interconnect (PCI) buses, PCI-Express (PCI-X) buses, Serial Advanced Technology Attachment (SATA) buses, Video Electronics Standards Association Local (VLB) buses, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 910 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0195] The data processing device can execute the data processing method described in the embodiments of this application, thereby achieving the combination Figures 1 to 8 The data processing methods and apparatus described.
[0196] Furthermore, in conjunction with the data processing methods in the above embodiments, this application embodiment can provide a computer-readable storage medium for implementation. This computer-readable storage medium stores computer program instructions; when executed by a processor, these computer program instructions implement any of the data processing methods in the above embodiments.
[0197] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0198] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0199] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0200] The above are merely specific embodiments of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A data processing method, applied to a data testing platform, comprising: Receive a first test request sent by the data sender, the first test request carrying encrypted traffic data and the digital signature of the data sender; The encrypted traffic data is decrypted using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain the decrypted traffic data of the data sender. Based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm, the encryption attack test traffic data is determined; The attack test traffic data is re-signed using a preset signature algorithm associated with the data sender. A second test request is generated based on the encrypted attack test traffic data that has been re-signed. Send a second test request to the data receiver. The second test request includes the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data when the data receiver is successfully attacked, and to provide feedback on the attack test result corresponding to the operation. Upon receiving feedback traffic data from the data receiver, a target test result is generated based on preset test results and attack test results in the feedback traffic data. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver.
2. The method of claim 1, wherein, The step of determining the encryption attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm includes: The decrypted traffic data is processed by a preset dynamic scanning tool to obtain attack test traffic data; The attack test traffic data is encrypted using a first preset encryption algorithm corresponding to the first preset decryption algorithm to obtain the encrypted attack test traffic data.
3. The method according to claim 2, characterized in that, The first test request carries a first preset proxy address; Before processing the decrypted traffic data using a preset dynamic scanning tool to obtain attack test traffic data, the method further includes: Adjust the first preset proxy address to the second preset proxy address; The preset dynamic scanning tool is invoked according to the second preset proxy address.
4. The method according to claim 3, characterized in that, After encrypting the attack test traffic data using a first preset encryption algorithm corresponding to the first preset decryption algorithm to obtain the encrypted attack test traffic data, the method further includes: Adjust the second preset proxy address to the third preset proxy address; According to the third preset proxy address, the first preset encryption algorithm corresponding to the first preset decryption algorithm is invoked.
5. The method according to claim 4, characterized in that, Before sending the second test request to the data receiver, the method further includes: The third preset proxy address will be adjusted to the proxy address of the data receiver; Sending the second test request to the data receiver includes: A second test request is sent to the data receiver according to the data receiver's proxy address.
6. The method according to claim 1, characterized in that, Before generating the target test result based on the preset test results and the attack test results in the feedback traffic data, the method further includes: Obtain the unified resource location address corresponding to the feedback traffic data; Based on the association information between the preset unified resource location address and the preset encryption algorithm, obtain the second preset encryption algorithm associated with the unified resource location address; The feedback traffic data is decrypted using a second preset decryption algorithm corresponding to the second preset encryption algorithm to obtain the attack test result.
7. The method according to claim 1, characterized in that, The step of generating target test results based on preset test results corresponding to the data sender and the attack test results includes: If the preset test results and the attack test results match, a target test result is generated indicating that there is no execution risk in the code data of the data receiver; If the preset test results and the attack test results do not match, a target test result is generated indicating that the code data in the data receiver has an execution risk.
8. The method according to claim 1, characterized in that, The successful attack on the data receiver includes the function of the data tester controlling the data receiver to establish a session connection with the data tester.
9. A data processing method applied to a data receiver, comprising: Receive a second test request sent by the data tester, the second test request including encrypted attack test traffic data; The second test request re-signs the attack test traffic data using a preset signature algorithm associated with the data sender, and obtains the encrypted attack test traffic data based on the re-signed encrypted attack test traffic data. The encrypted attack test traffic data is determined by the decrypted traffic data of the data sender and a first preset encryption algorithm corresponding to the first preset decryption algorithm. The decrypted traffic data is obtained by decrypting the encrypted traffic data using the first preset decryption algorithm corresponding to the encrypted traffic data carried in the first test request sent by the data sender. If the data receiver is successfully attacked, the operation corresponding to the encrypted attack test traffic data is executed to obtain the attack test result corresponding to the operation. Feedback traffic data is sent to the data tester, and the feedback traffic data includes attack test results, which are used to determine whether there is any execution risk in the code data of the data receiver.
10. The method according to claim 9, characterized in that, After the receiving data tester sends the second test request, the method further includes: If it is determined that the data tester controls the function of establishing a session connection with the data receiver, then it is determined that the data receiver has been successfully attacked.
11. A data processing system, comprising: Data sender, data tester, and data receiver; among them, The data sender is configured to send a first test request to the data tester, the first test request carrying encrypted traffic data and the digital signature of the data sender; The data testing party, upon receiving the first test request, decrypts the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data to obtain the decrypted traffic data of the data sender; determines encrypted attack test traffic data based on the decrypted traffic data and a first preset encryption algorithm corresponding to the first preset decryption algorithm; re-signs the attack test traffic data using a preset signature algorithm associated with the data sender; generates a second test request based on the re-signed encrypted attack test traffic data; and sends the second test request to the data receiver, the second test request including the encrypted attack test traffic data. The data receiver is configured to, upon receiving the second test request and in the event that the data receiver has been successfully attacked, perform an operation corresponding to the encrypted attack test traffic data, obtain an attack test result corresponding to the operation, and send feedback traffic data to the data tester, wherein the feedback traffic data includes the attack test result. The data tester is also used to generate a target test result based on preset test results and attack test results in the feedback traffic data when receiving feedback traffic data sent by the data receiver. The target test result is used to characterize whether there is an execution risk in the code data of the data receiver.
12. A data processing apparatus, applied to a data testing unit, the apparatus comprising: The receiving module is used to receive a first test request sent by the data sender, wherein the first test request carries encrypted traffic data and the digital signature of the data sender; The decryption module is used to decrypt the encrypted traffic data using a first preset decryption algorithm corresponding to the encrypted traffic data, so as to obtain the decrypted traffic data of the data sender. The determining module is used to determine the encryption attack test traffic data based on the decrypted traffic data and the first preset encryption algorithm corresponding to the first preset decryption algorithm; The processing module is used to re-sign the attack test traffic data using a preset signature algorithm associated with the data sender; The generation module is used to generate a second test request based on the encrypted attack test traffic data that has undergone re-signing processing. The sending module is used to send a second test request to the data receiver. The second test request includes the encrypted attack test traffic data. The second test request is used to request the data receiver to perform an operation corresponding to the encrypted attack test traffic data when the data receiver is successfully attacked, and to return the attack test result corresponding to the operation. The generation module is used to generate target test results based on preset test results and attack test results in the feedback traffic data when receiving feedback traffic data sent by the data receiver. The target test results are used to characterize whether there is an execution risk in the code data of the data receiver.
13. A data processing apparatus, applied to a data receiver, comprising: The receiving module is used to receive a second test request sent by the data tester, the second test request including encrypted attack test traffic data; The second test request re-signs the attack test traffic data using a preset signature algorithm associated with the data sender, and obtains the encrypted attack test traffic data based on the re-signed encrypted attack test traffic data. The encrypted attack test traffic data is determined by the decrypted traffic data of the data sender and a first preset encryption algorithm corresponding to the first preset decryption algorithm. The decrypted traffic data is obtained by decrypting the encrypted traffic data using the first preset decryption algorithm corresponding to the encrypted traffic data carried in the first test request sent by the data sender. The execution module is used to perform an operation corresponding to the encrypted attack test traffic data when the data receiver is successfully attacked, and to obtain the attack test result corresponding to the operation. The sending module is used to send feedback traffic data to the data tester. The feedback traffic data includes attack test results, which are used to determine whether there is any execution risk in the code data of the data receiver.
14. A computing device, the device comprising: Processor and memory storing computer program instructions; When the processor executes the computer program instructions, it implements the data processing method as described in any one of claims 1-8, or the data processing method as described in any one of claims 9-10.
15. A computer-readable storage medium storing computer program instructions that, when executed by a processor, implement the data processing method as described in any one of claims 1-8, or implement the data processing method as described in any one of claims 9-10.
Citation Information
Patent Citations
Acquisition and audit analysis method and device for safety test data
CN108965037A