WO2014082599A1 - 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统 - Google Patents

用于恶意程序查杀的扫描设备、云端管理设备及方法和系统 Download PDF

Info

Publication number
WO2014082599A1
WO2014082599A1 PCT/CN2013/088196 CN2013088196W WO2014082599A1 WO 2014082599 A1 WO2014082599 A1 WO 2014082599A1 CN 2013088196 W CN2013088196 W CN 2013088196W WO 2014082599 A1 WO2014082599 A1 WO 2014082599A1
Authority
WO
WIPO (PCT)
Prior art keywords
scan
program file
specified
information
scanning
Prior art date
Application number
PCT/CN2013/088196
Other languages
English (en)
French (fr)
Inventor
江爱军
刘智锋
孔庆龙
张波
姚彤
Original Assignee
北京奇虎科技有限公司
奇智软件(北京)有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from CN201210506137.5A external-priority patent/CN102982284B/zh
Priority claimed from CN201210506185.4A external-priority patent/CN103034808B/zh
Application filed by 北京奇虎科技有限公司, 奇智软件(北京)有限公司 filed Critical 北京奇虎科技有限公司
Priority to US14/648,298 priority Critical patent/US9830452B2/en
Publication of WO2014082599A1 publication Critical patent/WO2014082599A1/zh
Priority to US15/823,534 priority patent/US20180082061A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Definitions

  • the present invention relates to the field of network information security technologies, and in particular, to a scanning, cloud management device, method and system for malicious program killing. Background technique
  • the existing malicious program killing method is mostly performed by the local engine according to the built-in scanning position, and the features such as MD 5 of the unknown program file that are not recognized locally are sent to the cloud server, and the cloud server according to the program file characteristics sent by the client. Compare and judge whether it is a malicious program. If it is a malicious program, the local engine cleans up the malicious program according to the local client's local clearing logic.
  • malicious programmers always find new points of use of the operating system and points that security software ignores to bypass the detection and killing of security software.
  • the present invention has been made in order to provide a scanning device and corresponding scanning method for malicious program killing that overcomes the above problems or at least partially solves the above problems, and a cloud management device for malicious program killing and Corresponding cloud management methods, as well as a cloud-based malicious program scanning system and scanning method.
  • a scanning device for malicious program killing including: a first transmission interface configured to transmit information to a server device, and receive information transmitted by the server device; And the device is configured to read the current system environment information of the client device, and transmit the information to the server device through the first transmission interface; the first scanner is configured to obtain the server device through the first transmission interface, at least based on the system environment The first scan content indication of the information determination, and scanning the specified location in the first scan content indication, and transmitting at least the feature data of the scanned unknown program file to the server device through the first transmission interface; and the second scan And configured to obtain, by using the first transmission interface, a second scan content indication transmitted by the server device, where the second scan content indication includes scanning a specified attribute of the unknown program file and/or a specified attribute of a context of the unknown program file, And according to the second scan content Scan shown.
  • a cloud management device for malicious program killing including: a second transmission interface configured to transmit information to a client device, and receive information transmitted by the client device; An indicator, configured to generate a first scan content indication according to a characteristic of the new malicious program and system environment information transmitted by the client device, where the first scan content indication includes at least scanning the content of the specified location and Notifying the scanned feature data of the unknown program file, and transmitting the first scan content indication to the client device through the second transmission interface; the first matcher is configured to obtain the unknown program transmitted by the client device through the second transmission interface Feature data of the file, and accordingly matched in a known malicious program feature data record; and a second indicator configured to generate a second scan content indication when the first matcher fails to match the known record,
  • the second scan content indication includes scanning a specified attribute of the unknown program file and/or a specified attribute of a context of the unknown program file, and transmitting to the client device through the second transmission interface.
  • a cloud security-based malicious program scanning system including any scanning device for malicious program detection as described above, and any cloud management for malicious program detection as described above. device.
  • a cloud management method for malicious program killing including: generating a first scan content indication according to a characteristic of a new malicious program and system environment information transmitted by the client device, the first scan The content indication includes at least scanning the content of the specified location and notifying the scanned feature data of the unknown program file, and transmitting the first scan content indication to the client device; obtaining the feature data of the unknown program file transmitted by the client device, and According to this, matching is performed in a known malicious program killing database; and when the characteristic data according to the unknown program file fails to match the known record, a second scan content indication is generated, and the second scan content indication includes the unknown program file.
  • the specified attribute and/or the specified attribute of the context of the unknown program file are scanned, and the second scan content indication is transmitted to the client device.
  • a cloud security-based malicious program scanning method including: a client device reads current system environment information and transmits the same to a server device; and the server device according to characteristics of a new malicious program And generating, by the system environment information transmitted by the client device, a first scan content indication, where the first scan content indication includes at least scanning the content of the specified location and notifying the scanned feature data of the unknown program file, and transmitting the first scan content indication To the client device; the client device scans according to the first scan content indication, and transmits at least the feature data of the unknown program file obtained by the scan to the server device; the server device is known to be malicious according to the feature data of the unknown program file.
  • the server-side device when the characteristic data according to the unknown program file fails to match the known record, the server-side device generates a second scan content indication, and the second scan content indication includes a specified attribute to the unknown program file and/or Or unknown Context specified attribute file is scanned, a second scan the contents and transmitting an indication to the client device; client device according to a second scan to scan content indication.
  • the basic feature data (such as file name, MD5, SHA1, or other features calculated according to the file content) of the unknown program file cannot be used to determine whether it is a malicious program or cannot be found accurately.
  • the repair solution can further judge the client by requesting the client device to further scan the signature of the unknown program file, the version, and other attributes of the specified program and/or the context of the unknown program file, so as to more accurately determine the client itself. Unable to determine if an unknown program file is safe. Because of this solution, the cloud server timely delivers the personalized scan content, and dynamically obtains the killing method from the server according to the attributes of the program file and the attributes of the context environment, thereby avoiding upgrading the local signature database. And the engine program can detect and eliminate new malicious programs, thus speeding up the attack on new malicious programs and effectively curbing its rapid spread.
  • FIG. 1 illustrates a cloud security based malicious program scanning system in accordance with one embodiment of the present invention
  • FIG. 2 illustrates a flow chart of a cloud security based malicious program scanning method in accordance with one embodiment of the present invention
  • FIG. 3 is a flow chart showing a cloud security-based malicious program killing method according to still another embodiment of the present invention.
  • FIG. 4 is a schematic diagram showing an intelligent electronic device according to the present invention.
  • Fig. 5 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention. detailed description
  • Embodiments of the invention are applicable to computer systems/servers that can operate with numerous other general purpose or special purpose computing system environments or configurations.
  • Examples of well-known computing systems, environments, and/or configurations suitable for use with computer systems/servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, based on Microprocessor systems, set-top boxes, programmable consumer electronics, networked personal computers, small computer systems, large computer systems, and distributed cloud computing technology environments including any of the above, and the like.
  • the computer system/server can be described in the general context of computer system executable instructions (such as program modules) being executed by a computer system.
  • program modules may include routines, programs, target programs, components, logic, data structures, and the like that perform particular tasks or implement particular abstract data types.
  • the computer system/server can be implemented in a distributed cloud computing environment in which tasks are performed by remote processing devices that are linked through a communications network.
  • program modules may be located on a local or remote computing system storage medium including storage devices.
  • FIG. 1 illustrates a cloud security-based malicious program scanning system, including a scanning device 110 for malicious program killing, and a cloud management device 210 for malicious program killing, according to an embodiment of the present invention.
  • the scanning device 110 can be disposed in a client, such as the client device 100, and the cloud management device 210 can be disposed in a server, such as the server device 200.
  • the scanning device 110 can communicate with the cloud management device 210.
  • the first transmission interface 118 in the scanning device 110 can transmit information to the server device 200, and receive information transmitted by the server device 200.
  • the second transmission interface 218 can transmit information to the client device 100 and receive information transmitted by the client device 100.
  • the scanning device 110 may include an environment information reader 112, a first scanner 114, a second scanner 116, and a first transmission interface 118.
  • the cloud management device 210 can include a first indicator 212, a first matcher 214, a second indicator 216, and a second transmission interface 218.
  • the environment information reader 112 reads the current system environment information of the client device 100 and transmits it to the second transmission interface 218 of the server device 200 through the first transmission interface 118.
  • the current environment system information of the client device 100 may include any one or more of information such as version information of the operating system, system patch installation information, software installation information, driver installation information, and activity process and service information. Among them, there are many operating systems, such as windows 98, windows 2003, windows XP, and Windows Vista. The version information corresponding to different operating systems is also different. Therefore, the server device 200 can know the client device through the version information of the operating system. 100 Which specific version of the operating system is currently running. The active process is the running process in the system.
  • the environment information reader 112 can read the current system environment information and transmit it to the server device 200.
  • the second transmission interface 218 in the cloud management device 210 in the server device 200 transmits the information to the first indicator 212, and the first indicator 212 is based on the new malicious program.
  • the feature and the system environment information transmitted by the client device 100 generate a first scan content indication.
  • the characteristics of the new malicious program can be various, such as the characteristic information of the new malicious program using the specific location to hide and/or attack according to the trend of the latest malicious program, such as the location usually used by the new malicious program, such as a certain The installation directory of the game, the installation directory of commonly used software, some specific registry entries, and so on.
  • the server device 200 can provide a personalized scan content indication for the client device according to the hidden and/or attack location commonly used by the new malicious program, and the current system environment information reported by the client device.
  • a scan content indication For example, through the software installation information reported by the client device 100, it is found that the client device 100 installs a certain game software, and according to the characteristics of the new malicious program, it is known that many malicious programs are hidden or maliciously replaced by using the installation directory of the game software.
  • the file server 200 requests the client device 100 to scan the content of the game installation directory in the first scan content indication to discover the unknown program file suspected in the client device 100.
  • the first scan content indicates not only the new one based on the server side
  • the characteristics of the malicious program are also combined with the specific system environment information of the client device 100. Therefore, the first scan content indication is personalized, and the first scan content indication sent by the different client device 100 is targeted. It is often different.
  • the first scan content indication includes at least scanning the content of the specified location and requesting notification of the feature data of the scanned unknown program file.
  • the first scan content indication may be according to characteristics of the new malicious program and the client device.
  • a piece of text or script generated by the current system environment information, that is, the indication can inform the client device 100 which content needs to be scanned, and which scan results are reported.
  • the first scan content indication may be an indication without any condition, or may be an indication of a condition. If it is a conditional indication, the scanning device 110 in the client device 100 performs scanning according to the first scanning content indication only when the preset condition is satisfied.
  • condition that can be attached to the first scan indication, such as but not limited to one or more of the following: whether the specified file exists, whether the specified directory exists, whether the attributes of the program file meet the specified conditions (such as message digest MD5) Whether it is the specified value), whether the registry key exists, whether the specified registry key exists, whether the content of the registry key satisfies the specified condition, and whether the content of the registry key satisfies the specified condition (such as whether it contains or equals a specific string) Or a value), specify whether the process exists, specify whether the service exists, and specify whether the service meets the specified criteria (such as whether it is a specific service name, a specific service description, or a specific display name).
  • the server side transmits the first scan content indication to the first transmission interface 118 in the client device 100 via the second transmission interface 218 after the first indicator 212 generates the first scan content indication.
  • the first transmission interface 118 of the scanning device 110 located in the client device 100 notifies the first scanner 114 of the received first scanning content indication determined by the server device 200 based on at least the system environment information. Further, the first scanner 114 scans the designated position in the first scan content indication.
  • the first scan content indication may be a conditional indication, or a scan condition, and then the first scanner 114 needs to first determine whether the scan conditions attached to the first scan content indication are met, such as those mentioned above. Optional conditions. When the first scanner 114 judges that the condition attached to the first scan content is satisfied, the specified position in the first scan content indication is scanned. Of course, if the first scan content indication is not an indication of condition, the first scanner 114 does not need to first judge, and directly scans according to the scan position indicated in the first scan content.
  • the first scanner 114 may perform a regular scan on the scan position built in the local engine of the client device 100 in addition to the personalized scan in the client device 100 according to the first scan content indication. .
  • the feature data can be various, such as one or more of the following information: All of the unknown program files Or part of the key content (that is, extract a part of the content from the file) The data calculated according to a specific algorithm (such as MD5, SHA1 or other algorithms) and the file name. These feature data of the program file can be understood as the basic attribute information of the program file.
  • the first scanner 114 transmits the feature data of the unknown program file to the second transmission interface in the server device 200 through the first transmission interface 118.
  • the server-side second transmission interface 218 provides the received feature data of the unknown program file to the first matcher 214, and the first matcher 214 performs matching in the known malicious program detection database according to the database.
  • Some feature information of the malicious program is recorded, and the judgment logic for judging whether it is a malicious program, and possible killing methods (such as repair logic) can be recorded.
  • the characteristics of the malicious program may include a lot of information, such as a file name, a summary of the program file, a file size, a signature information, a version information, and the like, and, for example, a directory where the file is located, a startup location in the registry, Context attributes of program files such as attributes of other files in the same directory or in the specified directory.
  • the logic for comprehensively judging whether an unknown program file is a malicious program is the aforementioned Judgment logic.
  • Killing methods include, but are not limited to, scanning/decision and repair operations. Since the amount of storage on the server side, the amount of operations, and the ability to collect malicious program feature information and the update speed are much stronger than the client, the server device 200 can be used when the client device 100 is unable to determine an unknown program file according to the local engine. It is judged based on a known database.
  • the client device 100 further includes a killer.
  • the first transmission interface 118 in the client device 100 determines whether the server device 200 determines whether it is a malicious program based on the characteristics of the unknown program file and the repair logic.
  • the killer performs the corresponding operation. For example, if the result of the judgment finds that the unknown program file is a malicious program, the killer repairs the unknown program file according to the repair logic returned by the server device 200.
  • the repair process includes, but is not limited to, deleting the specified registry key/value, modifying the registry key/value, specifying the content, deleting the specified system service item, repairing/deleting the specified program file, and so on.
  • the server side matches some attribute information of the program files that the client needs to repair, and matches in the cloud database to find whether there is a matching uninfected program file. If so, The replacement is provided to the client to complete the repair.
  • Different files can be set to different matching conditions according to actual needs. For example, if it is a system file, various attribute information (such as file name, version information, etc.) of the file can be required to be consistent, and the matching is successful, that is, the matching is successfully found.
  • the matching can be considered successful.
  • different matching conditions can be set according to the actual application environment of the file, different requirements, or different operating systems. For example, if a system file is required, the file name, version information, and other attributes must be consistent to match, but another system file, only the file name is consistent, the version is the basic version or the standard version, you can think Is the match is successful. Let's take a common software to be destroyed by Trojans as an example to explain how to replace the program files during the repair process.
  • the server device 200 can know which replacement files need to be provided for the client device 100 through the information about the software provided by the client device 100, such as the software name, version, version of the program file, directory, and the like. Further, matching is performed in the cloud database according to the file name, the version, and the like, and the replacement file that is not infected with the virus is found and provided to the client device 100, and then the client device 100 sends the uninfected virus provided by the server device 200 to the client. Machine-consistent program files, replace the original corrupted program files.
  • the first matcher 214 fails to match successfully in the known malicious program killing database, that is, according to the feature data of the unknown program file, the second indicator 216 is notified, and the second indicator 216 is unknown according to the unknown.
  • the basic information provided by the feature data of the program file and the characteristics of the known new malicious program continue to generate the second scan content indication. Because the basic attribute information such as the characteristic data of the unknown program file is already known by the first indicator, and then combined with the characteristics of the current malicious program, for example, if the unknown program file is a malicious program, what characteristics are generally available, such as the unknown program.
  • the signature information of the file may not be the specified name, the directory where the unknown program file is located, or other file attributes under the related directory may be specified attributes, and so on.
  • the second scan content indication includes scanning for specified attributes of the unknown program file and/or specified attributes of the context of the unknown program file.
  • the second scan content indication may only require the client device 100 to scan the specified attribute of the unknown program file and report it, or may only require the client device 100 to scan the specified attribute of the context of the unknown program file and report it, and may also request the client.
  • the device 100 reports the specified attributes and the specified attributes of the context.
  • the specified attributes of the unknown program file include, but are not limited to, one or more of the following information: feature data, file size, security level, signature information, version information, and the like. It should be noted that, although the client device 100 has previously reported the basic attribute of the feature data of the unknown program file after the scan according to the first scan content of the server, the client device 100 and the server device 200 may not be long. Therefore, when the subsequent client device 100 reports the specified attribute information of the unknown program file after the scan is instructed by the second scan content of the server, the basic information such as the feature data of the unknown program file may be reported again.
  • the second scan content indication there may be content that requires scanning and reporting other specified attributes other than the unknown program file feature data, and content that is required to scan and report the unknown program file feature data.
  • the second scan content indication may not require the client device 100 to report the basic information such as the feature data of the unknown program file that has been reported once.
  • Security levels include, but are not limited to, malicious (ie, blacklisted), secure (ie, whitelisted, trusted), unknown, and suspicious.
  • the attributes of the context of the unknown program file include but are not limited to one or more of the following information: information of the directory where the unknown program file is located, information specifying the registry key value, the same directory as the program file, or the specified directory.
  • information of the directory where the unknown program file is located information specifying the registry key value, the same directory as the program file, or the specified directory.
  • the second indicator 216 is transmitted to the first transmission interface 118 in the client device 100 through the second transmission interface 218, and then the first transmission interface 118 instructs the second scan content indication to notify the second Scanner 116.
  • the second scanner 116 further scans the specified attribute information of the unknown program file and/or the attribute information of the context according to the second scan content, and finally transmits the scan result to the second transmission interface 218 of the server device 200.
  • the second transmission interface 218 re-informs the received scan result provided by the second scanner 116 to the second indicator 216, whereby the second indicator 216 is thus checked by a known malicious program.
  • the analysis is performed.
  • the specific content of the malicious program killing database has been given. It can be seen that the scanning result of the unknown program file provided by the client device 100 contains more information, such as inclusion. Other attribute information such as signature information, security level, version information, etc.
  • the second indicator 216 can further analyze and determine whether the unknown program file is a malicious program file according to the more comprehensive information and the feature information and the judgment logic in the malicious program detection database. If it is determined that the malicious program is a malicious program, it can further check whether There is a corresponding repair logic. Repair logic includes, but is not limited to, one or more of the following: deleting specified registry keys and/or key values, modifying registry keys and/or key values, specifying specified system service items, and repairing or Delete the specified program file.
  • the second indicator 216 transmits the determination result of whether the unknown program file is a malicious program file to the client device 100 through the second transmission interface 218. Further, if the result of the determination is a malicious program and matching repair logic can be found in the known malicious program kill database, the matched repair logic is also transmitted to the client device via the second transport interface 218.
  • the scanning device 110 of the client further includes a first processor, and the first processor obtains, by using the first transmission interface 118, a determination result of whether the unknown program file provided by the second indicator in the server device 200 is a malicious program file, and according to the determination The result is processed accordingly. For example, if the result of the judgment is a safe program file, the unknown program file is not subjected to the killing process; if the judgment result is a malicious program, and the second indicator 216 provides the repair logic, the user may be prompted and the user is asked whether The repair is performed, and after the user's confirmation is obtained, the unknown program file is repaired according to the repair logic.
  • the second indicator 216 may also notify the client device 100 when the second scan content indication is The second scan content indicates that the relevant decision logic is sent to the client device 100 along with the repair logic associated with the decision logic.
  • the server may predict that the client device 100 follows the first The second scan content indicates which scan results may be obtained after the scan, and then the database can be determined according to the malicious program to determine what scan result indicates that the unknown program file is a malicious program, so that the judgment related to the second scan content indication can be found.
  • the logic is how to determine whether the unknown program file is a malicious program based on the subsequent scan result. If it is a malicious program, the database may be further searched according to a known malicious program to find whether there is repair logic related to the second scan content indication and the judgment logic.
  • the scanning device 110 at the client may further include a second processor, and the second processor passes the first transmission interface 118: Obtain a determination logic related to the second scan content indication provided by the server-side second indicator 216, and then determine the unknown program according to the determination logic and the second scanner 116 instructs the scan result obtained after the scan according to the second scan content. Whether the file is a malicious program and handle it accordingly. For example, if the result of the determination is that the unknown program file is a malicious program, and the second indicator 216 of the server side also sends the repair logic related to the determination logic, the scan result provided by the second scanner 116 may satisfy the repair logic. According to the repair logic, the corresponding repair process is performed.
  • the second scanner 116 no longer needs to upload the result of scanning the unknown program file according to the second scan content indication to the server device, but directly to the second processor. Just fine.
  • the scanning device 110 includes only the environment information reader 112, the first scanner 114, the second scanner 116, and the first transmission interface 118, it is a pure malicious program scanning device, if The first processor or the second processor is also included, and the scanning device is essentially a device capable of performing malicious program killing, which can be understood as a killing device for a malicious program.
  • FIG. 2 shows a flow chart of a cloud security based malicious program scanning method according to an embodiment of the present invention.
  • the method includes a part of the process on the client side, and a part of the process on the server side, the process on the client side is a scanning method for malicious program killing, and the process on the server side is used for malicious The cloud management method for program killing.
  • step S210 the current system environment information of the client device is read and transmitted to the server device.
  • System environment information includes, but is not limited to, any one or more of operating system version information, system patch installation information, software installation information, driver installation information, and active process and service information.
  • This step can be implemented by the environment information reader 112 in the foregoing scanning device 110.
  • the related technical implementation can refer to the related description of the foregoing environment information reader 112 in various embodiments, and details are not described herein again.
  • step S220 the server device obtains system environment information of the client device, and generates a first scan content indication according to the characteristics of the new malicious program and the system environment information transmitted by the client device, where the first scan content indication includes at least The content of the location is scanned and the feature data of the scanned unknown program file is notified, and the first scan content indication is transmitted to the client device.
  • This step can be implemented by the foregoing first indicator 212 in the cloud management device 210 of the server.
  • the server device obtains system environment information of the client device, and generates a first scan content indication according to the characteristics of the new malicious program and the system environment information transmitted by the client device, where the first scan content indication includes at least The content of the location is scanned and the feature data of the scanned unknown program file is notified, and the first scan content indication is transmitted to the client device.
  • This step can be implemented by the foregoing first indicator 212 in the cloud management device 210 of the server.
  • step S220 After obtaining, by step S220, the first scan content indication determined by the server device based on the system environment information uploaded by the server device, the client device scans the specified location in the first scan content indication in step S230, and at least scans the obtained location.
  • the feature data of the unknown program file is then transmitted to the server device, so that the server device can make further judgment accordingly.
  • This step can be implemented by the first scanner 114 in the scanning device 110 of the client.
  • the first scanner 114 for the related art implementation, please refer to the description of the first scanner 114 in the foregoing embodiments, and details are not described herein again.
  • the server device obtains the feature data of the unknown program file transmitted by the client device through step S230. Then, in step S240, matching is performed in a known malicious program detection database according to the feature data of the unknown program file, and it is determined whether the unknown program file is a malicious program. If the matching succeeds, it is determined that the unknown program file is a malicious program, and further searching whether there is corresponding repair logic, if yes, the judgment result and the repair logic may be transmitted to the client together; if the corresponding repair is not found Logic, you can only transfer the judgment result to the client device.
  • This step can be implemented by using the first matching device 214 in the cloud management device 210 on the server side. For the related art implementation, please refer to the description of the first matching device 214 in the foregoing embodiments, and details are not described herein again.
  • the second scan content indication is generated in step S250, and the second scan content indication includes A specified attribute of the unknown program file and/or a specified attribute of the context of the unknown program file is scanned, and then the second scan content indication is transmitted to the client device.
  • the server-side device also sends a second scan content indication to the client device in order to obtain more information about the unknown program file for further judgment.
  • This step can be implemented by the foregoing second indicator 216 in the cloud management device 210 of the server.
  • the client device After obtaining the second scan content indication in step S250, the client device performs scanning according to the second scan content indication in step S260, thereby obtaining the specified attribute of the unknown program file and/or the specified attribute of the context environment of the unknown program file.
  • the specified attributes of the unknown program file include, but are not limited to, one or more of the following: feature data of unknown program files, file size, security level, signature information, version information, and the like.
  • the attributes of the context of the unknown program file include, but are not limited to, one or more of the following information: information of a directory where the unknown program file is located, information of a startup location in the registry, a directory with the program file, or Specify the attribute information of other files in the directory, the running status of the specified process, and so on.
  • the client device first transmits the scan result after the scan according to the second scan content indication to the server device, and the step may be performed by the second scan in the foregoing embodiments.
  • the device 116 is executed.
  • the server device obtains the scan result obtained by the client device according to the second scan content indication scan
  • the malicious program according to the scan result is already present. Further analyze the comparison in the killing database, and then judge whether the unknown program file is a malicious program, and then transmit the judgment result (such as malicious, safe, unknown, suspicious), and/or repair logic matching the scan result to the client. device.
  • the execution of the step by the server may be performed by the second indicator 216 in the cloud management device 210 in the foregoing embodiments.
  • the second indicator 216 in the cloud management device 210 For related technical features, reference may be made to the description of the component, and details are not described herein. It should be noted that not all of the repair logics can be found in the case where all the malicious programs are judged, so in the case of finding, the judgment result and the repair logic can be transmitted to the client device together; if the repair logic is not found Next, you can only transmit the judgment result to the client for reference by the user or the user; it is also possible to transmit only the repair logic, because the client can understand that the unknown program file is a malicious program, or the server device will not Its feedback is for the repair logic of the unknown program file.
  • the client device After the client device obtains the judgment result of the unknown program file fed back by the server device, it is determined according to the judgment result. Should be handled. For example, the user is reminded by a security reminder such as a pop-up window, or the repair process is performed according to the repair logic after the user confirms.
  • the execution of the step by the client device may be performed by the first processor in the scanning device 110 in the foregoing embodiments.
  • the client device needs to transmit at least two scan results to the server device, so that the server device can make a judgment according to the scan result.
  • the following process may also be used in another embodiment of the present invention.
  • step S250 in addition to generating the second scan content indication and transmitting to the client device, the server device further acquires the database according to the known malicious program.
  • the second scan content indicates the relevant decision logic and/or repair logic, and then transmits the decision logic and/or the repair logic and the second scan content indication to the client device.
  • This step can be implemented by the second indicator 216 in the cloud management device 210 of the foregoing embodiments.
  • the related art implementation can refer to the related description of the component, and details are not described herein again. It can be seen that after step S250, the client device has received at least the second scan content indication and the determination logic related to the second scan content indication, and may also receive the repair logic related to the second scan content indication.
  • the client device may determine the unknown according to the judgment logic and the scan result related to the second scan content indication transmitted by the server device. Whether the program file is a malicious program, if yes, further detecting whether the server-side device also transmits the relevant repair logic, and if so, continues to repair the unknown program file according to the repair logic, such as deleting the specified registry key and/or key Values, modify registry keys and/or key values to specify content, delete specified system service items, and repair or delete specified program files.
  • This step can be performed by the second processor in the scanning device 110 of the foregoing embodiments. For related implementations, reference may be made to the related description of the foregoing steps, and details are not described herein again.
  • step S310 the client initializes the local engine and network environment.
  • step S320 the client reads the system environment information and sends it to the server.
  • step S330 the server side judges according to the system environment information of the client and the condition of the preset scan content, and sends the content to be scanned to the client.
  • the content to be scanned here is equivalent to the first scan content indication in the foregoing embodiments.
  • step S340 the client executes the scan content built in the local engine and the scan content returned by the server, and obtains the characteristics of the unknown program file, such as the file name, MD5 or SHA.
  • step S350 the client device sends the feature of the unknown program file to the server.
  • step S360 the server side searches in the database according to the characteristics of the program file and/or the attribute of the context of the program file.
  • step S370 it is determined whether a matching record is found in the database, that is, whether a corresponding killing method is found, including but not limited to a scan/decision action and a repair action. If a matching record is found, step S380 is performed; If no matching record is found, step S400 is performed.
  • Step S380 The server returns the corresponding killing method to the client. Then step S390 is performed.
  • Step S390 The client performs the corresponding action according to the killing method returned by the server. Then it ends.
  • Step S400 The server side determines whether it is necessary to further check other attributes of the unknown program file of the client, such as other attributes than the unknown program file characteristics fed back in step S350, and/or attributes of the context of the unknown program file. If yes, proceed to step S410; if no, it ends directly.
  • other attributes of the unknown program file of the client such as other attributes than the unknown program file characteristics fed back in step S350, and/or attributes of the context of the unknown program file. If yes, proceed to step S410; if no, it ends directly.
  • Step S410 The client collects the specified attribute of the required program file and the attribute of the context environment according to the check condition returned by the server, and then sends the attribute to the server. Then, the process returns to step S360 until the process ends.
  • an audio and video software xxxUpdate. exe will load xxxUpdate. dl l in the same directory.
  • the audio and video software is a very large installation software in China, but it does not have enough protection and tampering check on its own program files, so malicious Program m can use this security vulnerability of the video software to replace xxxUpdate.dl l with a malicious program.
  • the detection and killing steps using this scheme are as follows:
  • the client sends the file name and MD5 value of xxxUpdate.dl l to the server;
  • the server side matches the file name and the MD5 value to the corresponding killing method, and then further sends a scan indication (corresponding to the second scan content indication in the foregoing embodiments), the judgment logic and the repair logic to the client.
  • the scan instruction requires checking whether the security level of the file is trusted, and the company signature name of the file is "Beijing XXX Co., Ltd.”; the judgment logic indicates that if the security level of the file is not trusted, and the company signature If the name is not "Beijing XXX Co., Ltd.”, it is judged that the file has been tampered with by a malicious program, which is a malicious program; the corresponding repair logic indicates that if the scan result satisfies the judgment logic and judges that the file is a malicious program, the corresponding repair action is prohibited xxxUpdate
  • the exe starts with the system and replaces xxxUpdate. dl l with the original file.
  • the client scans the file according to the scan content above, and determines whether the file is a malicious program according to the scan result and the judgment logic provided by the server. If yes, the malicious program is reported to the user, when the user selects to clear Execute the killing action returned by the server, such as repair processing.
  • the client device does not report the current system environment information to the server device, and the server does not need to generate the first scan content indication according to the system environment information reported by the client device, and then Let the device on the client scan according to the first scan content indication. Instead, the client device scans directly based on known scanning logic (such as the scanning logic of the local engine or the scanning logic previously notified by the server), and then directly reports the suspected unknown program file that cannot be judged to be safe. To the server-side device, the rest of the processing is the same as that described in the foregoing embodiments, and therefore will not be described again.
  • known scanning logic such as the scanning logic of the local engine or the scanning logic previously notified by the server
  • the embodiment of the present invention can re-determine whether it is a malicious program or cannot find an accurate repair solution by using the file name of the suspect unknown program file, MD5, SHA, etc.
  • MD5 the file name of the suspect unknown program file
  • SHA the version and other attributes and/or the attributes of the context of the unknown program file for further judgment
  • both the client will further scan the various
  • the attribute result is sent to the server to determine whether the server directly sends the judgment logic and repair logic related to the scan result to the client, and let it judge by itself.
  • the essence is that the cloud server timely delivers the personalized scan content.
  • the method of obtaining the killing method is dynamically obtained from the server side, thereby avoiding the detection of the new malicious program by upgrading the local signature database and the engine program, thereby speeding up the attack on the new malicious program. , effectively curbed its rapid spread.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in the specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose, unless otherwise stated.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor can be used in practice to implement a sweep for malicious program killing in accordance with an embodiment of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • FIG. 4 illustrates an intelligent electronic device that can implement a scanning method for malicious program killing or a cloud management method for malicious program killing or a cloud security based malicious program scanning method according to the present invention.
  • the intelligent electronic device conventionally includes a processor 710 and a computer program product or computer readable medium in the form of a memory 720.
  • Memory 720 can be an electronic memory such as flash memory, EEPROM (Electrically Erasable Programmable Read Only Memory), EPROM, hard disk or ROM.
  • Memory 720 has a memory space 730 for program code 731 for performing any of the method steps described above.
  • storage space 730 for program code can include various program code 731 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such a computer program product is typically a portable or fixed storage unit as described with reference to Figure 5.
  • the storage unit may have a storage section or a storage space or the like arranged similarly to the storage 720 in the smart electronic device of Fig. 4.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit comprises a program 73 for performing the steps of the method according to the invention, i.e. code which can be read by a processor, such as 710, which, when executed by the intelligent electronic device, causes the intelligent electronic device to execute Each of the steps in the method described above.
  • a scanning device for malicious program killing comprising: a first transmission interface configured to transmit information to a server device, and receive information transmitted by the server device; an environment information reader And configured to read the current system environment information of the client device, and transmit the information to the server device through the first transmission interface; the first scanner is configured to obtain the location through the first transmission interface Determining, by the server device, at least a first scan content indication determined based on the system environment information, scanning a specified location in the first scan content indication, and at least passing the scanned feature data of the unknown program file through the The first transmission interface is transmitted to the server device; and the second scanner is configured to obtain, by using the first transmission interface, a second scan content indication transmitted by the server device, where the second scan content indication includes Unknown process The specified attribute of the sequence file and/or the specified attribute of the context of the unknown program file are scanned, and the scanning is performed according to the second scan content indication.
  • the scanning device is further configured to transmit a scan result after scanning according to the second scan content indication, to the server end device by using the first transmission interface.
  • the scanning device further includes: a first repairer configured to obtain, by the first transmission interface, repair logic determined by the server end device based on a scan result provided by the second scanner, and according to the repair The logic repairs the unknown program file.
  • repair processing comprises one or more of the following processing modes: deleting a specified registry key and/or a key value, modifying a registry key, and/or a key value. Specify content, delete specified system service items, and repair or delete specified program files.
  • environmental system information comprises one or more of the following: operating system version information, system patch installation information, software installation information, and driver installation. Information and process and service information that is running on the system.
  • the feature data of the program file includes one or more of the following information: adopting a specific algorithm for all or part of the key content of the unknown program file
  • the specified attribute of the unknown program file includes one or more of the following information: feature data, file size, security level, signature information, and version information.
  • the attribute of the context of the unknown program file includes one or more of the following information: information of a directory in which the unknown program file is located, a registry The information of the startup location in the same directory as the program file or the attribute information of other files in the specified directory, and the running status of the specified process.
  • the disclosure discloses a B8, a cloud management device for malicious program killing, comprising: a second transmission interface configured to transmit information to a client device, and receive information transmitted by the client device; And configured to generate a first scan content indication according to a characteristic of the new malicious program and system environment information transmitted by the client device, where the first scan content indication includes at least scanning the content of the specified location and notifying the scanned unknown Feature data of the program file, and transmitting the first scan content indication to the client device through the second transmission interface; a first matcher configured to obtain the client through the second transmission interface Feature data of the unknown program file transmitted by the device, and accordingly matched in a known malicious program feature data record; and a second indicator configured to when the first matcher fails to match the known Generating a second scan content indication when recording, the second scan content indication including designating the unknown program file
  • the attribute and/or the specified attribute of the context of the unknown program file are scanned and transmitted to the client device via the second transmission interface.
  • the cloud management device is further configured to obtain, by using the second transmission interface, a scan result obtained by the client device after scanning according to the second scan content indication, and Determining whether the unknown program file is a malicious program, and transmitting the determination result to the client device through the second transmission interface; or, the second indicator is further configured to be the second Scan content indicates the relevant judgment logic one And transmitting to the client device by using the second transmission interface, where the determining logic is logic for determining whether the unknown program file is a malicious program.
  • the second indicator is further configured to detect, according to the scan result obtained by the client device according to the second scan content after scanning, in a known malicious program.
  • the repair logic matching the scan result is found, transmitting to the client device through the second transport interface; or the second indicator is further configured to be according to the second scan Content indication is matched in a known malicious program killing database, and the matched repair logic associated with the second scan content indication and the second scan content indication are transmitted together through the second transmission interface to the Describe the client device.
  • the cloud management device according to any one of B8 to B10, wherein the characteristics of the new malicious program include: feature information of a new malicious program using a specific location for hiding and/or attacking.
  • the first scan content indication is an indication of a condition, the condition comprising one or more of the following: specifying whether a file exists, Whether the specified directory exists, whether the attributes of the program file meet the specified conditions, whether the specified registry key exists, whether the specified registry key exists, whether the content of the registry key satisfies the specified condition, whether the content of the registry key satisfies the specified condition, Specifies whether the process exists and whether the specified service exists.
  • the cloud management device of any one of B8 to B12 wherein the repair logic comprises one or more of the following: deleting a specified registry key and/or a key value, modifying a registry key, and The / or key value specifies the content, deletes the specified system service item, and repairs or deletes the specified program file.
  • the cloud management device according to any one of B8 to B13 wherein the feature data of the unknown program file includes one or more of the following information: adopting all or part of the key content of the unknown program file The data obtained by the specific algorithm, the file name; the specified attribute of the unknown program file includes one or more of the following information: feature data, file size, signature information, and version information.
  • the attribute of the context of the unknown program file includes one or more of the following information: information of the directory where the unknown program file is located, security Level information, information about the startup location in the registry, attribute information of the same directory as the program file or other files in the specified directory, and the running status of the specified process.
  • C16 a cloud security-based malicious program scanning system, comprising the scanning device for malicious program killing according to any one of A1 to A7, and the method of any one of B8 to B15 Cloud management device for malicious program detection.
  • D17 a scanning method for malicious program killing, comprising: reading current system environment information of a client device, and transmitting the information to a server device; obtaining the server device to determine based on the system environment information And displaying, by the first scan content, a specified location in the first scan content indication, and transmitting at least feature data of the scanned unknown program file to the server device; and obtaining the server device Transmitting, by the second scan content, the second scan content indication includes scanning a specified attribute of the unknown program file and/or a specified attribute of a context of the unknown program file, and according to the second scan content Instruct to scan. D18.
  • the scanning method further comprising: transmitting a scan result that is scanned according to the second scan content indication to a server device; and obtaining the unknown program determined by the server device based on the scan result. Whether the file is the judgment result of the malicious program, and according to the judgment result Or the processing logic of the second scanning content indication notified by the server device, and determining the unknown according to the scanning result after the scanning according to the second scanning content indication and the determining logic Whether the program file is a malicious program, and the corresponding processing.
  • the present invention discloses an E19, a cloud management method for malicious program detection, comprising: generating a first scan content indication according to a characteristic of a new malicious program and system environment information transmitted by the client device, where the first scan content indicates at least Including scanning the content of the specified location and notifying the scanned feature data of the unknown program file, and transmitting the first scan content indication to the client device; obtaining the unknown program file transmitted by the client device Feature data, and accordingly matching in a known malicious program killing database; and generating a second scan content indication when the feature data of the unknown program file fails to match the known record, the The second scan content indication includes scanning a specified attribute of the unknown program file and/or a specified attribute of a context of the unknown program file, and transmitting the second scan content indication to the client device.
  • E20 The cloud management method according to E19, further comprising: obtaining a scan result obtained by the client device according to the second scan content indication scan, and determining whether the unknown program file is a malicious program according to the Determining a result and/or repair logic matching the scan result to the client device; or, determining logic and/or repair logic associated with the second scan content indication, and the second scan content
  • the indications are transmitted together to the client device.
  • a cloud security-based malicious program scanning method comprising: a client device reads current system environment information and transmits it to a server device; the server device according to characteristics of the new malicious program and the client The system environment information transmitted by the device generates a first scan content indication, where the first scan content indication includes at least scanning the content of the specified location and notifying the scanned feature data of the unknown program file, and indicating the first scan content Transmitting to the client device; the client device performs scanning according to the first scan content indication, and transmits at least the scanned feature data of the unknown program file to the server device; the server device is configured according to The feature data of the unknown program file is matched in a known malicious program detection database; when the feature data according to the unknown program file fails to match the known record, the server device generates the second scan content.
  • the second scan content indication includes Scanning the specified attribute of the unknown program file and/or the specified attribute of the context of the unknown program file, and transmitting the second scan content indication to the client device; the client device according to the The second scan content indicates that the scan is performed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种用于恶意程序查杀的扫描设备、云端管理设备及方法和系统。其中,一种用于恶意程序查杀的云端管理设备,包括:第二传输接口;第一指示器,被配置为根据新生恶意程序的特性和客户端设备传输的系统环境信息生成第一扫描内容指示;第一匹配器,被配置为通过第二传输接口获得客户端设备传输的所述未知程序文件的特征数据,并据此在已知的恶意程序特征数据记录中进行匹配;以及第二指示器,被配置为当第一匹配器未能匹配到已知记录时生成第二扫描内容指示,第二扫描内容指示包括对所述未知程序文件的指定属性和/或所述未知程序文件的上下文环境的指定属性进行扫描,并通过第二传输接口传输至客户端设备。

