CN110300119A - A kind of method and electronic equipment of validating vulnerability - Google Patents
A kind of method and electronic equipment of validating vulnerability Download PDFInfo
- Publication number
- CN110300119A CN110300119A CN201910616324.0A CN201910616324A CN110300119A CN 110300119 A CN110300119 A CN 110300119A CN 201910616324 A CN201910616324 A CN 201910616324A CN 110300119 A CN110300119 A CN 110300119A
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- local
- remote
- verification
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012795 verification Methods 0.000 claims description 91
- 230000004044 response Effects 0.000 claims description 58
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 4
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
The present invention provides a kind of method of validating vulnerability and electronic equipments, can not verify in the prior art to the local loophole hidden in destination host for solving the problems, such as.It include: to obtain long-range loophole serial number;Long-range loophole serial number is available, and local validating vulnerability mark is not true, between the length of the payload of the length long-range loophole corresponding with long-range loophole serial number of the vulnerability exploit program of determining local loophole relationship;The length of the vulnerability exploit program of local loophole is less than the length of the payload of long-range loophole, and loophole counter is less than current local loophole number, and local loophole counter is selected to add the one corresponding target local loophole of value;The vulnerability exploit program of target local loophole is stored in the payload of long-range loophole;The vulnerability exploit program of long-range loophole is sent, the target local loophole being stored in the payload of long-range loophole is verified in long-range validating vulnerability success;The success of target local validating vulnerability, sends target local validating vulnerability successful information.
Description
Technical Field
The invention relates to the technical field of computers, in particular to a vulnerability verification method and electronic equipment.
Background
With the development of internet technology, great convenience is brought to the life of users, but as various vulnerabilities in a network space emerge endlessly, user assets are extremely vulnerable to threats, important materials and secret information are also damaged, and specifically, vulnerability attacks are divided into two forms, namely remote vulnerability attacks and local vulnerability attacks according to attack paths, wherein the remote vulnerability attacks are usually used for remote attacks of hackers, for example, buffer overflow vulnerability can enable the hackers to remotely obtain system authority of a target host and steal all data in the target host; the local vulnerability is generally used for authority promotion in a Trojan attack process, for example, a hacker uses office software vulnerability to deliver a document type Trojan, and after a user runs the document, the Trojan is implanted, so that a target host is controlled for a long time. Therefore, remote vulnerability verification and local vulnerability verification need to be performed on a computer network of a user, and vulnerabilities are patched, so that vulnerability attacks are reduced, and asset and information security of the user is protected.
In the prior art, a security manufacturer can only verify a remote vulnerability of a target host through a vulnerability scanner and cannot verify a local vulnerability hidden in the target host.
In summary, how to verify the local vulnerability is a problem that needs to be solved at present.
Disclosure of Invention
In view of this, the present invention provides a vulnerability verification method and an electronic device, which are used to solve the problem of how to verify a local vulnerability in the prior art.
According to a first aspect of the embodiments of the present invention, there is provided a method for vulnerability verification, including: acquiring a remote vulnerability serial number; determining a local vulnerability verification flag in response to the remote vulnerability sequence number being available; determining a relationship between the length of the exploit program of the local vulnerability and the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number in response to the local vulnerability verification flag not being true; determining the relation between a local vulnerability counter and the current local vulnerability number in response to the fact that the length of the vulnerability utilization program of the local vulnerability is smaller than the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number; in response to the fact that the vulnerability counter is smaller than the number of the current local vulnerabilities, selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter; storing the vulnerability exploiting program of the target local vulnerability into the effective load of the remote vulnerability; sending the vulnerability exploiting program of the remote vulnerability and verifying the remote vulnerability; verifying the target local vulnerability stored in the payload of the remote vulnerability in response to successful verification of the remote vulnerability; and responding to the successful verification of the target local vulnerability, and sending successful verification information of the target local vulnerability.
In an embodiment, before obtaining the remote vulnerability sequence number, the method further includes: in response to the presence of the remote vulnerability, determining at least one of the remote vulnerabilities; and sequencing according to the length of the effective load of the at least one remote vulnerability, and determining the sequencing sequence of the at least one remote vulnerability and the corresponding sequence number.
In an embodiment, the determining a local vulnerability verification flag in response to the availability of the remote vulnerability sequence number specifically includes: the local vulnerability is determined in response to the remote vulnerability sequence number being available; and determining the local vulnerability verification flag in response to the local vulnerability not being acquired.
In one embodiment, after determining the local vulnerability in response to the remote vulnerability sequence number being available, the method further includes: and responding to the completion of the local vulnerability acquisition, and determining that the local vulnerability verification is completed.
In one embodiment, after determining the local vulnerability verification flag in response to the availability of the remote vulnerability sequence number, the method further includes: and responding to the fact that the local vulnerability verification mark is true, sending the vulnerability utilization program of the remote vulnerability, and verifying the remote vulnerability.
In an embodiment, after the relationship between the length of the exploit program of the local vulnerability and the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number, the method further includes: and generating a path of the exploit program of the local vulnerability in response to the fact that the length of the exploit program of the local vulnerability is greater than or equal to the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number.
In an embodiment, the selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter specifically includes: selecting a target local vulnerability which can be detected by a port and corresponds to the value obtained by adding one to the local vulnerability counter; or selecting a target local vulnerability of the path of the vulnerability exploiting program which corresponds to the value of adding one to the local vulnerability counter.
In one embodiment, after the exploit program that sends the remote vulnerability verifies the remote vulnerability, the method further includes: and responding to the failure of the remote vulnerability verification, and acquiring a remote vulnerability serial number.
According to a second aspect of the embodiments of the present invention, there is provided an apparatus for vulnerability verification, including: the acquisition unit is used for acquiring a remote vulnerability serial number; the judging unit is used for responding to the availability of the remote vulnerability serial number and determining whether a local vulnerability verification mark is true or not; the judging unit is further configured to determine, in response to that the local vulnerability verification flag is not true, a relationship between a length of a vulnerability exploitation program of the local vulnerability and a length of a payload of a remote vulnerability corresponding to the remote vulnerability sequence number; the judging unit is further used for determining the relation between the local vulnerability counter and the current local vulnerability number in response to the fact that the length of the vulnerability utilization program of the local vulnerability is smaller than the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number; the processing unit is used for responding to the situation that the vulnerability counter is smaller than the number of the current local vulnerabilities, and selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter; the processing unit is further configured to store an exploit program of the target local vulnerability into a payload of the remote vulnerability; the verification unit is used for sending the vulnerability exploiting program of the remote vulnerability and verifying the remote vulnerability; the verification unit is further used for responding to successful verification of the remote vulnerability and verifying the target local vulnerability stored in the payload of the remote vulnerability; the verification unit is further configured to send, in response to the target local vulnerability being successfully verified, the target local vulnerability verification success information.
In one embodiment, the apparatus further comprises: a determining unit, configured to determine at least one remote vulnerability in response to the existence of the remote vulnerability; and the sequencing unit is used for sequencing according to the length of the effective load of the at least one remote vulnerability and determining the sequencing sequence of the at least one remote vulnerability and the corresponding sequence number.
In an embodiment, the determining unit is specifically configured to: the local vulnerability is determined in response to the remote vulnerability sequence number being available; and determining the local vulnerability verification flag in response to the local vulnerability not being acquired.
In an embodiment, the determining unit is further configured to determine that the local vulnerability verification is complete in response to completion of the local vulnerability acquisition.
In one embodiment, the verification unit is further configured to: and responding to the fact that the local vulnerability verification mark is true, sending the vulnerability utilization program of the remote vulnerability, and verifying the remote vulnerability.
In one embodiment, the processing unit is further configured to generate a path of the exploit program of the local vulnerability in response to that the length of the exploit program of the local vulnerability is greater than or equal to the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number.
In one embodiment, the processing unit is specifically configured to: selecting a target local vulnerability which can be detected by a port and corresponds to the value obtained by adding one to the local vulnerability counter; or selecting a target local vulnerability of the path of the vulnerability exploiting program which corresponds to the value of adding one to the local vulnerability counter.
In an embodiment, the verification unit is specifically configured to, in response to the remote vulnerability verification failure, obtain, by the obtaining unit, a remote vulnerability sequence number.
According to a third aspect of embodiments of the present invention, there is provided an electronic device comprising a memory and a processor, the memory being configured to store one or more computer program instructions, wherein the one or more computer program instructions are executed by the processor to implement the method according to the first aspect or any possibility of the first aspect.
According to a fourth aspect of embodiments of the present invention, there is provided a computer-readable storage medium on which computer program instructions are stored, wherein the computer program instructions, when executed by a processor, implement the method according to the first aspect or any possibility of the first aspect.
The embodiment of the invention has the beneficial effects that: firstly, obtaining a remote vulnerability serial number, then responding to the availability of the remote vulnerability serial number, determining a local vulnerability verification mark, and then responding to the fact that the local vulnerability verification mark is not true, and determining the relationship between the length of a vulnerability exploitation program of the local vulnerability and the length of a payload of the remote vulnerability corresponding to the remote vulnerability serial number; then, in response to the fact that the length of the vulnerability utilization program of the local vulnerability is smaller than the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number, determining the relation between a local vulnerability counter and the current local vulnerability number; then, in response to the fact that the vulnerability counter is smaller than the number of the current local vulnerabilities, selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter; then storing the vulnerability exploitation program of the target local vulnerability into the effective load of the remote vulnerability; then sending the vulnerability exploiting program of the remote vulnerability to verify the remote vulnerability; then, in response to the successful verification of the remote vulnerability, verifying the target local vulnerability stored in the payload of the remote vulnerability; and finally, responding to the successful verification of the target local vulnerability, and sending successful verification information of the target local vulnerability. According to the method, the local vulnerability can be verified, and the problem that the local vulnerability cannot be verified in the prior art is solved.
Drawings
The above and other objects, features and advantages of the present invention will become more apparent from the following description of the embodiments of the present invention with reference to the accompanying drawings, in which:
fig. 1 is a flowchart of a vulnerability verification method according to an embodiment of the present invention;
fig. 2 is a flowchart of another vulnerability verification method provided in an embodiment of the present invention;
fig. 3 is a schematic diagram of a vulnerability verification apparatus according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The present invention will be described below based on examples, but the present invention is not limited to only these examples. In the following detailed description of the present invention, certain specific details are set forth. It will be apparent to one skilled in the art that the present application may be practiced without these specific details. Further, those of ordinary skill in the art will appreciate that the drawings provided herein are for illustration purposes.
Unless the context clearly requires otherwise, throughout the description and the claims, the words "comprise", "comprising", and the like are to be construed in an inclusive sense as opposed to an exclusive or exhaustive sense; that is, what is meant is "including, but not limited to".
In the description of the present invention, it is to be understood that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. In addition, in the description of the present invention, "a plurality" means two or more unless otherwise specified.
Fig. 1 is a flowchart of a vulnerability verification method according to an embodiment of the present invention, and as shown in fig. 1, the vulnerability verification method includes:
and S100, acquiring a remote vulnerability serial number.
Optionally, before the obtaining of the remote vulnerability serial number, in response to the existence of the remote vulnerability, determining at least one remote vulnerability; and sequencing according to the length of the effective load of the at least one remote vulnerability, and determining the sequencing sequence of the at least one remote vulnerability and the corresponding sequence number.
Specifically, assuming that 8 remote vulnerabilities are determined to exist, the length of the payload of each remote vulnerability is 200, 201, 300, 302, 351, 154, 311, and 280, the 8 remote vulnerabilities are sorted according to the length of the payload in the order from long to short, the sorted order is 351, 311, 302, 300, 280, 201, 200, and 154, and the sequence numbers of the 8 vulnerabilities are determined according to the sorting, which is specifically shown in table 1 below:
TABLE 1
Remote vulnerability sequence number | Length of payload |
1 | 351 |
2 | 311 |
3 | 302 |
4 | 300 |
5 | 280 |
6 | 201 |
7 | 200 |
8 | 154 |
The length of the payload is merely an illustrative example, and the specific situation is determined according to the actual situation.
In the embodiment of the invention, when the remote vulnerability is selected, the remote vulnerability with the longest effective load length is selected, namely the remote vulnerability corresponding to the serial number 1 is selected, the remote vulnerability corresponding to the serial number 1 is adopted to mount the local vulnerability, then the local vulnerability of the target host is verified, but the remote vulnerability corresponding to the serial number 1 may not be successfully verified after all the local vulnerabilities are mounted, and then the next remote vulnerability needs to be selected, for example, the remote vulnerability corresponding to the serial number 2 is mounted to the local vulnerability, then the local vulnerability of the target host is verified, and so on until all the local vulnerability is verified. In the embodiment of the present invention, a remote vulnerability corresponding to the serial number 1 is used as an acquired remote vulnerability serial number for explanation.
And S101, responding to the availability of the remote vulnerability sequence number, and determining a local vulnerability verification mark.
Specifically, whether the local vulnerability is acquired is determined in response to the availability of the remote vulnerability sequence number; and determining the local vulnerability verification flag in response to the local vulnerability not being acquired.
After the remote vulnerability corresponding to the acquired serial number 1 is determined to be available, if the local vulnerability is determined not to be acquired, whether the local vulnerability verification mark is true is continuously determined, and if the local vulnerability is determined to be acquired, the verification is completed. If the local vulnerability verification mark is true, the verification of the local vulnerability is successful, and if the local vulnerability verification mark is not true, the verification of the local vulnerability is failed and needs to be verified again.
Step S102, in response to that the local vulnerability verification flag is not true, determining the relationship between the length of the vulnerability utilization program of the local vulnerability and the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number.
Specifically, since the local vulnerability verification flag does not truly indicate that the vulnerability needs to be verified, it is necessary to determine a relationship between the length of the vulnerability exploitation program of the local vulnerability and the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number, for example, the payload of the remote vulnerability corresponding to sequence number 1 is 351, and when the length of the vulnerability exploitation program of the local vulnerability is 350, the payload of the remote vulnerability is smaller than the length of the payload of the remote vulnerability, so that the vulnerability exploitation program of the local vulnerability can be directly mounted to the remote vulnerability; and if the length of the vulnerability exploiting program of the local vulnerability is greater than or equal to the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number, generating a path of the vulnerability exploiting program of the local vulnerability. For example, assuming that the length of the exploit program of the local vulnerability is 500 and the payload of the remote vulnerability corresponding to sequence number 1 is 351, the exploit program of the local vulnerability cannot be mounted to the remote vulnerability, and therefore, a path of the exploit program of the local vulnerability is generated and the path of the exploit program of the local vulnerability is mounted to the remote vulnerability.
Step S103, in response to the fact that the length of the vulnerability utilization program of the local vulnerability is smaller than the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number, determining the relation between the local vulnerability counter and the current local vulnerability number.
Specifically, the current value of the local vulnerability counter is the verified local vulnerability.
And S104, responding to the situation that the vulnerability counter is smaller than the number of the current local vulnerabilities, and selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter.
Specifically, the selecting of the target local vulnerability corresponding to the value obtained by adding one to the local vulnerability counter specifically includes two conditions:
and under the condition I, selecting a target local vulnerability which can be detected by a port and corresponds to the value obtained by adding one to the local vulnerability counter.
Specifically, the Exploit program in the first case, which is a local vulnerability, may be directly mounted to a remote vulnerability and then verify the local vulnerability, which may be referred to as a way for the Exploit program (explore) to identify services through a port.
And under the second condition, selecting the target local vulnerability of the path of the vulnerability exploiting program which is generated and corresponds to the value obtained by adding one to the local vulnerability counter.
Specifically, the second situation corresponds to the situation that the vulnerability exploiting program of the local vulnerability first generates the path of the vulnerability exploiting program of the local vulnerability, then the path of the vulnerability exploiting program of the local vulnerability is mounted to the remote vulnerability, and finally the local vulnerability is verified, which can be called as a mode of traversal verification of the vulnerability exploiting program Exploit carrying the local vulnerability in full.
And S105, storing the vulnerability exploitation program of the target local vulnerability into the effective load of the remote vulnerability.
And S106, sending the vulnerability exploiting program of the remote vulnerability, and verifying the remote vulnerability.
And S107, responding to the successful verification of the remote vulnerability, and verifying the target local vulnerability stored in the payload of the remote vulnerability.
Optionally, in response to the failure of the remote vulnerability verification, the remote vulnerability sequence number is obtained. For example, the remote vulnerability corresponding to the serial number 2 is continuously obtained and the verification is continuously performed.
And S108, responding to the successful verification of the target local vulnerability, and sending successful verification information of the target local vulnerability.
A complete description of the vulnerability verification method according to the present invention is provided below by a complete embodiment, which is specifically shown in fig. 2:
and S200, judging whether the remote vulnerability exists.
Step S201, in response to the existence of the remote vulnerability, sequencing according to the length of the effective load of the at least one remote vulnerability.
And S202, acquiring a remote vulnerability serial number.
Step S203, in response to the availability of the remote vulnerability serial number, determining whether the local vulnerability is acquired completely, if not, executing step S2041, and if so, executing step S2042.
Step S2041, determining whether the local vulnerability verification flag is true, if true, executing step S2051, and if not, executing step S2052.
And step S2042, determining that the local vulnerability verification is finished, and ending.
Step S2051, determining whether the length of the exploit program of the local vulnerability is smaller than the length of the payload of the remote vulnerability corresponding to the remote vulnerability number, if so, executing step S2061, and if not, executing step S2062.
And S2052, sending the vulnerability exploiting program of the remote vulnerability, and verifying the remote vulnerability.
Step S2061, determining whether the local vulnerability counter is less than the number of the current local vulnerabilities, and if so, executing step S207.
Step S2062, generating a path of the vulnerability exploiting program of the local vulnerability, and then executing step S2061 to judge whether the local vulnerability counter is smaller than the current local vulnerability number.
And step S207, selecting a target local vulnerability corresponding to the value obtained by adding one to the local vulnerability counter.
Step S208, storing the vulnerability exploitation program of the target local vulnerability into the payload of the remote vulnerability, and then executing step S2052.
And step S209, responding to the successful verification of the remote vulnerability in the step S2052, and outputting a verification result.
Step S210, verifying the target local vulnerability stored in the payload of the remote vulnerability, in response to successful verification of the target local vulnerability, executing step S209, and in response to failure of verification of the target local vulnerability, executing step S202.
Step S211, after responding to the successful target local vulnerability check, judging whether a local vulnerability counter is equal to the number of the current local vulnerabilities, if so, setting the target local vulnerability check identifier as true, and then executing step S202.
Fig. 3 is a schematic diagram of a vulnerability verification apparatus according to an embodiment of the present invention. As shown in fig. 3, the vulnerability verification apparatus of the present embodiment includes: an obtaining unit 31, configured to obtain a remote vulnerability number; a determining unit 32, configured to determine a local vulnerability verification flag in response to the remote vulnerability sequence number being available; the determining unit 32 is further configured to, in response to that the local vulnerability verification flag is not true, determine a relationship between a length of a vulnerability exploitation program of the local vulnerability and a length of a payload of a remote vulnerability corresponding to the remote vulnerability sequence number; the determining unit 32 is further configured to determine a relationship between a local vulnerability counter and a current local vulnerability number in response to that the length of the vulnerability exploiting program of the local vulnerability is smaller than the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number; the processing unit 33 is configured to select a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter in response to the vulnerability counter being smaller than the current number of local vulnerabilities; the processing unit 33 is further configured to store an exploit program of the target local vulnerability in a payload of the remote vulnerability; a verification unit 34, configured to send the exploit program of the remote vulnerability and verify the remote vulnerability; the verification unit 34 is further configured to, in response to successful verification of the remote vulnerability, verify the target local vulnerability stored in the payload of the remote vulnerability; the verification unit 34 is further configured to, in response to the target local vulnerability being successfully verified, send the target local vulnerability verification success information.
In one embodiment, the apparatus further comprises: a determining unit 35, configured to determine at least one remote vulnerability in response to the existence of the remote vulnerability; a sorting unit 36, configured to sort according to a length of the payload of the at least one remote vulnerability, and determine a sorting order and a corresponding sequence number of the at least one remote vulnerability.
In an embodiment, the determining unit 32 is specifically configured to: the local vulnerability is determined in response to the remote vulnerability sequence number being available; and determining the local vulnerability verification flag in response to the local vulnerability not being acquired.
In an embodiment, the determining unit 35 is further configured to determine that the local vulnerability verification is completed in response to the local vulnerability acquisition being completed.
In one embodiment, the verification unit 34 is further configured to: and responding to the fact that the local vulnerability verification mark is true, sending the vulnerability utilization program of the remote vulnerability, and verifying the remote vulnerability.
In an embodiment, the processing unit 33 is further configured to generate a path of the exploit program of the local vulnerability in response to that the length of the exploit program of the local vulnerability is greater than or equal to the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number.
In an embodiment, the processing unit 33 is specifically configured to: selecting a target local vulnerability which can be detected by a port and corresponds to the value obtained by adding one to the local vulnerability counter; or selecting a target local vulnerability of the path of the vulnerability exploiting program which corresponds to the value of adding one to the local vulnerability counter.
In an embodiment, the verification unit 34 is specifically configured to, in response to that the remote vulnerability verification fails, obtain, by the obtaining unit, a remote vulnerability sequence number.
Fig. 4 is a schematic diagram of an electronic device of an embodiment of the invention. The electronic device shown in fig. 4 is a general data transmission device comprising a general computer hardware structure, which comprises at least a processor 41 and a memory 42. The processor 41 and the memory 42 are connected by a bus 43. The memory 42 is adapted to store instructions or programs executable by the processor 41. Processor 41 may be a stand-alone microprocessor or may be a collection of one or more microprocessors. Thus, processor 41 implements the processing of data and the control of other devices by executing instructions stored by memory 42 to perform the method flows of embodiments of the present invention as described above. The bus 43 connects the above components together, and also connects the above components to a display controller 44 and a display device and an input/output (I/O) device 45. Input/output (I/O) devices 45 may be a mouse, keyboard, modem, network interface, touch input device, motion sensing input device, printer, and other devices known in the art. Typically, the input/output devices 45 are connected to the system through input/output (I/O) controllers 46.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, various aspects of embodiments of the invention may take the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit," module "or" system. Furthermore, various aspects of embodiments of the invention may take the form of: a computer program product embodied in one or more computer readable media having computer readable program code embodied thereon.
Any combination of one or more computer-readable media may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of embodiments of the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to: electromagnetic, optical, or any suitable combination thereof. The computer readable signal medium may be any of the following computer readable media: is not a computer readable storage medium and may communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of embodiments of the present invention may be written in any combination of one or more programming languages, including: object oriented programming languages such as Java, Smalltalk, C + +, and the like; and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package; executing in part on a user computer and in part on a remote computer; or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention described above describe various aspects of embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (10)
1. A method for vulnerability verification, comprising:
acquiring a remote vulnerability serial number;
determining a local vulnerability verification flag in response to the remote vulnerability sequence number being available;
determining a relationship between the length of the exploit program of the local vulnerability and the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number in response to the local vulnerability verification flag not being true;
determining the relation between a local vulnerability counter and the current local vulnerability number in response to the fact that the length of the vulnerability utilization program of the local vulnerability is smaller than the length of the effective load of the remote vulnerability corresponding to the remote vulnerability sequence number;
in response to the fact that the vulnerability counter is smaller than the number of the current local vulnerabilities, selecting a target local vulnerability corresponding to a value obtained by adding one to the local vulnerability counter;
storing the vulnerability exploiting program of the target local vulnerability into the effective load of the remote vulnerability;
sending the vulnerability exploiting program of the remote vulnerability and verifying the remote vulnerability;
verifying the target local vulnerability stored in the payload of the remote vulnerability in response to successful verification of the remote vulnerability;
and responding to the successful verification of the target local vulnerability, and sending successful verification information of the target local vulnerability.
2. The method of claim 1, wherein prior to obtaining the remote vulnerability sequence number, the method further comprises:
in response to the presence of the remote vulnerability, determining at least one of the remote vulnerabilities;
and sequencing according to the length of the effective load of the at least one remote vulnerability, and determining the sequencing sequence of the at least one remote vulnerability and the corresponding sequence number.
3. The method of claim 1, wherein determining a local vulnerability verification flag in response to the remote vulnerability sequence number being available comprises:
the local vulnerability is determined in response to the remote vulnerability sequence number being available;
and determining the local vulnerability verification flag in response to the local vulnerability not being acquired.
4. The method of claim 3, wherein after determining the local vulnerability in response to the remote vulnerability sequence number being available, the method further comprises:
and responding to the completion of the local vulnerability acquisition, and determining that the local vulnerability verification is completed.
5. The method of claim 1, wherein after determining a local vulnerability verification flag in response to the remote vulnerability sequence number being available, the method further comprises:
and responding to the fact that the local vulnerability verification mark is true, sending the vulnerability utilization program of the remote vulnerability, and verifying the remote vulnerability.
6. The method of claim 1, wherein after determining a relationship between a length of the exploit of the local vulnerability and a length of a payload of a remote vulnerability corresponding to the remote vulnerability sequence number, the method further comprises:
and generating a path of the exploit program of the local vulnerability in response to the fact that the length of the exploit program of the local vulnerability is greater than or equal to the length of the payload of the remote vulnerability corresponding to the remote vulnerability sequence number.
7. The method of claim 1, wherein the selecting the target local vulnerability corresponding to the value obtained by adding one to the local vulnerability counter specifically comprises:
selecting a target local vulnerability which can be detected by a port and corresponds to the value obtained by adding one to the local vulnerability counter; or,
and selecting a target local vulnerability of the path of the vulnerability exploiting program which corresponds to the value of adding one to the local vulnerability counter.
8. The method of claim 1, wherein the exploit program that sent the remote vulnerability, after verifying the remote vulnerability, further comprises:
and responding to the failure of the remote vulnerability verification, and acquiring a remote vulnerability serial number.
9. An electronic device comprising a memory and a processor, wherein the memory is configured to store one or more computer program instructions, wherein the one or more computer program instructions are executed by the processor to implement the method of any of claims 1-8.
10. A computer-readable storage medium on which computer program instructions are stored, which computer program instructions, when executed by a processor, implement the method of any one of claims 1-8.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910616324.0A CN110300119B (en) | 2019-07-09 | 2019-07-09 | Vulnerability verification method and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910616324.0A CN110300119B (en) | 2019-07-09 | 2019-07-09 | Vulnerability verification method and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110300119A true CN110300119A (en) | 2019-10-01 |
CN110300119B CN110300119B (en) | 2021-09-14 |
Family
ID=68030763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910616324.0A Active CN110300119B (en) | 2019-07-09 | 2019-07-09 | Vulnerability verification method and electronic equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110300119B (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7664845B2 (en) * | 2002-01-15 | 2010-02-16 | Mcafee, Inc. | System and method for network vulnerability detection and reporting |
US8572748B2 (en) * | 2011-02-16 | 2013-10-29 | International Business Machines Corporation | Label-based taint analysis |
CN104363236A (en) * | 2014-11-21 | 2015-02-18 | 西安邮电大学 | Automatic vulnerability validation method |
CN104732144A (en) * | 2015-04-01 | 2015-06-24 | 河海大学 | Pseudo-protocol-based remote code injecting loophole detecting method |
CN105429955A (en) * | 2015-10-30 | 2016-03-23 | 西安四叶草信息技术有限公司 | Remote vulnerability detection method |
CN107392027A (en) * | 2017-07-13 | 2017-11-24 | 福建中金在线信息科技有限公司 | A kind of website vulnerability method of testing, test system, electronic equipment and storage medium |
CN107437029A (en) * | 2017-08-23 | 2017-12-05 | 北京奇虎科技有限公司 | Leak restorative procedure, leak prosthetic device and server |
CN108256322A (en) * | 2018-01-26 | 2018-07-06 | 平安科技(深圳)有限公司 | Safety detecting method, device, computer equipment and storage medium |
CN109325351A (en) * | 2018-08-23 | 2019-02-12 | 中通服咨询设计研究院有限公司 | A kind of security breaches automatic Verification systems based on many survey platforms |
-
2019
- 2019-07-09 CN CN201910616324.0A patent/CN110300119B/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7664845B2 (en) * | 2002-01-15 | 2010-02-16 | Mcafee, Inc. | System and method for network vulnerability detection and reporting |
US8572748B2 (en) * | 2011-02-16 | 2013-10-29 | International Business Machines Corporation | Label-based taint analysis |
CN104363236A (en) * | 2014-11-21 | 2015-02-18 | 西安邮电大学 | Automatic vulnerability validation method |
CN104732144A (en) * | 2015-04-01 | 2015-06-24 | 河海大学 | Pseudo-protocol-based remote code injecting loophole detecting method |
CN105429955A (en) * | 2015-10-30 | 2016-03-23 | 西安四叶草信息技术有限公司 | Remote vulnerability detection method |
CN107392027A (en) * | 2017-07-13 | 2017-11-24 | 福建中金在线信息科技有限公司 | A kind of website vulnerability method of testing, test system, electronic equipment and storage medium |
CN107437029A (en) * | 2017-08-23 | 2017-12-05 | 北京奇虎科技有限公司 | Leak restorative procedure, leak prosthetic device and server |
CN108256322A (en) * | 2018-01-26 | 2018-07-06 | 平安科技(深圳)有限公司 | Safety detecting method, device, computer equipment and storage medium |
CN109325351A (en) * | 2018-08-23 | 2019-02-12 | 中通服咨询设计研究院有限公司 | A kind of security breaches automatic Verification systems based on many survey platforms |
Non-Patent Citations (2)
Title |
---|
PETER CHAPMAN ET AL: "Automated Black-Box Detection of Side-Channel Vulnerabilities in Web Applications", 《IN 18TH ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY》 * |
万志远: "web应用程序漏洞检测关键技术研究", 《万方》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110300119B (en) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960830B (en) | Intelligent contract deployment method, device, equipment and storage medium | |
US10599843B2 (en) | Identifying whether an application is malicious | |
CN111404923B (en) | Control method and system for access authority of container cluster | |
KR101337874B1 (en) | System and method for detecting malwares in a file based on genetic map of the file | |
EP3270317B1 (en) | Dynamic security module server device and operating method thereof | |
KR102008668B1 (en) | Security system and method for protecting personal information of file stored in external storage device | |
CN111416811A (en) | Unauthorized vulnerability detection method, system, equipment and storage medium | |
CN104580075A (en) | User login validation method, device and system | |
JP7494205B2 (en) | Preventing the accidental transmission of copies of data records to the distributed ledger system | |
CN111031111B (en) | Page static resource access method, device and system | |
CN110493009A (en) | The generation method and verification method of signature, device, equipment and medium | |
US20180232518A1 (en) | Protecting computer code against rop attacks | |
CN109710695A (en) | The identification of transactions requests validity and initiating method, device, equipment and medium | |
CN110070360B (en) | Transaction request processing method, device, equipment and storage medium | |
CN110300119B (en) | Vulnerability verification method and electronic equipment | |
JP6632777B2 (en) | Security design apparatus, security design method, and security design program | |
CN102262717B (en) | Method, device and equipment for changing original installation information and detecting installation information | |
CN110572371B (en) | Identity uniqueness check control method based on HTML5 local storage mechanism | |
CN114357512A (en) | Privacy calculation method based on browser, electronic equipment and storage medium | |
US20210044589A1 (en) | Access control | |
JP2018147444A (en) | Computer system for executing analysis program and method for monitoring execution of analysis program | |
KR101934381B1 (en) | Method for detecting hacking tool, and user terminal and server for performing the same | |
US20160191210A1 (en) | Data processing device, data communication device, communication system, data processing method, data communication method, and program | |
CN106911678B (en) | Virus detection method and device | |
KR102255140B1 (en) | Hacking prevention apparatus for backend flatform using block chain |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |