Application detection method, apparatus, electronic device, system, and storage medium
By intercepting and analyzing the interaction information between the application and the business server, and using a preset information database to detect violations and add automatic annotations, the problem of inaccurate detection results and low efficiency in existing technologies is solved, and efficient and accurate application compliance detection is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- JINGDONG TECH HLDG CO LTD
- Filing Date
- 2021-04-06
- Publication Date
- 2026-04-14
AI Technical Summary
Existing application detection methods lack traffic analysis, resulting in inaccurate detection results. Furthermore, users need to manually switch detection scenarios, leading to low detection efficiency and an inability to manually correct detection results.
The system uses proxy software to intercept the interaction information between the target application running on the test device and the business server. It uses a preset information database to detect violations and adds automatic annotation information when violations are detected, generating a detection report. It also supports automatic and manual adjustment of annotation information to achieve automatic switching of detection scenarios.
It improves the accuracy and efficiency of test results, can automatically switch test scenarios, and, combined with manual adjustments, enhances the comprehensiveness and accuracy of test results.
Smart Images

Figure CN115186259B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to computer technology, and more particularly to an application detection method, apparatus, electronic device, system, and storage medium. Background Technology
[0002] Enterprises' legal compliance departments need to conduct compliance testing on applications. Currently, the testing results can be obtained by dynamically scanning the application's installation package. In the process of developing this invention, the inventors found that existing dynamic scanning methods have at least the following problems: (1) lack of application traffic analysis, resulting in inaccurate testing results; (2) users need to manually switch testing scenarios, and the testing scenarios cannot be switched automatically, resulting in low testing efficiency; (3) testing results cannot be manually corrected. Summary of the Invention
[0003] This invention provides an application detection method, apparatus, electronic device, system, and storage medium that can improve the accuracy and efficiency of detection results.
[0004] In a first aspect, embodiments of the present invention provide an application detection method, the method comprising:
[0005] The first interaction information between the target application running on the test device and the business server is intercepted using proxy software.
[0006] The system uses a pre-defined information database to detect whether the first interactive information contains pre-defined violation information.
[0007] When the first interactive information contains the preset violation information, add automatic annotation information to the first interactive information;
[0008] A detection report is generated for the target application based on the first interactive information with the added automatic annotation information.
[0009] Optionally, before intercepting the first interaction information between the target application running on the test device and the business server, the following steps are also included:
[0010] A detection task created by a receiving terminal, wherein the detection task includes the identification information of the target application and the identification information of the detection scenario;
[0011] The testing task is sent to the testing device so that the testing device downloads and installs the target application according to the identification information of the target application, and controls the target application to run in the corresponding testing scenario according to the identification information of the testing scenario, wherein the testing scenario includes multiple scenarios.
[0012] Optionally, the method further includes:
[0013] The detection report is sent to the terminal.
[0014] Optionally, before generating a detection report for the target application based on the first interaction information with the added automatic annotation information, the method further includes:
[0015] Determine whether manual adjustment of the automatically labeled information is required;
[0016] When manual adjustment of the automatic annotation information is required, the manual adjustment information of the automatic annotation information is obtained. The manual adjustment information includes deletion information or modification information of the automatic annotation information.
[0017] Replace the automatically added annotation information for the first interactive information with the manually adjusted information;
[0018] The step of generating a detection report for the target application based on the first interaction information with the added automatic annotation information includes:
[0019] The detection report is generated based on the first interactive information with the added manual adjustment information.
[0020] Optionally, before generating a detection report for the target application based on the first interaction information with the added automatic annotation information, the method further includes:
[0021] Obtain manually labeled information added to the second interaction information between the target application and the business server from the terminal;
[0022] The step of generating a detection report for the target application based on the first interaction information with the added automatic annotation information includes:
[0023] The detection report is generated based on the second interactive information with added manual annotation information and the first interactive information with added automatic annotation information.
[0024] Optionally, the step of detecting whether the first interactive information contains preset violation information using a preset information database includes:
[0025] Detect whether there is any violation information in the preset information database that matches the first interaction information;
[0026] If a violation information matching the first interactive information exists in the preset information database, it is determined that the first interactive information contains the preset violation information.
[0027] Optionally, the first interaction information includes request information sent by the target application to the business server and response information returned by the business server to the target application.
[0028] In a second aspect, embodiments of the present invention provide an application detection device, comprising:
[0029] The interception module is used to intercept the first interaction information between the target application running on the test device and the business server.
[0030] The detection module is used to detect whether the first interactive information contains preset violation information using a preset information database;
[0031] The annotation module is used to add automatic annotation information to the first interactive information when the first interactive information contains the preset violation information;
[0032] The generation module is used to generate a detection report for the target application based on the first interactive information with the added automatic annotation information.
[0033] Thirdly, embodiments of the present invention also provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the application detection method as described in any of the embodiments of the present invention.
[0034] Fourthly, embodiments of the present invention also provide an application detection system, a testing device, a business server, a terminal, and an electronic device for performing the application detection method as described in any of the embodiments of the present invention.
[0035] Fifthly, embodiments of the present invention also provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the application detection method as described in any of the embodiments of the present invention.
[0036] In this embodiment of the invention, the first interaction information between the target application running on the test device and the business server can be intercepted. A preset information database is used to detect whether the first interaction information contains preset violation information. If the first interaction information contains preset violation information, automatic annotation information is added to the first interaction information, and a detection report is generated for the target application based on the first interaction information with the added automatic annotation information. In other words, this embodiment of the invention can perform violation analysis on the interaction information between the application and the business server, thereby generating a detection report. That is, this embodiment of the invention provides a solution for performing traffic analysis on applications to achieve compliance detection, improving the accuracy of the detection results.
[0037] Furthermore, by creating a detection task containing identification information of the detection scenario through the terminal and sending the detection task to the testing equipment, the testing equipment can control the target application to run in different detection scenarios during the detection process, realizing automatic switching of detection scenarios and improving detection efficiency.
[0038] In addition, it can obtain manual adjustment information from the automatically labeled information, and replace the automatically labeled information added to the interaction information between the target application and the business server with the manually adjusted information to generate a detection report, so that the detection results can be manually corrected, further improving the accuracy of the detection results.
[0039] In addition, the test report can be generated by combining interactive information with added manual annotations and interactive information with added automatic annotations. This combines manual and automatic testing to improve the comprehensiveness and accuracy of the test results. Attached Figure Description
[0040] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0041] Figure 1 This is a flowchart illustrating an application detection method provided in an embodiment of the present invention.
[0042] Figure 2 This is another flowchart illustrating the application detection method provided in this embodiment of the invention.
[0043] Figure 3 This is a schematic diagram of the task creation interface provided in an embodiment of the present invention.
[0044] Figure 4 This is a schematic diagram of the effect of the test report provided in an embodiment of the present invention.
[0045] Figure 5 This is another flowchart illustrating the application detection method provided in this embodiment of the invention.
[0046] Figure 6 This is a schematic diagram of the application detection device provided in an embodiment of the present invention.
[0047] Figure 7 This is a schematic diagram of the application detection system provided in an embodiment of the present invention.
[0048] Figure 8This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0049] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present invention, and not all of the structures.
[0050] Figure 1 This is a flowchart illustrating an application detection method provided in an embodiment of the present invention. This method can be executed by an application detection device provided in this embodiment, which can be implemented in software and / or hardware. In a specific embodiment, the device can be integrated into a server. To distinguish it from the business server mentioned below, the server into which the device is integrated can be referred to as a scanning server. The following embodiments will illustrate this using the example of the device being integrated into a scanning server. (Reference) Figure 1 The method may specifically include the following steps:
[0051] Step 101: Capture the first interaction information between the target application running on the test device and the business server.
[0052] For example, the testing device can be a mobile phone, personal computer (PC), tablet, laptop, desktop computer, or other computer device with storage units and a microprocessor, possessing computing capabilities. The target application can refer to the application that needs to be tested for compliance. The target application can be an Android (Google's mobile operating system) application or an iOS (Apple's mobile operating system) application; the following explanation uses an Android application as the target application. The business server can be a backend server that provides data support for the target application.
[0053] In a specific implementation, when the target application runs on the test device, the target application sends request information to the business server, and the business server sends response information back to the test device. In this embodiment of the invention, the scanning server can intercept these request and response information, that is, the first interaction information includes these request and response information.
[0054] Furthermore, in this embodiment of the invention, to ensure data security, the first interaction information can be based on the HTTPS (HyperText Transfer Protocol over Secure Socket Layer) protocol. HTTPS is an HTTP channel with security as its goal; simply put, it's a secure version of HTTP, that is, HTTP with the addition of a Secure Sockets Layer (SSL). The security foundation of HTTPS is SSL, therefore, the details of encryption require SSL. In specific implementation, when the first interaction information is based on the HTTPS protocol, the test device can pre-download and install the SSL certificate from the scanning server to facilitate subsequent data parsing.
[0055] It should be noted that, in this embodiment of the invention, the first interaction information between the target application and the business server can be intercepted without affecting the normal communication between the target application and the business server. For example, proxy software can be installed on the scanning server to intercept the first interaction information. After intercepting the first interaction information, the first interaction information can be backed up. After the backup is completed, the first interaction information can be forwarded to the corresponding device (test device or business server).
[0056] Step 102: Use a preset information database to detect whether the first interactive information contains preset violation information.
[0057] For example, the preset information database can contain a large amount of preset violation information. This preset violation information can involve users' personal or privacy information, such as their mobile phone number, mobile phone serial number (IMEI), media access control address (MAC), internet protocol address (IP), etc. Specifically, preset violation information can be collected in advance through manual sorting and / or through web crawling, and a preset information database can be built based on the obtained preset violation information.
[0058] When using a preset information database to detect whether the first interactive information contains preset violation information, it is possible to detect whether there is violation information in the preset information database that matches the first interactive information. If there is violation information in the preset information database that matches the first interactive information, it is determined that the first interactive information contains preset violation information.
[0059] Step 103: When the first interactive information contains preset violation information, add automatic annotation information to the first interactive information.
[0060] Specifically, for example, a tag string (such as "system tag") can be added to the first interactive information. In addition, a tag reason (such as the name and type of the specific violation information contained) can be added to the first interactive information, so that interactive information containing preset violation information and interactive information not containing preset violation information can be distinguished.
[0061] Step 104: Generate a detection report for the target application based on the first interaction information with added automatic annotation information.
[0062] In practice, for example, the first interactive information with added automatic annotations can be combined with a preset report template to generate a test report for the target application. After generating the test report, it can be sent to a terminal, which can be a computer device with storage units and a microprocessor installed, such as a PC, tablet, laptop, or desktop computer. Inspectors can view the test report through the terminal, thereby achieving compliance testing of the application.
[0063] In this embodiment of the invention, the first interaction information between the target application running on the test device and the business server can be intercepted. A preset information database is used to detect whether the first interaction information contains preset violation information. If the first interaction information contains preset violation information, automatic annotation information is added to the first interaction information, and a detection report is generated for the target application based on the first interaction information with the added automatic annotation information. In other words, this embodiment of the invention can perform violation analysis on the interaction information between the application and the business server, thereby generating a detection report. That is, this embodiment of the invention provides a solution for performing traffic analysis on applications to achieve compliance detection, improving the accuracy of the detection results.
[0064] In one specific embodiment, the automatic detection method provided by the present invention can also be combined with manual adjustment to improve the accuracy and comprehensiveness of the detection results, i.e., as shown in the example. Figure 2 As shown, another application detection method provided by an embodiment of the present invention may include the following steps:
[0065] Step 201: Receive the detection task created by the terminal. The detection task includes the identification information of the target application and the identification information of the detection scene.
[0066] In practice, testing personnel can create testing tasks through the task creation interface on the terminal. A testing task can include the identification information of the target application to be tested and the identification information of the testing scenario. When there are multiple testing tasks, the testing task can also include the identification information of the testing task itself. Specifically, the identification information of the target application can include the name and version number of the target application; the identification information of the testing scenario can include the name and scenario code of the testing scenario; and the identification information of the testing task can include the name and type of the testing task. In this embodiment of the invention, the testing task can be a traffic detection task.
[0067] In one specific embodiment, the task creation interface may be as follows: Figure 3 As shown, inspectors can input or select information in the corresponding locations to create inspection tasks. The connection key (i.e., the test code) can be dynamically generated by the scanning server.
[0068] Step 202: Send a detection task to the test device so that the test device can download and install the target application according to the identification information of the target application, and control the target application to run in the corresponding detection scenario according to the identification information of the detection scenario.
[0069] Specifically, after receiving the testing task, the testing device can check whether it has the target application installed. If the target application is not installed, it can download and install it from the App Store or a scanning server based on the target application's identification information. If the target application is already installed, it directly enters the testing process. During the testing process, the testing device can control the target application to run in the corresponding testing scenario based on the scenario's identification information. These testing scenarios may include, but are not limited to: startup scenario, login scenario, foreground scenario, home button to background scenario, home button to foreground scenario, lock screen scenario, unlock scenario, communication scenario, and device restart scenario. By controlling the target application to run in different testing scenarios, the comprehensiveness of the testing results can be improved.
[0070] Specifically, in this embodiment of the invention, the process of the testing device executing the detection task can be understood as being implemented through a monitoring program. Specifically, root privileges can be obtained on the testing device, then the Xposed framework can be installed to take over the initial process of the virtual machine, and subsequently the monitoring program can be installed on the testing device to execute the detection task, thereby providing data support for application detection on the scanning server side.
[0071] Step 203: Capture the first interaction information between the target application running on the test device and the business server.
[0072] In a specific implementation, when the target application runs on the test device, the target application sends request information to the business server, and the business server sends response information back to the test device. In this embodiment of the invention, the scanning server can intercept these request and response information, that is, the first interaction information includes these request and response information.
[0073] Step 204: Use a preset information database to detect whether the first interactive information contains preset violation information.
[0074] For example, the preset information database may contain a large amount of preset violation information. This preset violation information may involve user privacy information, such as the user's mobile phone number, IMEI number, MAC address, and IP address. In a specific embodiment, the preset information database may include, for example, the following information: {"imei":"866817038201851","imsi":"460025015753096","mac":"94:65:2D:E1:7F:43","ip":"10.30.159.5"}.
[0075] Specifically, it can detect whether there is any violation information in the preset information database that matches the first interactive information. If there is violation information in the preset information database that matches the first interactive information, it is determined that the first interactive information contains the preset violation information. For example, if one or more pieces of information contained in the first interactive information belong to the preset information database, it can be considered that there is violation information in the preset information database that matches the first interactive information.
[0076] Step 205: When the first interactive information contains preset violation information, add automatic annotation information to the first interactive information.
[0077] Specifically, for example, a tag string (such as "system tag") can be added to the first interactive information. In addition, a tag reason (such as the name and type of the specific violation information contained) can be added to the first interactive information, so that interactive information containing preset violation information and interactive information not containing preset violation information can be distinguished.
[0078] Step 206: Determine whether manual adjustment of the automatic annotation information is required. If so, proceed to step 207; otherwise, proceed to step 209.
[0079] Specifically, for example, the first interactive information with added automatic annotations can be displayed to testers through the terminal's preview interface for them to review, thereby determining whether the testers need to manually adjust the automatic annotation information.
[0080] For example, if the tester does not approve of the automatically added annotation information for the first interaction information, they can delete the automatically added annotation information; or if the tester believes that the automatically added annotation information for the first interaction information is inaccurate, they can modify the automatically added annotation information (such as changing the annotation reason).
[0081] Step 207: Obtain manual adjustment information for the automatically labeled information.
[0082] In practice, the manual adjustment information may include deletion information or modification information for automatically labeled information.
[0083] Step 208: Replace the automatically added annotation information for the first interactive information with manually adjusted information.
[0084] For example, if the manual adjustment information is deletion information for automatically labeled information, the automatically labeled information added to the first interactive information can be directly deleted; if the manual adjustment information is modification information for automatically labeled information, the automatically labeled information added to the first interactive information can be modified according to the modification information.
[0085] Step 209: Generate the test report.
[0086] In one specific embodiment, the generated test report can be as follows: Figure 4 As shown, the test report can display the annotation information added for the first interactive information. For automatic annotation information that is automatically annotated by the system and does not require manual modification, the string "system annotation" can be displayed. For automatic annotation information that is automatically annotated by the system but has been manually modified, the string "manual annotation" can be displayed.
[0087] Step 210: Send the test report to the terminal.
[0088] By reviewing the inspection report, inspectors can identify any violations in the interaction between the target application and the business server during its operation, thus providing a valuable reference for compliance testing of the application.
[0089] Furthermore, in this embodiment of the invention, during the detection process, domestic traffic and overseas traffic can be distinguished and detected separately. Domestic traffic can be data traffic sent to a database of IP addresses corresponding to domestic domain names, while overseas traffic can be data traffic sent to a database of IP addresses corresponding to foreign domain names. The IP address can be used to locate the longitude and latitude, thereby determining whether it is domestic or overseas traffic.
[0090] This invention provides a solution for compliance testing of applications by analyzing the interaction information between applications and business servers, thereby generating a detection report. In other words, this invention provides a solution for compliance testing of applications by performing traffic analysis, thereby improving the accuracy of the detection results.
[0091] Furthermore, by creating a detection task containing identification information of the detection scenario through the terminal and sending the detection task to the testing equipment, the testing equipment can control the target application to run in different detection scenarios during the detection process, realizing automatic switching of detection scenarios and improving detection efficiency.
[0092] In addition, it can obtain manual adjustment information from the automatically labeled information, and replace the automatically labeled information added to the interaction information between the target application and the business server with the manually adjusted information to generate a detection report, so that the detection results can be manually corrected, further improving the accuracy of the detection results.
[0093] In one specific embodiment, the automatic detection method of the present invention can also be combined with manual detection to improve the accuracy and comprehensiveness of the detection results, i.e., as shown in the example. Figure 5 As shown, another application detection method provided by an embodiment of the present invention may include the following steps:
[0094] Step 301: Receive the detection task created by the terminal. The detection task includes the identification information of the target application and the identification information of the detection scene.
[0095] In practice, testing personnel can create testing tasks through the task creation interface on the terminal. A testing task can include the identification information of the target application to be tested and the identification information of the testing scenario. When there are multiple testing tasks, the testing task can also include the identification information of the testing task itself. Specifically, the identification information of the target application can include the name and version number of the target application; the identification information of the testing scenario can include the name and scenario code of the testing scenario; and the identification information of the testing task can include the name and type of the testing task. In this embodiment of the invention, the testing task can be a traffic detection task.
[0096] Step 302: Send a detection task to the test device so that the test device can download and install the target application according to the identification information of the target application, and control the target application to run in the corresponding detection scenario according to the identification information of the detection scenario.
[0097] Specifically, after receiving the testing task, the testing device can check whether it has the target application installed. If the target application is not installed, it can download and install it from the app store or scanning server based on the target application's identification information. If the target application is already installed, it directly enters the testing process. During the testing process, the testing device can control the target application to run in the corresponding testing scenario based on the scenario's identification information. These testing scenarios may include, but are not limited to: startup scenario, login scenario, foreground scenario, home button to background scenario, home button to foreground scenario, lock screen scenario, unlock scenario, communication scenario, and device restart scenario. By controlling the target application to run in different testing scenarios, the comprehensiveness of the testing results can be improved.
[0098] Step 303: Capture the first interaction information between the target application running on the test device and the business server.
[0099] In a specific implementation, when the target application runs on the test device, the target application sends request information to the business server, and the business server sends response information back to the test device. In this embodiment of the invention, the scanning server can intercept these request and response information, that is, the first interaction information includes these request and response information.
[0100] Step 304: Use a preset information database to detect whether the first interactive information contains preset violation information.
[0101] For example, the preset information database may contain a large amount of preset violation information, which may involve user privacy information. Specifically, it can detect whether there is any violation information in the preset information database that matches the first interaction information. If there is violation information in the preset information database that matches the first interaction information, it is determined that the first interaction information contains preset violation information. For instance, if one or more pieces of information contained in the first interaction information belong to the preset information database, it can be considered that there is violation information in the preset information database that matches the first interaction information.
[0102] Step 305: When the first interactive information contains preset violation information, add automatic annotation information to the first interactive information.
[0103] Specifically, for example, a tag string (such as "system tag") can be added to the first interactive information. In addition, a tag reason (such as the name and type of the specific violation information contained) can be added to the first interactive information, so that interactive information containing preset violation information and interactive information not containing preset violation information can be distinguished.
[0104] Step 306: Obtain the manually labeled information added for the second interaction information between the target application and the business server.
[0105] Step 307: Generate a detection report based on the second interactive information with added manual annotation information and the first interactive information with added automatic annotation information.
[0106] In practice, after intercepting the interaction information between the target application and the business server, the scanning server can: firstly, provide this interaction information to testers via a terminal for manual annotation; secondly, perform automatic detection and annotation on this interaction information; and finally, the server can merge the manual and automatic annotations to generate a detection report. If both manual and automatic annotations exist for the same interaction information, the manual annotation should prevail.
[0107] Step 308: Send the test report to the terminal.
[0108] By reviewing the inspection report, inspectors can identify any violations in the interaction between the target application and the business server during its operation, thus providing a valuable reference for compliance testing of the application.
[0109] This invention provides a solution for compliance testing of applications by analyzing the interaction information between applications and business servers, thereby generating a detection report. In other words, this invention provides a solution for compliance testing of applications by performing traffic analysis, thereby improving the accuracy of the detection results.
[0110] Furthermore, by creating a detection task containing identification information of the detection scenario through the terminal and sending the detection task to the testing equipment, the testing equipment can control the target application to run in different detection scenarios during the detection process, realizing automatic switching of detection scenarios and improving detection efficiency.
[0111] In addition, the test report can be generated by combining interactive information with added manual annotations and interactive information with added automatic annotations. This combines manual and automatic testing to improve the comprehensiveness and accuracy of the test results.
[0112] It should be noted that the interface diagrams shown in the embodiments of this disclosure are intended to illustrate the monitoring methods provided by the embodiments of the present invention, and the messages presented on the specific interfaces (including but not limited to text, images, emoticons, etc.) do not constitute a limitation on the solution.
[0113] Figure 6 This is a structural diagram of an application detection apparatus provided in an embodiment of the present invention. This apparatus is suitable for executing the application detection method provided in the embodiment of the present invention. Figure 6As shown, the device may specifically include:
[0114] The interception module 401 is used to intercept the first interaction information between the target application running on the test device and the business server.
[0115] Detection module 402 is used to detect whether the first interactive information contains preset violation information using a preset information database;
[0116] The annotation module 403 is used to add automatic annotation information to the first interactive information when the first interactive information contains the preset violation information;
[0117] The generation module 404 is used to generate a detection report for the target application based on the first interactive information with the added automatic annotation information.
[0118] In one embodiment, the device further includes:
[0119] A receiving module is used to receive a detection task created by a terminal, wherein the detection task includes the identification information of the target application and the identification information of the detection scene;
[0120] The sending module is used to send the detection task to the testing device, so that the testing device can download and install the target application according to the identification information of the target application, and control the target application to run in the corresponding detection scenario according to the identification information of the detection scenario.
[0121] In one embodiment, the sending module is further configured to send the detection report to the terminal.
[0122] In one embodiment, the device further includes:
[0123] An adjustment module is used to determine whether the automatic annotation information needs to be manually adjusted; when manual adjustment of the automatic annotation information is required, the module obtains the manual adjustment information of the automatic annotation information; and replaces the automatic annotation information added to the first interactive information with the manual adjustment information.
[0124] The generation module 404 generates a detection report for the target application based on the first interactive information with the added automatic annotation information, including:
[0125] The detection report is generated based on the first interactive information with the added manual adjustment information.
[0126] In one embodiment, the device further includes:
[0127] The acquisition module is used to acquire manually labeled information added to the second interaction information between the target application and the business server;
[0128] The generation module 404 generates a detection report for the target application based on the first interactive information with the added automatic annotation information, including:
[0129] The detection report is generated based on the second interactive information with added manual annotation information and the first interactive information with added automatic annotation information.
[0130] In one embodiment, the detection module 402 uses a preset information database to detect whether the first interactive information contains preset violation information, including:
[0131] Detect whether there is any violation information in the preset information database that matches the first interaction information;
[0132] If a violation information matching the first interactive information exists in the preset information database, it is determined that the first interactive information contains the preset violation information.
[0133] In one embodiment, the first interaction information includes request information sent by the target application to the business server and response information fed back by the business server to the target application.
[0134] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional modules is merely an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the functional modules described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0135] The apparatus of this invention can intercept first interaction information between a target application running on a test device and a business server. It uses a preset information database to detect whether the first interaction information contains preset violation information. If the first interaction information contains preset violation information, it adds automatic annotation information to the first interaction information and generates a detection report for the target application based on the first interaction information with the added automatic annotation information. In other words, the apparatus of this invention can perform violation analysis on the interaction information between the application and the business server to generate a detection report. This means that this invention provides a solution for performing traffic analysis on applications to achieve compliance detection, improving the accuracy of the detection results.
[0136] Furthermore, by creating a detection task containing identification information of the detection scenario through the terminal and sending the detection task to the testing equipment, the testing equipment can control the target application to run in different detection scenarios during the detection process, realizing automatic switching of detection scenarios and improving detection efficiency.
[0137] In addition, it can obtain manual adjustment information from the automatically labeled information, and replace the automatically labeled information added to the interaction information between the target application and the business server with the manually adjusted information to generate a detection report, so that the detection results can be manually corrected, further improving the accuracy of the detection results.
[0138] In addition, the test report can be generated by combining interactive information with added manual annotations and interactive information with added automatic annotations. This combines manual and automatic testing to improve the comprehensiveness and accuracy of the test results.
[0139] This invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the application detection method provided in any of the above embodiments.
[0140] This invention also provides a computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the application detection method provided in any of the above embodiments.
[0141] Figure 7 An exemplary system architecture for which the application detection method or application detection apparatus of the present invention can be applied is shown.
[0142] like Figure 7 As shown, the system architecture may include a terminal 501, a test device 502, a business server 503, and an electronic device 504 for executing the application detection method of the embodiments of the present invention.
[0143] Terminal 501, test equipment 502, business server 503, and electronic device 504 are interconnected by a network. The network serves as a medium for providing communication links and can include various connection types, such as wired, wireless communication links, or fiber optic cables. The interactions between the various devices are described in the preceding embodiments and will not be repeated here.
[0144] The following is for reference. Figure 8 It shows a schematic diagram of the structure of a computer system 600 suitable for implementing an electronic device according to embodiments of the present invention. Figure 8 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.
[0145] like Figure 8 As shown, the computer system 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 602 or programs loaded from storage section 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the system 600. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0146] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.
[0147] In particular, according to the embodiments disclosed in this invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit (CPU) 601, it performs the functions defined above in the system of this invention.
[0148] It should be noted that the computer-readable medium shown in this invention can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0149] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0150] The modules and / or units described in the embodiments of the present invention can be implemented in software or hardware. The described modules and / or units can also be housed in a processor; for example, a processor can be described as including an interception module, a detection module, an annotation module, and a generation module. The names of these modules do not necessarily limit the module itself.
[0151] In another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiments; or it may exist independently and not assembled into the device. The computer-readable medium carries one or more programs, which, when executed by the device, cause the device to: intercept first interaction information between a target application running on a test device and a business server; detect whether the first interaction information contains preset violation information using a preset information database; when the first interaction information contains the preset violation information, add automatic annotation information to the first interaction information; and generate a detection report for the target application based on the first interaction information with the added automatic annotation information.
[0152] According to the technical solution of this invention, the first interaction information between a target application running on a test device and a business server can be intercepted. A preset information database is used to detect whether the first interaction information contains preset violation information. If the first interaction information contains preset violation information, automatic annotation information is added to the first interaction information, and a detection report is generated for the target application based on the first interaction information with the added automatic annotation information. In other words, this invention can perform violation analysis on the interaction information between the application and the business server to generate a detection report. Specifically, this invention provides a solution for performing traffic analysis on applications to achieve compliance detection, thus improving the accuracy of the detection results.
[0153] Furthermore, by creating a detection task containing identification information of the detection scenario through the terminal and sending the detection task to the testing equipment, the testing equipment can control the target application to run in different detection scenarios during the detection process, realizing automatic switching of detection scenarios and improving detection efficiency.
[0154] In addition, it can obtain manual adjustment information from the automatically labeled information, and replace the automatically labeled information added to the interaction information between the target application and the business server with the manually adjusted information to generate a detection report, so that the detection results can be manually corrected, further improving the accuracy of the detection results.
[0155] In addition, the test report can be generated by combining interactive information with added manual annotations and interactive information with added automatic annotations. This combines manual and automatic testing to improve the comprehensiveness and accuracy of the test results.
[0156] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. An application detection method, characterized in that, Applied to a scanning server, wherein the scanning server has agent software installed, including: The system receives a detection task created by a receiving terminal. The detection task includes the identification information of a target application and the identification information of a detection scenario. The system sends the detection task to a testing device, which has a monitoring program installed. This monitoring program installs the Xposed framework by acquiring root access to the testing device and then taking over the initial virtual machine process. The testing device executes the detection task through the monitoring program, including: the monitoring program checks whether the target application is installed on the testing device; if the target application is not installed, it downloads and installs the target application based on its identification information; if the target application is installed, it controls the target application to run in the corresponding detection scenario based on the identification information of the detection scenario. The detection scenario includes at least one of the following: startup scenario, login scenario, foreground scenario, background switch scenario, foreground switch scenario, screen lock scenario, unlock scenario, communication scenario, and device restart scenario. The proxy software is used to intercept the first interaction information between the target application running on the test device and the business server. The first interaction information includes the request information sent by the target application to the business server and the response information fed back by the business server to the target application. The first interaction information is backed up. After the backup is completed, the first interaction information is forwarded to the test device or the business server. Use a preset information database to detect whether the backed-up first interaction information contains preset violation information; When the first interactive information contains the preset violation information, add automatic annotation information to the first interactive information; A detection report is generated for the target application based on the first interactive information with the added automatic annotation information.
2. The application detection method according to claim 1, characterized in that, The method further includes: The detection report is sent to the terminal.
3. The application detection method according to claim 1 or 2, characterized in that, Before generating a detection report for the target application based on the first interactive information with the added automatic annotation information, the method further includes: Determine whether manual adjustment of the automatically labeled information is required; When manual adjustment of the automatic annotation information is required, obtain the manual adjustment information of the automatic annotation information; Replace the automatically added annotation information for the first interactive information with the manually adjusted information; The step of generating a detection report for the target application based on the first interaction information with the added automatic annotation information includes: The detection report is generated based on the first interactive information with the added manual adjustment information.
4. The application detection method according to claim 1 or 2, characterized in that, Before generating a detection report for the target application based on the first interactive information with the added automatic annotation information, the method further includes: Obtain manually labeled information added to the second interaction information between the target application and the business server; The step of generating a detection report for the target application based on the first interaction information with the added automatic annotation information includes: The detection report is generated based on the second interactive information with added manual annotation information and the first interactive information with added automatic annotation information.
5. The application detection method according to claim 1, characterized in that, The step of detecting whether the first interactive information contains preset violation information using a preset information database includes: Detect whether there is any violation information in the preset information database that matches the first interaction information; If a violation information matching the first interactive information exists in the preset information database, it is determined that the first interactive information contains the preset violation information.
6. An application detection device, characterized in that, Applied to a scanning server, wherein the scanning server has agent software installed, including: The receiving module is used to receive a detection task created by the terminal, wherein the detection task includes the identification information of the target application and the identification information of the detection scene; A sending module is used to send the detection task to a test device. The test device has a monitoring program installed on it. This monitoring program obtains root access to the test device and then installs the Xposed framework, taking over the virtual machine's initial process. The test device executes the detection task through the monitoring program, including: the monitoring program detecting whether the target application is installed on the test device; if the target application is not installed, downloading and installing it based on its identification information; if the target application is installed, controlling the target application to run in the corresponding detection scenario based on the identification information of the detection scenario; the detection scenario includes at least one of the following: startup scenario, login scenario, foreground scenario, background switch scenario, foreground switch scenario, screen lock scenario, unlock scenario, communication scenario, and device restart scenario. The interception module is used to intercept the first interaction information between the target application running on the test device and the business server using the proxy software. The first interaction information includes request information sent by the target application to the business server and response information fed back by the business server to the target application. The first interaction information is backed up, and after the backup is completed, the first interaction information is forwarded to the test device or the business server. The detection module is used to detect whether the backup of the first interactive information contains preset violation information using a preset information database; The annotation module is used to add automatic annotation information to the first interactive information when the first interactive information contains the preset violation information; The generation module is used to generate a detection report for the target application based on the first interactive information with the added automatic annotation information.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the application detection method as described in any one of claims 1 to 5.
8. An application monitoring system, characterized in that, It includes testing equipment, a business server, a terminal, and an electronic device for performing the application detection method as described in any one of claims 1 to 5.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the application detection method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Semi-automatic precise-marking method for image based on deep learning
CN107153822A
Compliance detection method and device
CN109739748A
Big data analysis processing method and system based on terminal
CN110084064A
Resource configuration method and related product
WO2019047709A1