Description

用于恶意程序查杀的扫描设备、 云端管理设备及方法和系统 技术领域
本发明涉及网络信息安全技术领域, 具体涉及一种用于恶意程序查杀的扫描、 云 端管理设备及方法和系统。 背景技术
现有的恶意程序查杀方法, 大多由本地引擎根据内置的扫描位置进行扫描, 把本 地无法识别的未知程序文件的 M D 5等特征发送给云端服务器, 由云端服务器根据 客户端发送的程序文件特征进行比对并判断是否为恶意程序, 如果是恶意程序客户 端本地引擎再根据内置客户端本地的清除逻辑清理恶意程序。 然而在恶意程序与安 全软件白热化的持续对抗中, 恶意程序作者总会找到操作系统新的可利用的点和安 全软件忽视的点从而绕过安全软件的检测和查杀。 此时安全厂商拿到恶意程序的样 本后, 通常需要修改本地引擎才能查杀新的恶意程序, 从拿到样本到人工分析然后 把新版本引擎程序文件升级到所有客户端, 在这期间恶意程序已经大面积传播。 发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上 述问题的用于恶意程序查杀的扫描设备和相应的扫描方法, 以及用于恶意程序查杀 的云端管理设备和相应的云端管理方法, 以及一种基于云安全的恶意程序扫描系统 和扫描方法。
依据本发明的一个方面, 提供了一种用于恶意程序查杀的扫描设备, 包括: 第一 传输接口, 被配置为向服务器端设备传输信息, 以及接收服务器端设备传输的信息; 环境信息读取器, 被配置为读取客户端设备当前的系统环境信息, 并通过第一传输 接口传输至服务器端设备; 第一扫描器, 被配置为通过第一传输接口获得服务器端 设备至少基于系统环境信息判断的第一扫描内容指示, 并对第一扫描内容指示中的 指定位置进行扫描, 以及至少将扫描得到的未知程序文件的特征数据通过第一传输 接口传输至服务器端设备; 以及第二扫描器, 被配置为通过第一传输接口获得服务 器端设备传输的第二扫描内容指示, 第二扫描内容指示包括对未知程序文件的指定 属性和 /或未知程序文件的上下文环境的指定属性进行扫描, 以及根据第二扫描内容 指示进行扫描。
根据本发明的另一方面, 提供了种用于恶意程序查杀的云端管理设备, 包括: 第 二传输接口, 被配置为向客户端设备传输信息, 以及接收客户端设备传输的信息; 第一指示器, 被配置为根据新生恶意程序的特性和客户端设备传输的系统环境信息 生成第一扫描内容指示, 第一扫描内容指示至少包括对指定位置的内容进行扫描并 告知扫描到的未知程序文件的特征数据, 以及通过第二传输接口将第一扫描内容指 示传输至客户端设备; 第一匹配器, 被配置为通过第二传输接口获得客户端设备传 输的未知程序文件的特征数据, 并据此在已知的恶意程序特征数据记录中进行匹配; 以及第二指示器, 被配置为当第一匹配器未能匹配到已知记录时生成第二扫描内容 指示, 第二扫描内容指示包括对未知程序文件的指定属性和 /或未知程序文件的上下 文环境的指定属性进行扫描, 并通过第二传输接口传输至客户端设备。
根据本发明的又一方面, 提供了一种基于云安全的恶意程序扫描系统, 包括如上 的任一用于恶意程序查杀的扫描设备, 以及如上的任一用于恶意程序查杀的云端管 理设备。
根据本发明的又一方面, 提供了一种用于恶意程序查杀的云端管理方法, 包括: 根据新生恶意程序的特性和客户端设备传输的系统环境信息生成第一扫描内容指 示, 第一扫描内容指示至少包括对指定位置的内容进行扫描并告知扫描到的未知程 序文件的特征数据, 以及将第一扫描内容指示传输至客户端设备; 获得客户端设备 传输的未知程序文件的特征数据, 并据此在已知的恶意程序查杀数据库中进行匹配; 以及当根据未知程序文件的特征数据未能匹配到已知记录时, 生成第二扫描内容指 示, 第二扫描内容指示包括对未知程序文件的指定属性和 /或未知程序文件的上下文 环境的指定属性进行扫描, 并将第二扫描内容指示传输至客户端设备。
根据本发明的又一方面, 提供了一种基于云安全的恶意程序扫描方法, 包括: 客 户端设备读取当前的系统环境信息, 并传输至服务器端设备; 服务器端设备根据新 生恶意程序的特性和客户端设备传输的系统环境信息生成第一扫描内容指示, 第一 扫描内容指示至少包括对指定位置的内容进行扫描并告知扫描到的未知程序文件的 特征数据, 以及将第一扫描内容指示传输至客户端设备; 客户端设备根据第一扫描 内容指示进行扫描, 并至少将扫描得到的未知程序文件的特征数据传输至服务器端 设备; 服务器端设备根据未知程序文件的特征数据在已知的恶意程序查杀数据库中 进行匹配; 当根据未知程序文件的特征数据未能匹配到已知记录时, 服务器端设备 生成第二扫描内容指示, 第二扫描内容指示包括对未知程序文件的指定属性和 /或未 知程序文件的上下文环境的指定属性进行扫描, 并将第二扫描内容指示传输至客户 端设备; 客户端设备根据第二扫描内容指示进行扫描。
根据本发明提供的实施例可以看出, 在仅通过未知程序文件的基本特征数据 (如 文件名、 MD5、 SHAl或根据文件内容计算出的其他特征等)无法判断是否为恶意程序 或者无法找到准确的修复方案时, 可以再通过要求客户端设备进一步扫描未知程序 文件的签名、 版本等指定属性和 /或未知程序文件的上下文环境的属性来做进一步判 断, 从而能更准确的判断出客户端自己无法确定是否安全的未知程序文件。 由于采 用这种方案, 云端服务器及时下发个性化的扫描内容, 并根据程序文件的属性及其 所在上下文环境的属性从服务器端动态获取查杀方法, 避免了通过升级本地特征库 和引擎程序才能检测和清除新生恶意程序, 从而加快了对新生恶意程序的打击速度, 有效地遏制了其快速蔓延。
上述说明仅是本发明技术方案的概述, 为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施, 并且为了让本发明的上述和其它目的、 特征和优 点能够更明显易懂, 以下特举本发明的具体实施方式。 附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。 附图仅用于示出优选实施方式的目的, 而并不认为是对 本发明的限制。 而且在整个附图中, 用相同的参考符号表示相同的部件。 在附图中: 图 1示出了根据本发明一个实施例的基于云安全的恶意程序扫描系统; 图 2示出了根据本发明一个实施例的基于云安全的恶意程序扫描方法流程图;以 及
图 3示出了根据本发明又一个实施例的基于云安全的恶意程序查杀方法流程图; 图 4示意性地示出了可以实现根据本发明的智能电子设备; 以及
图 5示意性地示出了用于保持或者携带实现根据本发明的方法的程序代码的存储 单元。 具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。 虽然附图中显示了本公开的 示例性实施例, 然而应当理解, 可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。 相反, 提供这些实施例是为了能够更透彻地理解本公开, 并且能够将本公开的 范围完整的传达给本领域的技术人员。
本发明实施例可以应用于计算机系统 /服务器,其可与众多其它通用或专用计算系统 环境或配置一起操作。适于与计算机系统 /服务器一起使用的众所周知的计算系统、环境 和 /或配置的例子包括但不限于: 个人计算机系统、 服务器计算机系统、 瘦客户机、 厚客 户机、 手持或膝上设备、 基于微处理器的系统、 机顶盒、 可编程消费电子产品、 网络个 人电脑、 小型计算机系统、 大型计算机系统和包括上述任何系统的分布式云计算技术环 境, 等等。
计算机系统 /服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模 块) 的一般语境下描述。 通常, 程序模块可以包括例程、 程序、 目标程序、 组件、 逻辑、 数据结构等等, 它们执行特定的任务或者实现特定的抽象数据类型。计算机系统 /服务器 可以在分布式云计算环境中实施, 分布式云计算环境中, 任务是由通过通信网络链接的 远程处理设备执行的。 在分布式云计算环境中, 程序模块可以位于包括存储设备的本地 或远程计算系统存储介质上。 请参阅图 1,其示出了根据本发明一个实施例的基于云安全的恶意程序扫描系统,包 括用于恶意程序查杀的扫描设备 110,以及用于恶意程序查杀的云端管理设备 210,其中, 扫描设备 110可以设置于客户端, 比如客户端设备 100中, 云端管理设备 210可以设置 于服务器端, 比如服务器端设备 200中。 扫描设备 110可以和云端管理设备 210进行通 信, 具体而言, 扫描设备 110中的第一传输接口 118可以向服务器端设备 200传输信息, 以及接收服务器端设备 200传输的信息; 云端管理设备的第二传输接口 218可以向客户 端设备 100传输信息, 以及接收客户端设备 100传输的信息。 其中, 扫描设备 110可以 包括环境信息读取器 112、 第一扫描器 114、 第二扫描器 116以及第一传输接口 118。 云 端管理设备 210可以包括第一指示器 212、 第一匹配器 214、第二指示器 216以及第二传 输接口 218。
首先, 环境信息读取器 112读取客户端设备 100当前的系统环境信息, 并通过第一 传输接口 118传输至服务器端设备 200的第二传输接口 218。客户端设备 100当前的环境 系统信息可以包括很多, 比如操作系统的版本信息、 系统补丁安装信息、 软件安装信息、 驱动安装信息以及活动进程和服务信息等信息中的任意一种或多种。 其中, 操作系统有 很多种, 比如 windows 98、 windows 2003、 windows XP以及 Windows Vista等, 不同操 作系统对应的版本信息也不同, 因此通过操作系统的版本信息, 服务器端设备 200就可 以知道客户端设备 100当前运行的是哪种具体版本的操作系统。 活动进程即为系统中正 在运行的进程, 可以通过调用相应的 API (Appl ication Programming Interface,应用程 序编程接口)函数等多种手段在系统中查询到当正在运行的各种进程信息, 以及进程相关 的标识符, 用户名, cpu占用率, 内存占用率, 描述信息等。 在客户端设备 100初始化本 地引擎和网络环境之后, 环境信息读取器 112就可以读取当前的系统环境信息, 并传输 至服务端设备 200。
位于服务器端设备 200中的云端管理设备 210中的第二传输接口 218接收到客户端 设备 100当前的系统环境信息之后,传输给第一指示器 212,进而第一指示器 212根据新 生恶意程序的特性和客户端设备 100传输的系统环境信息生成第一扫描内容指示。其中, 新生恶意程序的特性可以有很多种, 比如根据最新恶意程序的流行趋势分析出的新生恶 意程序利用特定位置进行隐藏和 /或攻击的特征信息, 比如新生恶意程序通常利用的位 置, 如某游戏的安装目录、 常用软件的安装目录、 某些特定的注册表项等。 进而, 服务 器端设备 200可以根据新生恶意程序通常利用的隐藏和 /或攻击位置,结合客户端设备上 报的当前系统环境信息, 就可以给出针对该客户端设备个性化的扫描内容指示, 即第一 扫描内容指示。 比如通过客户端设备 100上报的软件安装信息发现该客户端设备 100安 装了某个游戏软件, 而根据新生恶意程序的特性知道当前很多恶意程序都是利用该游戏 软件的安装目录进行隐藏或恶意替换文件, 则服务器端设备 200就会在第一扫描内容指 示中要求客户端设备 100扫描该游戏安装目录下的内容, 以便发现该客户端设备 100中 可疑的未知程序文件。 可以看出, 由于第一扫描内容指示不仅仅依据服务器端掌握的新 生恶意程序的特性, 还要结合客户端设备 100的具体系统环境信息, 因此第一扫描内容 指示是个性化的, 有针对性的, 针对不同的客户端设备 100下发的第一扫描内容指示往 往是不同的。
在第一扫描内容指示中至少包括对指定位置的内容进行扫描并要求告知扫描到的未 知程序文件的特征数据, 具体而言, 第一扫描内容指示可以是根据新生恶意程序的特性 和客户端设备 100当前的系统环境信息生成的一段文本或脚本, 即通过该指示可以告知 客户端设备 100需要扫描哪些内容, 以及上报哪些扫描结果。
应当注意的是, 第一扫描内容指示可以是不附带任何条件的指示, 也可以是附条件 的指示。 如果是附条件的指示, 则只有在满足预置条件时, 客户端设备 100中的扫描设 备 110才根据第一扫描内容指示进行扫描。 第一扫描指示可以附带的条件有很多, 比如 包括但不限于下述内容中的一种或多种: 指定文件是否存在、 指定目录是否存在、 程序 文件的属性是否满足指定条件 (比如消息摘要 MD5是否为指定值) 、 指定注册表键是否 存在、 指定注册表键值是否存在、 注册表键的内容是否满足指定条件、 注册表键值的内 容是否满足指定条件 (比如是否包含或等于特定字符串或者某个值) 、 指定进程是否存 在、 指定服务是否存在以及指定服务是否满足指定的条件(比如是否为特定的服务名称、 特定的服务描述或特定的显示名称) 等。
服务器端在第一指示器 212生成第一扫描内容指示之后, 就将该第一扫描内容指示 通过第二传输接口 218传输至客户端设备 100中的第一传输接口 118。
然后,位于客户端设备 100中的扫描设备 110的第一传输接口 118,将接收到的服务 器端设备 200至少基于系统环境信息判断得到的第一扫描内容指示告知第一扫描器 114。 进而, 第一扫描器 114对第一扫描内容指示中的指定位置进行扫描。 前面提到, 第一扫 描内容指示可以是附条件的指示, 或者称为扫描条件, 那么第一扫描器 114需要先判断 是否满足第一扫描内容指示所附带的扫描条件, 比如前面提到的那些可选条件。 当第一 扫描器 114判断满足第一扫描内容附带的条件时, 才对第一扫描内容指示中的指定位置 进行扫描。 当然, 如果第一扫描内容指示不是附条件的指示, 则第一扫描器 114就无需 先判断, 直接按照第一扫描内容中指示的扫描位置扫描即可。
可选的, 第一扫描器 114除了按照第一扫描内容指示在客户端设备 100中进行个性 化的扫描外, 第一扫描器 114还可以对客户端设备 100本地引擎内置的扫描位置进行常 规扫描。
在第一扫描器 114完成扫描之后就会发现未知程序文件, 然后提取未知程序文件的 特征数据, 特征数据可以有很多种, 比如下述信息中的一种或多种: 对未知程序文件的 全部或部分关键内容 (即从文件中抽取一部分内容) 根据特定的算法 (如 MD5、 SHA1或 其他算法) 计算出的数据以及文件名等。 程序文件的这些特征数据, 可以理解为是程序 文件的基本属性信息。 第一扫描器 114在获得未知程序文件的特征数据后, 就将未知程 序文件的特征数据通过第一传输接口 118 传输至服务器端设备 200 中的第二传输接口 进而,服务器端的第二传输接口 218将收到的未知程序文件的特征数据提供给第一 匹配器 214,第一匹配器 214据此在已知的恶意程序查杀数据库中进行匹配,在该数据库 中记录有恶意程序的一些特征信息, 此外还可以记录判断是否为恶意程序的判断逻辑, 以及可能的查杀方法 (如修复逻辑) 等。 其中, 恶意程序的特征可以包括很多信息, 比 如文件名、 程序文件的摘要、 文件大小、 签名信息、 版本信息等文件的属性信息, 再比 如还可以包括文件所在目录、 注册表中的启动位置、 同目录下或指定目录下其他文件的 属性等程序文件的上下文环境属性。 因为现有恶意程序比较复杂, 往往单纯通过一两个 特征无法准确判断是否为恶意程序, 很多情况下需要根据多种特征综合判断, 这种综合 判断未知程序文件是否为恶意程序的逻辑就是前述的判断逻辑。 查杀方法包括但不限于 扫描 /判定和修复操作。 由于服务器端的存储量、运算量以及收集恶意程序特征信息的能 力、 更新速度都远远强于客户端, 因此, 当客户端设备 100根据本地引擎无法判断的未 知程序文件, 服务器端设备 200就可以根据已知的数据库判断出来。
如果第一匹配器 214在已知的恶意程序查杀数据库中匹配成功, 即能够判断该未知 程序文件是否为恶意程序, 可选的, 某些情况还可以匹配出对应的修复逻辑, 则可以将 判断结果和对应的修复逻辑通过第二传输接口 218反馈给客户端设备 100的第一传输接 口 118。 可选的, 客户端设备 100还包括查杀器, 客户端设备 100中的第一传输接口 118 将服务器端设备 200基于未知程序文件的特征判断出其是否为恶意程序的判断结果和修 复逻辑告知查杀器, 查杀器执行对应的操作。 比如, 如果判断结果发现该未知程序文件 是恶意程序, 则查杀器根据服务器端设备 200返回的修复逻辑对未知程序文件进行修复 处理。 修复处理包括但不限于删除指定的注册表键 /值、 修改注册表键 /值为指定内容、 删除指定系统服务项、 修复 /删除指定程序文件等。
具体到修复指定程序文件, 则根据需要修复的文件类型不同有多种修复方案。 比如, 有些需要修复的是系统文件, 有些是常用软件的程序文件, 有些是一般的文件。 修复这 些程序文件的基本原理类似, 通常都是服务器端根据客户端需要修复的程序文件的一些 属性信息, 在云端数据库中进行匹配, 查找是否有匹配的未感染病毒的程序文件, 如果 有, 就提供给客户端进行替换, 从而完成修复。 不同文件在具体匹配时可以根据实际需 要设置不同的匹配条件, 比如如果是系统文件, 可以要求文件的各种属性信息 (如文件 名称、 版本信息等) 全部一致, 才算匹配成功, 即成功找到用于修复的替换文件; 而对 于非系统的一般文件, 如果云端数据库中存储的是基本版本或者是标准版本, 则也可以 认为匹配成功。 此外, 即便同样是系统文件, 或者同样是非系统的一般文件, 也可以根 据文件的实际应用环境不同、 要求不同、 或者是操作系统不同而设置不同的匹配条件。 比如, 可能某种系统文件, 就需要文件名称、 版本信息等各种属性全部一致才算匹配成 功, 但另一种系统文件, 只需要文件名称一致、 版本为基本版本或标准版本, 就可以认 为是匹配成功。 下面再给以一种常用软件被木马破坏为例, 详细说明修复过程中如何对程序文件进 行替换。 例如, 木马破坏了某种常用软件的程序文件后, 原程序文件的信息已经不可用 了。 这种情况下服务器端设备 200通过客户端设备 100之前提供的有关该软件的信息, 如软件名称, 版本, 程序文件的版本、 目录等, 就可以知道需要为客户端设备 100提供 哪些替换文件, 进而根据文件名称、 版本等信息在云端数据库中进行匹配, 找出未感染 病毒并且匹配的替换文件提供给客户端设备 100, 然后客户端设备 100将服务器端设备 200提供的未感染病毒、 与本机一致的程序文件, 替换原来被破坏的程序文件即可。
如果第一匹配器 214在已知的恶意程序查杀数据库中未能匹配成功, 即根据未知程 序文件的特征数据无法准确匹配,则会通知第二指示器 216,进而第二指示器 216根据未 知程序文件的特征数据提供的基本信息以及已知新生恶意程序的特性, 继续生成第二扫 描内容指示。因为通过第一指示器已经知道了未知程序文件的特征数据等基本属性信息, 然后再结合当前恶意程序的特性, 比如这类未知程序文件如果是恶意程序, 一般还具有 哪些特性, 比如该未知程序文件的签名信息可能不是指定名称、 该未知程序文件所在目 录或相关目录下的其他文件属性可能是指定属性等。
具体而言,第二扫描内容指示包括对未知程序文件的指定属性和 /或未知程序文件的 上下文环境的指定属性进行扫描。 例如, 第二扫描内容指示可以仅要求客户端设备 100 扫描未知程序文件的指定属性并上报, 也可以仅要求客户端设备 100扫描未知程序文件 的上下文环境的指定属性并上报,还可以要求客户端设备 100将其他指定属性和上下文环 境的指定属性一并上报。
应当注意, 未知程序文件的指定属性包括但不限于下述信息中的一种或多种: 特征 数据、 文件大小、 安全级别、 签名信息以及版本信息等。 需要说明的是, 虽然此前客户 端设备 100根据服务器端的第一扫描内容指示扫描后已经上报过未知程序文件的特征数 据这一基本属性了, 但是由于客户端设备 100和服务器端设备 200可能不是长连接, 因 此后续客户端设备 100在根据服务器端第二扫描内容指示扫描后上报未知程序文件的指 定属性信息时, 有可能还需要再将未知程序文件的特征数据等基本信息再上报一次。 因 此第二扫描内容指示中, 可能既有要求扫描并上报未知程序文件特征数据以外的其他指 定属性的内容, 又有要求扫描并上报未知程序文件特征数据的内容。 当然, 如果客户端 设备 100和服务器端设备 200之间是长连接, 那么第二扫描内容指示中也可以不要求客 户端设备 100再上报一次曾经上报过的未知程序文件的特征数据等基本信息。 安全级别 包括但不限于恶意 (即属于黑名单) 、 安全 (即属于白名单、 可信) 、 未知以及可疑等。 未知程序文件的上下文环境的属性包括但不限于下述信息中的一种或多种: 未知程序文 件所在目录的信息、 指定注册表键值的信息、 与所述程序文件同目录或指定目录下的其 他文件的属性信息、 以及指定进程的运行状态等。
第二指示器 216在生成第二扫描内容指示后, 通过第二传输接口 218传输至客户端 设备 100中的第一传输接口 118,进而第一传输接口 118再将第二扫描内容指示通知第二 扫描器 116。第二扫描器 116再根据第二扫描内容指示对未知程序文件的指定属性信息和 /或上下文环境的属性信息进行扫描,最后将扫描结果传输至服务器端设备 200的第二传 输接口 218。
在本发明的一个实施例中, 第二传输接口 218将接收到的第二扫描器 116提供的扫 描结果再告知第二指示器 216,进而第二指示器 216据此在已知的恶意程序查杀数据库中 进行分析比对, 前面已经给出过恶意程序查杀数据库的具体内容, 由此可知, 因为此次 客户端设备 100提供的未知程序文件的扫描结果包含了更多的信息, 比如包含了未知程 序文件的签名信息、 安全级别、 版本信息等其他属性, 或者包含了未知程序文件的上下 文环境的各种属性信息, 再或者未知程序文件的其他属性和上下文环境的属性都扫描到 了, 那么第二指示器 216就可以根据这些更全面的信息, 以及恶意程序查杀数据库中的 特征信息及判断逻辑进一步分析判断该未知程序文件是否为恶意程序文件, 如果判断是 恶意程序还可以进一步查看是否有对应的修复逻辑。 修复逻辑包括但不限于下述逻辑中 的一种或多种: 删除指定的注册表键和 /或键值、 修改注册表键和 /或键值为指定内容、 删除指定系统服务项以及修复或删除指定程序文件。
进而, 第二指示器 216通过第二传输接口 218将未知程序文件是否为恶意程序文件 的判断结果传输至客户端设备 100。进一步, 如果判断结果是恶意程序, 并且在已知的恶 意程序查杀数据库中能够找到匹配的修复逻辑, 则也将匹配的修复逻辑通过第二传输接 口 218传输至客户端设备。
客户端的扫描设备 110还包括第一处理器, 第一处理器通过第一传输接口 118获得 服务器端设备 200中第二指示器提供的未知程序文件是否为恶意程序文件的判断结果, 并根据该判断结果进行相应的处理。 比如, 如果判断结果是安全的程序文件, 则不用再 对未知程序文件进行查杀处理; 如果判断结果是恶意程序, 并且第二指示器 216提供了 修复逻辑, 则可以提示用户, 并询问用户是否进行修复, 在得到用户的确认后根据该修 复逻辑对未知程序文件进行修复处理。
在本发明的另一个实施例中, 为了减少客户端设备 100和服务器端设备 200之间的 通信, 第二指示器 216还可以在将第二扫描内容指示告知客户端设备 100的同时, 将与 第二扫描内容指示相关的判断逻辑, 甚至与判断逻辑相关的修复逻辑一起发送给客户端 设备 100。具体而言, 因为第二扫描内容指示主要包括对未知程序文件的特征数据以外的 其他指定属性和 /或未知程序文件的上下文环境的指定属性进行扫描, 因此服务器端可以 预知客户端设备 100按照第二扫描内容指示扫描后可能会得到哪些扫描结果, 然后根据 恶意程序查杀数据库可以判断出什么样的扫描结果表明该未知程序文件是恶意程序, 因 此可以查找出与第二扫描内容指示相关的判断逻辑, 即如何根据后续的扫描结果判断出 该未知程序文件是否是恶意程序。 如果是恶意程序, 则还可以进一步根据已知的恶意程 序查杀数据库查找是否有与上述第二扫描内容指示、 判断逻辑相关的修复逻辑。
处于客户端的扫描设备 110还可以包括第二处理器, 第二处理器通过第一传输接口 118获得服务器端第二指示器 216提供的与第二扫描内容指示相关的判断逻辑,然后根据 该判断逻辑以及第二扫描器 116按照第二扫描内容指示扫描后得到的扫描结果, 判断该 未知程序文件是否为恶意程序, 并进行相应的处理。 比如, 如果判断结果为该未知程序 文件是恶意程序,并且服务器端的第二指示器 216还发送了与判断逻辑相关的修复逻辑, 则可以在第二扫描器 116提供的扫描结果满足该修复逻辑时, 根据该修复逻辑进行相应 的修复处理。 其余处理的具体内容与上个实施例中第一处理器做所的相应处理类似, 不 再赘述。 可以看出在这个实施例中, 第二扫描器 116就不再需要将按照第二扫描内容指 示对未知程序文件进行扫描后的结果上传到服务器端设备了, 而是直接提供给第二处理 器即可。
通过上述实施例可以看出,如果扫描设备 110只包括环境信息读取器 112、第一扫描 器 114、 第二扫描器 116以及第一传输接口 118, 则其为单纯的恶意程序扫描设备, 如果 还包括第一处理器或第二处理器,则该扫描设备本质上是能够完成恶意程序查杀的设备, 可以理解为是用于恶意程序的查杀设备。
请参阅图 2,其示出了根据本发明一个实施例的基于云安全的恶意程序扫描方法流程 图。 该方法包括位于客户端侧的一部分流程, 还包括位于服务器端侧的一部分流程, 在 客户端侧的流程即为用于恶意程序查杀的扫描方法, 在服务器端侧的流程即为用于恶意 程序查杀的云端管理方法。
该方法始于步骤 S210,在 S210中读取客户端设备当前的系统环境信息,并传输至服 务器端设备。 系统环境信息包括但不限于操作系统的版本信息、 系统补丁安装信息、 软 件安装信息、 驱动安装信息以及活动进程和服务信息等信息中的任意一种或多种。 本步 骤可以通过前述扫描设备 110中的环境信息读取器 112来实现, 相关的技术实现可以参 考前述环境信息读取器 112在各实施例中的相关描述, 此处不再赘述。
然后, 在步骤 S220中服务器端设备获得客户端设备的系统环境信息, 根据新生恶意 程序的特性和客户端设备传输的系统环境信息生成第一扫描内容指示, 该第一扫描内容 指示至少包括对指定位置的内容进行扫描并告知扫描到的未知程序文件的特征数据, 以 及将该第一扫描内容指示传输至客户端设备。 本步骤可以通过前述位于服务器端的云端 管理设备 210中的第一指示器 212实现, 相关技术实现也请参考第一指示器 212在前述 各实施例中的描述, 此处不再赘述。
客户端设备在通过步骤 S220获得服务器端设备基于其上传的系统环境信息判断的第 一扫描内容指示之后, 在步骤 S230中对第一扫描内容指示中的指定位置进行扫描, 并至 少将扫描得到的未知程序文件的特征数据再传输至服务器端设备, 以便服务器端设备据 此进行进一步的判断。 本步骤可以通过位于客户端的扫描设备 110 中的第一扫描器 114 予以实现, 相关技术实现也请参考第一扫描器 114在前述各实施例中的描述, 此处不再 赘述。
服务器端设备在通过步骤 S230 获得客户端设备传输的未知程序文件的特征数据之 后,在步骤 S240中根据未知程序文件的特征数据在已知的恶意程序查杀数据库中进行匹 配, 判断该未知程序文件是否为恶意程序。 如果匹配成功, 判断出该未知程序文件是恶 意程序, 则还可以进一步查找是否有对应的修复逻辑, 如果有, 则可以将判断结果和修 复逻辑一并传输至客户端; 如果没有找到对应的修复逻辑, 则可以只将判断结果传输至 客户端设备。本步骤可以通过前述位于服务器端的云端管理设备 210中的第一匹配器 214 实现, 相关技术实现也请参考第一匹配器 214在前述各实施例中的描述, 此处不再赘述。
如果服务器端设备根据已知的恶意程序查杀数据库无法匹配到已知记录, 即无法判 断该未知程序文件是否是恶意程序, 则在步骤 S250中生成第二扫描内容指示, 第二扫描 内容指示包括对未知程序文件的指定属性和 /或未知程序文件的上下文环境的指定属性 进行扫描, 然后将第二扫描内容指示传输至客户端设备。 可以看出, 服务器端设备之所 以还要向客户端设备发送第二扫描内容指示, 是为了获得更多的未知程序文件相关的信 息, 以便做更进一步的判断。 本步骤可以通过前述位于服务器端的云端管理设备 210中 的第二指示器 216实现, 相关技术实现也请参考第二指示器 216在前述各实施例中的描 述, 此处不再赘述。
客户端设备在通过步骤 S250获得第二扫描内容指示后, 在步骤 S260中根据第二扫 描内容指示进行扫描,从而获知未知程序文件的指定属性和 /或未知程序文件的上下文环 境的指定属性。例如, 未知程序文件的指定属性包括但不限于下述信息中的一种或多种: 未知程序文件的特征数据、 文件大小、 安全级别、 签名信息以及版本信息等。 再例如, 未知程序文件的上下文环境的属性包括但不限于下述信息中的一种或多种: 未知程序文 件所在目录的信息、 注册表中的启动位置的信息、 与该程序文件同目录或指定目录下的 其他文件的属性信息、 以及指定进程的运行状态等。
在步骤 S260之后, 在本发明的一个实施例中, 首先客户端设备将按照第二扫描内 容指示进行扫描后的扫描结果传输至服务器端设备, 该步骤可以通过前述各实施例中的 第二扫描器 116执行, 相关技术特征可以参看该部件的描述, 此处不再赘述; 进而服务 器端设备获得客户端设备按照第二扫描内容指示扫描获得的扫描结果之后, 根据这个扫 描结果在已经的恶意程序查杀数据库中进一步分析比对, 再次判断未知程序文件是否为 恶意程序, 然后将判断结果 (如恶意、 安全、 未知、 可疑) 、 和 /或、 与该扫描结果匹配 的修复逻辑传输至客户端设备。 服务器端执行该步骤可以通过前述各实施例中的云端管 理设备 210中的第二指示器 216予以执行, 相关技术特征可以参看该部件的描述, 此处 不再赘述。 应当注意的是, 不是所有判断出是恶意程序的情况下都能找到对应的修复逻 辑, 所以在找到的情况下, 判断结果和修复逻辑可以一起传输至客户端设备; 在没找到 修复逻辑的情况下, 可以只将判断结果传输至客户端供其或用户参考; 还有可能只传输 修复逻辑, 因为客户端收到修复逻辑即可理解为未知程序文件就是恶意程序, 否则服务 器端设备不会向其反馈针对该未知程序文件的修复逻辑。 在客户端设备获得服务器端设 备反馈的未知程序文件是否为恶意程序的判断结果之后, 便可以根据该判断结果进行相 应的处理。 比如, 通过弹窗等安全提醒手段提醒用户, 或者在用户确认后根据修复逻辑 进行修复处理。 客户端设备执行该步骤可以通过前述各实施例中扫描设备 110中的第一 处理器执行, 相关技术特征可以参看该部件的描述, 此处不再赘述。
从这个实施例后续步骤描述可以看出, 客户端设备需要向服务器端设备至少传输两 次扫描结果, 以便服务器端设备根据扫描结果做判断。 为了减少客户端设备和服务器端 设备之间的通信次数, 提高效率, 还可以在本发明又一个实施例中采用下述流程处理。
在本发明的又一个实施例中, 在前述步骤 S250中, 服务器端设备除了生成第二扫描 内容指示并发送至客户端设备之外, 服务器端设备还根据已知的恶意程序查杀数据库获 得与第二扫描内容指示相关的判断逻辑和 /或修复逻辑, 然后将判断逻辑和 /或修复逻辑 以及第二扫描内容指示一起传输至客户端设备。 该步骤可以通过前述各实施例的云端管 理设备 210中的第二指示器 216予以实现, 相关技术实现可以参考该部件的相关描述, 此处不再赘述。 可以看出, 在步骤 S250之后, 客户端设备至少已经接收到了第二扫描内 容指示和与第二扫描内容指示相关的判断逻辑, 还有可能也一并接收到了与第二扫描内 容指示相关修复逻辑, 因此客户端设备在通过步骤 S260按照第二扫描内容指示进行扫描 获得扫描结果之后, 客户端设备就可以根据服务器端设备传输的与第二扫描内容指示相 关的判断逻辑以及扫描结果, 判断该未知程序文件是否为恶意程序, 如果是, 进一步检 测服务器端设备是否还同时传输了相关修复逻辑, 如果有则继续根据修复逻辑对未知程 序文件进行修复处理, 比如删除指定的注册表键和 /或键值、 修改注册表键和 /或键值为 指定内容、 删除指定系统服务项, 以及修复或删除指定程序文件等。 该步骤可以通过前 面各实施例的扫描设备 110中的第二处理器予以执行, 相关技术实现可以参考前述该步 骤的相关描述, 此处不再赘述。
在本发明的又一个实施例中, 给出了一种基于云安全的恶意程序查杀方法, 请参阅 图 3所示流程图。
该流程始于步骤 S310, 客户端初始化本地引擎和网络环境。
然后, 执行步骤 S320, 客户端读取系统环境信息发送给服务器端。
进而, 执行步骤 S330, 服务器端根据客户端的系统环境信息与预置的扫描内容的条 件进行判断, 把需要扫描的内容发送给客户端。 此处需要扫描的内容就相当于前述各实 施例中的第一扫描内容指示。
然后执行步骤 S340, 客户端执行本地引擎内置的扫描内容和服务器端返回的扫描内 容, 获得未知程序文件的特征, 比如文件名、 MD5或者 SHA等。
然后执行步骤 S350, 客户端设备把未知程序文件的特征发送给服务器端。
此后, 执行步骤 S360,服务器端根据程序文件的特征和 /或程序文件的上下文环境的 属性在数据库中进行查找。
然后进入步骤 S370,判断是否在数据库中发现匹配记录, 即是否找到对应的查杀方 法, 包括但不限于扫描 /判定动作和修复动作。 如果找到匹配记录, 则执行步骤 S380; 如 果没有找到匹配记录, 则执行步骤 S400。
步骤 S380: 服务器端把对应的查杀方法返回至客户端。 然后执行步骤 S390。
步骤 S390: 客户端根据服务器端返回的查杀方法执行相应动作。 然后结束。
步骤 S400 :服务器端判断是否需要进一步检查客户端未知程序文件的其他属性, 比如 步骤 S350反馈过的未知程序文件特征以外的其他属性,和 /或未知程序文件的上下文环境 的属性等。 如果是, 则继续执行步骤 S410,; 如果否, 则直接结束。
步骤 S410 :客户端根据服务器端返回的检查条件收集需要的程序文件的指定属性和其 上下文环境的属性, 然后发送给服务器端。 然后返回执行步骤 S360,直到流程结束。
在本发明的又一个实施例中, 给出了一个恶意程序查杀的具体实例。
例如某影音软件 xxxUpdate. exe会加载同目录下 xxxUpdate. dl l,该影音软件在中国是 一款安装量非常大的软件, 但没有对自身的程序文件做足够的保护和防篡改检查, 所以 恶意程序 m可以利用该影音软件的这个安全漏洞, 把 xxxUpdate. dl l替换为恶意程序。 采 用本方案的检测和查杀步骤如下:
首先, 客户端把 xxxUpdate. dl l的文件名和 MD5值发送给服务器端;
然后, 服务器端根据文件名和 MD5值匹配到有对应的查杀方法, 于是进一步向客户端 发出扫描指示 (相当于前述各实施例中的第二扫描内容指示) 、 判断逻辑和修复逻辑。 其中, 扫描指示中要求检查是此文件的安全级别是否为可信, 文件的公司签名名称是不 是 "北京 XXX有限公司"; 判断逻辑中指明如果此文件的安全级别不为可信、 且公司签名 名称不是 "北京 XXX有限公司",则判断该文件遭恶意程序篡改,是恶意程序; 对应的修复 逻辑中指出如果扫描结果满足判断逻辑, 判断该文件是恶意程序, 则对应的修复动作是 禁止 xxxUpdate. exe随系统启动, 并把 xxxUpdate. dl l替换为原版文件。
最后, 客户端根据上面的扫描内容对该文件进行扫描, 并且根据扫描结果以及服务器 端提供的判断逻辑判断该文件是否为恶意程序, 如果是, 则把恶意程序报告给用户, 当 用户选择清除时执行服务器端返回的查杀动作,比如修复处理。
在本发明的另一个实施例中,客户端设备并不向服务器端设备上报当前的系统环境信 息, 进而服务器端也就不需要根据客户端设备上报的系统环境信息生成第一扫描内容指 示, 然后让客户端上设备根据第一扫描内容指示进行扫描。 取而代之的是, 客户端设备 直接根据已知的扫描逻辑(比如本地引擎的扫描逻辑或者此前服务器端告知的扫描逻辑) 进行扫描, 然后直接将扫描得到的无法判断是否安全的可疑的未知程序文件上报至服务 器端设备, 其余的处理过程就与前述各实施例中描述的一样, 故不再赘述。
通过前述本发明提供的各个实施例可以看出,本发明实施例在仅通过可疑的未知程序 文件的文件名、 MD5、 SHA等无法判断是否为恶意程序或者无法找到准确的修复方案时, 可以再通过要求客户端设备进一步扫描未知程序文件的签名、版本等其他属性和 /或未知 程序文件的上下文环境的属性来做进一步判断, 从而能更准确的判断出客户端自己无法 确定是否安全的未知程序文件。 由于采用这种方案, 无论是客户端将进一步扫描的各种 属性结果发送到服务器端来判断, 还是服务器端直接将与扫描结果相关的判断逻辑、 修 复逻辑一并发送给客户端, 让其自己判断, 本质都是云端服务器及时下发个性化的扫描 内容,并根据程序文件的属性及其所在上下文环境的属性从服务器端动态获取查杀方法, 避免了通过升级本地特征库和引擎程序才能检测和清除新生恶意程序, 从而加快了对新 生恶意程序的打击速度, 有效地遏制了其快速蔓延。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种 通用系统也可以与基于在此的示教一起使用。 根据上面的描述, 构造这类系统所要求的 结构是显而易见的。 此外, 本发明也不针对任何特定编程语言。 应当明白, 可以利用各 种编程语言实现在此描述的本发明的内容, 并且上面对特定语言所做的描述是为了披露 本发明的最佳实施方式。
在此处所提供的说明书中, 说明了大量具体细节。 然而, 能够理解, 本发明的实施例 可以在没有这些具体细节的情况下实践。 在一些实例中, 并未详细示出公知的方法、 结 构和技术, 以便不模糊对本说明书的理解。
类似地, 应当理解, 为了精简本公开并帮助理解各个发明方面中的一个或多个, 在上 面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、 图、 或者对其的描述中。 然而, 并不应将该公开的方法解释成反映如下意图: 即所要求 保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。 更确切地说, 如 下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。 因此, 遵循具体实施方式的权利要求书由此明确地并入该具体实施方式, 其中每个权利 要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变 并且把它们设置在与该实施例不同的一个或多个设备中。 可以把实施例中的模块或单元 或组件组合成一个模块或单元或组件, 以及此外可以把它们分成多个子模块或子单元或 子组件。 除了这样的特征和 /或过程或者单元中的至少一些是相互排斥之外, 可以采用任 何组合对本说明书 (包括伴随的权利要求、 摘要和附图) 中公开的所有特征以及如此公 开的任何方法或者设备的所有过程或单元进行组合。 除非另外明确陈述, 本说明书 (包 括伴随的权利要求、 摘要和附图) 中公开的每个特征可以由提供相同、 等同或相似目的 的替代特征来代替。
此外, 本领域的技术人员能够理解, 尽管在此所述的一些实施例包括其它实施例中所 包括的某些特征而不是其它特征, 但是不同实施例的特征的组合意味着处于本发明的范 围之内并且形成不同的实施例。 例如, 在下面的权利要求书中, 所要求保护的实施例的 任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软 件模块实现, 或者以它们的组合实现。 本领域的技术人员应当理解, 可以在实践中使用 微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的用于恶意程序查杀的扫 描设备或云端管理设备中的一些或者全部部件的一些或者全部功能。 本发明还可以实现 为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序 (例如, 计算机程 序和计算机程序产品) 。 这样的实现本发明的程序可以存储在计算机可读介质上, 或者 可以具有一个或者多个信号的形式。 这样的信号可以从因特网网站上下载得到, 或者在 载体信号上提供, 或者以任何其他形式提供。
例如, 图 4示出了可以实现根据本发明的用于恶意程序查杀的扫描方法或者用于恶意 程序查杀的云端管理方法或者基于云安全的恶意程序扫描方法的智能电子设备。 该智能 电子设备传统上包括处理器 710和以存储器 720形式的计算机程序产品或者计算机可读介 质。 存储器 720可以是诸如闪存、 EEPR0M (电可擦除可编程只读存储器) 、 EPR0M、 硬盘 或者 ROM之类的电子存储器。 存储器 720具有用于执行上述方法中的任何方法步骤的程序 代码 731的存储空间 730。例如, 用于程序代码的存储空间 730可以包括分别用于实现上面 的方法中的各种步骤的各个程序代码 731。这些程序代码可以从一个或者多个计算机程序 产品中读出或者写入到这一个或者多个计算机程序产品中。 这些计算机程序产品包括诸 如硬盘, 紧致盘 (CD) 、 存储卡或者软盘之类的程序代码载体。 这样的计算机程序产品 通常为如参考图 5所述的便携式或者固定存储单元。 该存储单元可以具有与图 4的智能电 子设备中的存储器 720类似布置的存储段或者存储空间等。程序代码可以例如以适当形式 进行压縮。 通常, 存储单元包括用于执行根据本发明的方法步骤的程序 73 , 即可以由 例如诸如 710之类的处理器读取的代码, 这些代码当由智能电子设备运行时, 导致该智能 电子设备执行上面所描述的方法中的各个步骤。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技 术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。 在权利要求中, 不 应将位于括号之间的任何参考符号构造成对权利要求的限制。 单词 "包含"不排除存在 未列在权利要求中的元件或步骤。 位于元件之前的单词 "一"或 "一个"不排除存在多 个这样的元件。 本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计 算机来实现。 在列举了若干装置的单元权利要求中, 这些装置中的若干个可以是通过同 一个硬件项来具体体现。 单词第一、 第二、 以及第三等的使用不表示任何顺序。 可将这 些单词解释为名称。
本文公开了 Al、 一种用于恶意程序查杀的扫描设备, 包括: 第一传输接口, 被配置为 向服务器端设备传输信息, 以及接收所述服务器端设备传输的信息; 环境信息读取器, 被配置为读取所述客户端设备当前的系统环境信息, 并通过所述第一传输接口传输至所 述服务器端设备; 第一扫描器, 被配置为通过所述第一传输接口获得所述服务器端设备 至少基于所述系统环境信息判断的第一扫描内容指示, 并对所述第一扫描内容指示中的 指定位置进行扫描, 以及至少将扫描得到的未知程序文件的特征数据通过所述第一传输 接口传输至所述服务器端设备; 以及第二扫描器, 被配置为通过所述第一传输接口获得 所述服务器端设备传输的第二扫描内容指示, 所述第二扫描内容指示包括对所述未知程 序文件的指定属性和 /或所述未知程序文件的上下文环境的指定属性进行扫描, 以及根据 所述第二扫描内容指示进行扫描。 A2、根据 A1所述的扫描设备,所述第二扫描器还被配置 为将按照所述第二扫描内容指示进行扫描后的扫描结果, 通过所述第一传输接口传输至 所述服务器端设备;所述扫描设备还包括: 第一修复器, 被配置为通过所述第一传输接口 获得所述服务器端设备基于所述第二扫描器提供的扫描结果确定的修复逻辑, 以及根据 所述修复逻辑对所述未知程序文件进行修复处理。 A3、 根据 A1所述的扫描设备, 还包括: 第二修复器, 被配置为通过所述第一传输接口获得来自服务器端设备的、 与所述第二扫 描内容指示一起传输的与所述第二扫描内容指示相关的修复逻辑, 当所述第二扫描器的 扫描结果满足所述修复逻辑时, 对所述未知程序文件进行修复处理。 A4、 根据 A2或 A3所 述的扫描设备, 所述修复处理包括下述处理方式中的一种或多种: 删除指定的注册表键 和 /或键值、 修改注册表键和 /或键值为指定内容、 删除指定系统服务项, 以及修复或删 除指定程序文件。 A5、 根据 A1至 A4中任一项所述的扫描设备, 所述环境系统信息包括下 述信息中的一种或多种: 操作系统的版本信息、 系统补丁安装信息、 软件安装信息、 驱 动安装信息以及系统中正在运行的进程和服务信息。 A6、 根据 A1至 A5中任一项所述的扫 描设备: 所述程序文件的特征数据包括下述信息中的一种或多种: 对所述未知程序文件 的全部或部分关键内容采用特定算法获得的数据、 文件名; 所述未知程序文件的指定属 性包括下述信息中的一种或多种: 特征数据、 文件大小、 安全级别、 签名信息以及版本 信息。 A7、 根据 A1至 A6中任一项所述的扫描设备, 所述未知程序文件的上下文环境的属 性包括下述信息中的一种或多种: 所述未知程序文件所在目录的信息、 注册表中的启动 位置的信息、 与所述程序文件同目录或指定目录下的其他文件的属性信息、 指定进程的 运行状态。
本文公开了 B8、 一种用于恶意程序查杀的云端管理设备, 包括: 第二传输接口, 被配 置为向客户端设备传输信息, 以及接收所述客户端设备传输的信息; 第一指示器, 被配 置为根据新生恶意程序的特性和所述客户端设备传输的系统环境信息生成第一扫描内容 指示, 所述第一扫描内容指示至少包括对指定位置的内容进行扫描并告知扫描到的未知 程序文件的特征数据, 以及通过所述第二传输接口将所述第一扫描内容指示传输至所述 客户端设备; 第一匹配器, 被配置为通过所述第二传输接口获得所述客户端设备传输的 所述未知程序文件的特征数据, 并据此在已知的恶意程序特征数据记录中进行匹配; 以 及第二指示器, 被配置为当所述第一匹配器未能匹配到已知记录时生成第二扫描内容指 示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 /或所述未知程序文件 的上下文环境的指定属性进行扫描, 并通过所述第二传输接口传输至所述客户端设备。 B9、 根据 B8所述的云端管理设备: 所述第二指示器还被配置为通过所述第二传输接口获 得所述客户端设备按照所述第二扫描内容指示扫描后得到的扫描结果, 并据此判断所述 未知程序文件是否为恶意程序, 并将判断结果通过所述第二传输接口传输至所述客户端 设备; 或者, 所述第二指示器还被配置为将与所述第二扫描内容指示相关的判断逻辑一 起通过所述第二传输接口传输至所述客户端设备, 所述判断逻辑是用以判断所述未知程 序文件是否为恶意程序的逻辑。 B10、 根据 B9所述的云端管理设备, 所述第二指示器还被 配置为根据所述客户端设备按照所述第二扫描内容指示扫描后得到的扫描结果, 在已知 的恶意程序查杀数据库中进行匹配, 如果查找到与所述扫描结果匹配的修复逻辑, 则通 过所述第二传输接口传输给客户端设备; 或者, 所述第二指示器还被配置为根据所述第 二扫描内容指示在已知的恶意程序查杀数据库中进行匹配, 将匹配到的与所述第二扫描 内容指示相关的修复逻辑和所述第二扫描内容指示一起通过所述第二传输接口传输至所 述客户端设备。 Bl l、 根据 B8至 B10中任一项所述的云端管理设备, 所述新生恶意程序的 特性包括: 新生恶意程序利用特定位置进行隐藏和 /或攻击的特征信息。 B12、 根据 B8至 B11中任一项所述的云端管理设备, 所述第一扫描内容指示是附条件的指示, 所述条件包 括下述内容中的一种或多种: 指定文件是否存在、 指定目录是否存在、 程序文件的属性 是否满足指定条件、 指定注册表键是否存在、 指定注册表键值是否存在、 注册表键的内 容是否满足指定条件、 注册表键值的内容是否满足指定条件、 指定进程是否存在以及指 定服务是否存在。 B13、 根据 B8至 B12中任一项所述的云端管理设备, 所述修复逻辑包括 下述逻辑中的一种或多种: 删除指定的注册表键和 /或键值、 修改注册表键和 /或键值为 指定内容、 删除指定系统服务项以及修复或删除指定程序文件。 B14、 根据 B8至 B13中任 一项所述的云端管理设备,所述未知程序文件的特征数据包括下述信息中的一种或多种: 对所述未知程序文件的全部或部分关键内容采用特定算法获得的数据、 文件名; 所述未 知程序文件的指定属性包括下述信息中的一种或多种: 特征数据、 文件大小、 签名信息 以及版本信息。 B15、 根据 B8至 B14中任一项所述的云端管理设备, 所述未知程序文件的 上下文环境的属性包括下述信息中的一种或多种: 所述未知程序文件所在目录的信息、 安全级别信息、 注册表中的启动位置的信息、 与所述程序文件同目录或指定目录下的其 他文件的属性信息、 指定进程的运行状态。
本文公开了 C16、 一种基于云安全的恶意程序扫描系统, 包括如 A1至 A7中任一项所述 的用于恶意程序查杀的扫描设备, 以及如 B8至 B15中任一项所述的用于恶意程序查杀的云 端管理设备。
本文公开了 D17、 一种用于恶意程序查杀的扫描方法, 包括: 读取客户端设备当前的 系统环境信息, 并传输至服务器端设备; 获得所述服务器端设备基于所述系统环境信息 判断的第一扫描内容指示, 并对所述第一扫描内容指示中的指定位置进行扫描, 以及至 少将扫描得到的未知程序文件的特征数据传输至所述服务器端设备; 以及获得所述服务 器端设备传输的第二扫描内容指示, 所述第二扫描内容指示包括对所述未知程序文件的 指定属性和 /或所述未知程序文件的上下文环境的指定属性进行扫描, 以及根据所述第二 扫描内容指示进行扫描。 D18、 根据 D17所述的扫描方法,还包括: 将按照所述第二扫描内 容指示进行扫描后的扫描结果传输至服务器端设备; 获得所述服务器端设备基于该扫描 结果确定的所述未知程序文件是否为恶意程序的判断结果, 并根据所述判断结果进行相 应的处理; 或者, 获得所述服务器端设备告知的与所述第二扫描内容指示相关的判断逻 辑, 并根据按照第二扫描内容指示进行扫描后的扫描结果和所述判断逻辑确定所述未知 程序文件是否为恶意程序, 以及进行相应的处理。
本文公开了 E19、 一种用于恶意程序查杀的云端管理方法, 包括: 根据新生恶意程序 的特性和客户端设备传输的系统环境信息生成第一扫描内容指示, 所述第一扫描内容指 示至少包括对指定位置的内容进行扫描并告知扫描到的未知程序文件的特征数据, 以及 将所述第一扫描内容指示传输至所述客户端设备; 获得所述客户端设备传输的所述未知 程序文件的特征数据, 并据此在已知的恶意程序查杀数据库中进行匹配; 以及当根据所 述未知程序文件的特征数据未能匹配到已知记录时, 生成第二扫描内容指示, 所述第二 扫描内容指示包括对所述未知程序文件的指定属性和 /或所述未知程序文件的上下文环 境的指定属性进行扫描, 并将所述第二扫描内容指示传输至所述客户端设备。 E20、 根据 E19所述的云端管理方法, 还包括: 获得所述客户端设备按照所述第二扫描内容指示扫描 后获得的扫描结果, 并据此判断所述未知程序文件是否为恶意程序, 将判断结果和 /或与 所述扫描结果匹配的修复逻辑传输至所述客户端设备; 或者, 将与所述第二扫描内容指 示相关的判断逻辑和 /或修复逻辑, 与所述第二扫描内容指示一起传输至所述客户端设 备。
本文公开了 F21、 一种基于云安全的恶意程序扫描方法, 包括: 客户端设备读取当前 的系统环境信息, 并传输至服务器端设备; 服务器端设备根据新生恶意程序的特性和所 述客户端设备传输的系统环境信息生成第一扫描内容指示, 所述第一扫描内容指示至少 包括对指定位置的内容进行扫描并告知扫描到的未知程序文件的特征数据, 以及将所述 第一扫描内容指示传输至所述客户端设备; 所述客户端设备根据所述第一扫描内容指示 进行扫描, 并至少将扫描得到的未知程序文件的特征数据传输至所述服务器端设备; 所 述服务器端设备根据所述未知程序文件的特征数据在已知的恶意程序查杀数据库中进行 匹配; 当根据所述未知程序文件的特征数据未能匹配到已知记录时, 所述服务器端设备 生成第二扫描内容指示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 / 或所述未知程序文件的上下文环境的指定属性进行扫描, 并将所述第二扫描内容指示传 输至所述客户端设备; 所述客户端设备根据所述第二扫描内容指示进行扫描。

Claims

权 利 要 求
1、 一种用于恶意程序查杀的扫描设备, 包括:
第一传输接口, 被配置为向服务器端设备传输信息, 以及接收所述服务器端设备传 输的信息;
环境信息读取器, 被配置为读取所述客户端设备当前的系统环境信息, 并通过所述 第一传输接口传输至所述服务器端设备;
第一扫描器, 被配置为通过所述第一传输接口获得所述服务器端设备至少基于所述 系统环境信息判断的第一扫描内容指示, 并对所述第一扫描内容指示中的指定位置进行 扫描, 以及至少将扫描得到的未知程序文件的特征数据通过所述第一传输接口传输至所 述服务器端设备; 以及
第二扫描器, 被配置为通过所述第一传输接口获得所述服务器端设备传输的第二扫 描内容指示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 /或所述未知 程序文件的上下文环境的指定属性进行扫描, 以及根据所述第二扫描内容指示进行扫描。
2、 根据权利要求 1 所述的扫描设备,所述第二扫描器还被配置为将按照所述第二扫 描内容指示进行扫描后的扫描结果, 通过所述第一传输接口传输至所述服务器端设备; 所述扫描设备还包括:
第一修复器, 被配置为通过所述第一传输接口获得所述服务器端设备基于所述第二 扫描器提供的扫描结果确定的修复逻辑, 以及根据所述修复逻辑对所述未知程序文件进 行修复处理。
3、 根据权利要求 1所述的扫描设备, 还包括:
第二修复器, 被配置为通过所述第一传输接口获得来自服务器端设备的、 与所述第 二扫描内容指示一起传输的与所述第二扫描内容指示相关的修复逻辑, 当所述第二扫描 器的扫描结果满足所述修复逻辑时, 对所述未知程序文件进行修复处理。
4、 根据权利要求 2或 3所述的扫描设备, 所述修复处理包括下述处理方式中的一种 或多种:
删除指定的注册表键和 /或键值、 修改注册表键和 /或键值为指定内容、 删除指定系 统服务项, 以及修复或删除指定程序文件。
5、 根据权利要求 1至 4中任一项所述的扫描设备, 所述环境系统信息包括下述信息 中的一种或多种:
操作系统的版本信息、 系统补丁安装信息、 软件安装信息、 驱动安装信息以及系统 中正在运行的进程和服务信息。
6、 根据权利要求 1至 5中任一项所述的扫描设备:
所述程序文件的特征数据包括下述信息中的一种或多种: 对所述未知程序文件的全 部或部分关键内容采用特定算法获得的数据、 文件名; 所述未知程序文件的指定属性包括下述信息中的一种或多种: 特征数据、 文件大小、 安全级别、 签名信息以及版本信息。
7、 根据权利要求 1至 6中任一项所述的扫描设备, 所述未知程序文件的上下文环境 的属性包括下述信息中的一种或多种:
所述未知程序文件所在目录的信息、 注册表中的启动位置的信息、 与所述程序文件 同目录或指定目录下的其他文件的属性信息、 指定进程的运行状态。
8、 一种用于恶意程序查杀的云端管理设备, 包括:
第二传输接口, 被配置为向客户端设备传输信息, 以及接收所述客户端设备传输的 信息;
第一指示器, 被配置为根据新生恶意程序的特性和所述客户端设备传输的系统环境 信息生成第一扫描内容指示, 所述第一扫描内容指示至少包括对指定位置的内容进行扫 描并告知扫描到的未知程序文件的特征数据, 以及通过所述第二传输接口将所述第一扫 描内容指示传输至所述客户端设备;
第一匹配器, 被配置为通过所述第二传输接口获得所述客户端设备传输的所述未知 程序文件的特征数据, 并据此在已知的恶意程序特征数据记录中进行匹配; 以及
第二指示器, 被配置为当所述第一匹配器未能匹配到已知记录时生成第二扫描内容 指示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 /或所述未知程序文 件的上下文环境的指定属性进行扫描,并通过所述第二传输接口传输至所述客户端设备。
9、 根据权利要求 8所述的云端管理设备:
所述第二指示器还被配置为通过所述第二传输接口获得所述客户端设备按照所述第 二扫描内容指示扫描后得到的扫描结果,并据此判断所述未知程序文件是否为恶意程序, 并将判断结果通过所述第二传输接口传输至所述客户端设备;
或者,
所述第二指示器还被配置为将与所述第二扫描内容指示相关的判断逻辑一起通过所 述第二传输接口传输至所述客户端设备, 所述判断逻辑是用以判断所述未知程序文件是 否为恶意程序的逻辑。
10、 根据权利要求 9所述的云端管理设备,
所述第二指示器还被配置为根据所述客户端设备按照所述第二扫描内容指示扫描后 得到的扫描结果, 在已知的恶意程序查杀数据库中进行匹配, 如果查找到与所述扫描结 果匹配的修复逻辑, 则通过所述第二传输接口传输给客户端设备;
或者,
所述第二指示器还被配置为根据所述第二扫描内容指示在已知的恶意程序查杀数据 库中进行匹配, 将匹配到的与所述第二扫描内容指示相关的修复逻辑和所述第二扫描内 容指示一起通过所述第二传输接口传输至所述客户端设备。
11、 根据权利要求 8至 10中任一项所述的云端管理设备, 所述新生恶意程序的特性 包括: 新生恶意程序利用特定位置进行隐藏和 /或攻击的特征信息。
12、 根据权利要求 8至 11中任一项所述的云端管理设备, 所述第一扫描内容指示是 附条件的指示, 所述条件包括下述内容中的一种或多种:
指定文件是否存在、 指定目录是否存在、 程序文件的属性是否满足指定条件、 指定 注册表键是否存在、 指定注册表键值是否存在、 注册表键的内容是否满足指定条件、 注 册表键值的内容是否满足指定条件、 指定进程是否存在以及指定服务是否存在。
13、 根据权利要求 8至 12中任一项所述的云端管理设备, 所述修复逻辑包括下述逻 辑中的一种或多种:
删除指定的注册表键和 /或键值、 修改注册表键和 /或键值为指定内容、 删除指定系 统服务项以及修复或删除指定程序文件。
14、 根据权利要求 8至 13中任一项所述的云端管理设备,
所述未知程序文件的特征数据包括下述信息中的一种或多种: 对所述未知程序文件 的全部或部分关键内容采用特定算法获得的数据、 文件名;
所述未知程序文件的指定属性包括下述信息中的一种或多种: 特征数据、 文件大小、 签名信息以及版本信息。
15、 根据权利要求 8至 14中任一项所述的云端管理设备, 所述未知程序文件的上下 文环境的属性包括下述信息中的一种或多种:
所述未知程序文件所在目录的信息、 安全级别信息、 注册表中的启动位置的信息、 与所述程序文件同目录或指定目录下的其他文件的属性信息、 指定进程的运行状态。
16、 一种基于云安全的恶意程序扫描系统, 包括如权利要求 1至 7中任一项所述的 用于恶意程序查杀的扫描设备, 以及如权利要求 8至 15中任一项所述的用于恶意程序查 杀的云端管理设备。
17、 一种用于恶意程序查杀的扫描方法, 包括:
读取客户端设备当前的系统环境信息, 并传输至服务器端设备;
获得所述服务器端设备基于所述系统环境信息判断的第一扫描内容指示, 并对所述 第一扫描内容指示中的指定位置进行扫描, 以及至少将扫描得到的未知程序文件的特征 数据传输至所述服务器端设备; 以及
获得所述服务器端设备传输的第二扫描内容指示, 所述第二扫描内容指示包括对所 述未知程序文件的指定属性和 /或所述未知程序文件的上下文环境的指定属性进行扫描, 以及根据所述第二扫描内容指示进行扫描。
18、 根据权利要求 17所述的扫描方法,还包括:
将按照所述第二扫描内容指示进行扫描后的扫描结果传输至服务器端设备; 获得所 述服务器端设备基于该扫描结果确定的所述未知程序文件是否为恶意程序的判断结果, 并根据所述判断结果进行相应的处理;
或者, 获得所述服务器端设备告知的与所述第二扫描内容指示相关的判断逻辑, 并根据按 照第二扫描内容指示进行扫描后的扫描结果和所述判断逻辑确定所述未知程序文件是否 为恶意程序, 以及进行相应的处理。
19、 一种用于恶意程序查杀的云端管理方法, 包括:
根据新生恶意程序的特性和客户端设备传输的系统环境信息生成第一扫描内容指 示, 所述第一扫描内容指示至少包括对指定位置的内容进行扫描并告知扫描到的未知程 序文件的特征数据, 以及将所述第一扫描内容指示传输至所述客户端设备;
获得所述客户端设备传输的所述未知程序文件的特征数据, 并据此在已知的恶意程 序查杀数据库中进行匹配; 以及
当根据所述未知程序文件的特征数据未能匹配到已知记录时, 生成第二扫描内容指 示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 /或所述未知程序文件 的上下文环境的指定属性进行扫描,并将所述第二扫描内容指示传输至所述客户端设备。
20、 一种基于云安全的恶意程序扫描方法, 包括:
客户端设备读取当前的系统环境信息, 并传输至服务器端设备;
服务器端设备根据新生恶意程序的特性和所述客户端设备传输的系统环境信息生成 第一扫描内容指示, 所述第一扫描内容指示至少包括对指定位置的内容进行扫描并告知 扫描到的未知程序文件的特征数据, 以及将所述第一扫描内容指示传输至所述客户端设 备;
所述客户端设备根据所述第一扫描内容指示进行扫描, 并至少将扫描得到的未知程 序文件的特征数据传输至所述服务器端设备;
所述服务器端设备根据所述未知程序文件的特征数据在已知的恶意程序查杀数据库 中进行匹配;
当根据所述未知程序文件的特征数据未能匹配到已知记录时, 所述服务器端设备生 成第二扫描内容指示,所述第二扫描内容指示包括对所述未知程序文件的指定属性和 /或 所述未知程序文件的上下文环境的指定属性进行扫描, 并将所述第二扫描内容指示传输 至所述客户端设备;
所述客户端设备根据所述第二扫描内容指示进行扫描。
21、 一种计算机程序, 包括计算机可读代码, 当智能电子设备运行所述计算机可 读代码运行时, 导致权利要求 17-20中的任一项权利要求所述的方法被执行。
22、 一种计算机可读介质, 其中存储了如权利要求 21所述的计算机程序。
PCT/CN2013/088196 2012-11-30 2013-11-29 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统 WO2014082599A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/648,298 US9830452B2 (en) 2012-11-30 2013-11-29 Scanning device, cloud management device, method and system for checking and killing malicious programs
US15/823,534 US20180082061A1 (en) 2012-11-30 2017-11-27 Scanning device, cloud management device, method and system for checking and killing malicious programs

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201210506137.5A CN102982284B (zh) 2012-11-30 2012-11-30 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
CN201210506185.4 2012-11-30
CN201210506137.5 2012-11-30
CN201210506185.4A CN103034808B (zh) 2012-11-30 2012-11-30 扫描方法、设备和系统以及云端管理方法和设备

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/648,298 A-371-Of-International US9830452B2 (en) 2012-11-30 2013-11-29 Scanning device, cloud management device, method and system for checking and killing malicious programs
US15/823,534 Continuation US20180082061A1 (en) 2012-11-30 2017-11-27 Scanning device, cloud management device, method and system for checking and killing malicious programs

Publications (1)

Publication Number Publication Date
WO2014082599A1 true WO2014082599A1 (zh) 2014-06-05

Family

ID=50827199

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/088196 WO2014082599A1 (zh) 2012-11-30 2013-11-29 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统

Country Status (2)

Country Link
US (2) US9830452B2 (zh)
WO (1) WO2014082599A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160112444A1 (en) * 2014-10-17 2016-04-21 F-Secure Corporation Malware Detection Method

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015191746A1 (en) * 2014-06-13 2015-12-17 The Charles Stark Draper Laboratory, Inc. Systems and methods for a database of software artifacts
CN106295328B (zh) * 2015-05-20 2019-06-18 阿里巴巴集团控股有限公司 文件检测方法、装置及系统
US10346611B1 (en) * 2015-11-25 2019-07-09 Symantec Corporation Detecting malicious software
US10489241B2 (en) * 2015-12-30 2019-11-26 Arteris, Inc. Control and address redundancy in storage buffer
WO2018058517A1 (zh) * 2016-09-30 2018-04-05 北京小米移动软件有限公司 安全扫描方法、装置及电子设备
RU2747464C2 (ru) * 2019-07-17 2021-05-05 Акционерное общество "Лаборатория Касперского" Способ обнаружения вредоносных файлов на основании фрагментов файлов
CN112632551B (zh) * 2021-03-11 2021-09-28 北京邮电大学 一种第三方库信息泄露检测方法及装置
CN113158190B (zh) * 2021-04-30 2022-03-29 河北师范大学 一种基于生成式对抗网络的恶意代码对抗样本自动生成方法
US20230205914A1 (en) * 2021-12-27 2023-06-29 Mordecai Barkan Hands free access management and credential protection
KR102431122B1 (ko) * 2021-12-30 2022-08-10 주식회사 버넥트 맵 타겟 추적 방법 및 그 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1766779A (zh) * 2004-10-29 2006-05-03 微软公司 对文档进行标记的反病毒清单
CN101924761A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种依据白名单进行恶意程序检测的方法
US8302192B1 (en) * 2008-04-30 2012-10-30 Netapp, Inc. Integrating anti-virus in a clustered storage system
CN102982284A (zh) * 2012-11-30 2013-03-20 北京奇虎科技有限公司 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
CN103034808A (zh) * 2012-11-30 2013-04-10 北京奇虎科技有限公司 扫描方法、设备和系统以及云端管理方法和设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8220050B2 (en) * 2008-03-31 2012-07-10 Sophos Plc Method and system for detecting restricted content associated with retrieved content
US8627461B2 (en) * 2009-03-04 2014-01-07 Mcafee, Inc. System, method, and computer program product for verifying an identification of program information as unwanted
GB2471716A (en) * 2009-07-10 2011-01-12 F Secure Oyj Anti-virus scan management using intermediate results
US9147071B2 (en) * 2010-07-20 2015-09-29 Mcafee, Inc. System and method for proactive detection of malware device drivers via kernel forensic behavioral monitoring and a back-end reputation system
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US8627463B1 (en) * 2010-09-13 2014-01-07 Symantec Corporation Systems and methods for using reputation information to evaluate the trustworthiness of files obtained via torrent transactions
RU2485577C1 (ru) * 2012-05-11 2013-06-20 Закрытое акционерное общество "Лаборатория Касперского" Способ увеличения надежности определения вредоносного программного обеспечения
US8505102B1 (en) * 2013-01-14 2013-08-06 Google Inc. Detecting undesirable content

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1766779A (zh) * 2004-10-29 2006-05-03 微软公司 对文档进行标记的反病毒清单
US8302192B1 (en) * 2008-04-30 2012-10-30 Netapp, Inc. Integrating anti-virus in a clustered storage system
CN101924761A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种依据白名单进行恶意程序检测的方法
CN102982284A (zh) * 2012-11-30 2013-03-20 北京奇虎科技有限公司 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
CN103034808A (zh) * 2012-11-30 2013-04-10 北京奇虎科技有限公司 扫描方法、设备和系统以及云端管理方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160112444A1 (en) * 2014-10-17 2016-04-21 F-Secure Corporation Malware Detection Method
US10127382B2 (en) * 2014-10-17 2018-11-13 F-Secure Corporation Malware detection method

Also Published As

Publication number Publication date
US9830452B2 (en) 2017-11-28
US20180082061A1 (en) 2018-03-22
US20150317479A1 (en) 2015-11-05

Similar Documents

Publication Publication Date Title
WO2014082599A1 (zh) 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
CN102982284B (zh) 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
US9953162B2 (en) Rapid malware inspection of mobile applications
US8819835B2 (en) Silent-mode signature testing in anti-malware processing
CN103034808B (zh) 扫描方法、设备和系统以及云端管理方法和设备
KR101693370B1 (ko) 퍼지 화이트리스팅 안티-멀웨어 시스템 및 방법
US10997307B1 (en) System and method for clustering files and assigning a property based on clustering
US8931086B2 (en) Method and apparatus for reducing false positive detection of malware
JP5631988B2 (ja) ウイルス対策スキャン
KR101607951B1 (ko) 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝
US8844039B2 (en) Malware image recognition
CN103390130B (zh) 基于云安全的恶意程序查杀的方法、装置和服务器
US20110277033A1 (en) Identifying Malicious Threads
JP2014513834A (ja) マルウェア検出のための電子メッセージ分析
US8627404B2 (en) Detecting addition of a file to a computer system and initiating remote analysis of the file for malware
JP2013543624A (ja) コンピュータシステムの分析方法および装置
KR101588542B1 (ko) 멀웨어 위험 스캐너
CN105791250B (zh) 应用程序检测方法及装置
US10169582B2 (en) System, method, and computer program product for identifying a file used to automatically launch content as unwanted
US20130019313A1 (en) Granular virus detection
US20230022044A1 (en) ANALYSIS DEVICE, AND METHOD FOR DETECTING MALWARE IN AN iOS DEVICE
US8918873B1 (en) Systems and methods for exonerating untrusted software components
US20130254893A1 (en) Apparatus and method for removing malicious code
US9069960B1 (en) System, method, and computer program product for avoiding an on-access scan of data accessible by a collaborative portal application after an on-demand scan
GB2609049A (en) Analysis device, and method for detecting malware in an (iOS) device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13859026

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14648298

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13859026

Country of ref document: EP

Kind code of ref document: A1