WO2015005736A1 - 클라이언트시스템 및 클라이언트시스템의 동작 방법 - Google Patents

클라이언트시스템 및 클라이언트시스템의 동작 방법 Download PDF

Info

Publication number
WO2015005736A1
WO2015005736A1 PCT/KR2014/006279 KR2014006279W WO2015005736A1 WO 2015005736 A1 WO2015005736 A1 WO 2015005736A1 KR 2014006279 W KR2014006279 W KR 2014006279W WO 2015005736 A1 WO2015005736 A1 WO 2015005736A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
malicious
termination
client system
diagnosis
Prior art date
Application number
PCT/KR2014/006279
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
Application filed by 주식회사 안랩 filed Critical 주식회사 안랩
Publication of WO2015005736A1 publication Critical patent/WO2015005736A1/ko

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading

Definitions

  • Embodiments of the present invention relate to techniques that enable fast and efficient protection of a system from malicious programs that attack and terminate malicious diagnostic programs (eg, anti-virus products).
  • malicious diagnostic programs eg, anti-virus products
  • the method of applying such a defensive technique to a malicious diagnostic program is a short time since the malicious code attacks the malicious diagnostic program with a new attack technique that neutralizes the defensive technique.
  • Embodiments of the present invention are technologies for quickly and efficiently protecting a system from malicious programs that attack and terminate malicious diagnostic programs (e.g., anti-virus products), and quickly diagnose malicious programs themselves that attack malicious diagnostic programs.
  • This paper proposes a client system and a method of operating the client system that can block the execution of malicious programs.
  • a method of operating a client system for achieving the above object includes a determination step of determining whether or not the malicious diagnostic program is abnormally terminated; An information generation step of generating termination related information related to abnormal termination of the malicious diagnosis program when it is determined that the malicious diagnosis program ends abnormally; And providing the termination related information to a server so that the server recognizes the malicious program that terminated the malicious diagnostic program based on the termination related information and adds the recognized malicious program as a diagnosis target.
  • abnormal termination determination unit for determining whether or not abnormally terminated diagnostic program
  • An information generator configured to generate termination related information related to abnormal termination of the malicious diagnosis program when it is determined that the malicious diagnosis program ends abnormally; And providing the termination related information to a server so that the server recognizes the malicious program that terminated the malicious diagnosis program based on the termination related information and adds the recognized malicious program as a diagnosis target.
  • Embodiments of the present invention have the effect of blocking the execution of the AV-Killing malicious program source by a large number of other clients quickly diagnose the new AV-Killing malicious program itself at the expense of one client system.
  • FIG. 1 is an exemplary view showing an entire system including a client system according to a preferred embodiment of the present invention.
  • FIG. 2 is a block diagram showing the configuration of a client system according to a preferred embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a control flow of an entire system including a client system according to an exemplary embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating a method of operating a client system according to an exemplary embodiment of the present invention.
  • FIG. 1 shows an entire system including a client system according to a preferred embodiment of the present invention.
  • the entire system includes a plurality of clients 300 including the client system 100 and malicious codes (hereinafter, referred to as malicious programs) in the plurality of clients 300 including the client system 100.
  • Server 200 for diagnosing the same.
  • the plurality of clients 300 including the client system 100 may be a system that operates based on an installed operating system, such as a computer, a smart phone, a mobile communication terminal, and the like.
  • a plurality of clients 300 including the client system 100 include a malicious diagnostic program (eg, an antivirus product) that diagnoses a malicious program in the system. It is installed.
  • a malicious diagnostic program eg, an antivirus product
  • Malicious diagnostic programs e.g., anti-virus products
  • Malicious diagnostic programs that are installed on a plurality of clients 300, including the client system 100, are provided and installed from the server 200, and are periodically updated through interworking with the server 200 thereafter. It is a program.
  • Malicious diagnostic programs e.g., anti-virus products
  • Malicious programs installed in a plurality of clients 300, including the client system 100, based on the information about malicious programs registered as a diagnostic target, Malicious programs are diagnosed in the running system.
  • the malicious diagnostic program may be one of a client-based diagnostic method for diagnosing malicious programs in the system itself, or a cloud-based diagnostic method for diagnosing malicious programs in association with the server 200 at every diagnosis. Can be diagnosed.
  • the plurality of clients 300 including the client system 100 executes a malicious diagnosis program along with the system running, and according to any one of a client-based diagnosis method or a cloud-based diagnosis method through the malicious diagnosis program.
  • the malware can be diagnosed continuously or periodically in the system.
  • a plurality of clients 300 including the client system 100, according to the diagnosis result of diagnosing a malicious program, subsequent procedures (e.g., reporting a diagnosis result, deleting the diagnosed malicious program, infection by the diagnosed malicious program) Treatment, etc.).
  • AV-Killing malware a malicious program that infects the system after attacking and terminating such malicious diagnostic programs.
  • AV-Killing malware a malicious program that infects the system after attacking and terminating such malicious diagnostic programs.
  • the malicious diagnostic program is terminated by the AV-killing malicious program in the system, the diagnostic function of the malicious diagnostic program is disabled and it is no longer possible to protect the system.
  • the present invention by enabling to quickly diagnose and cope with AV-Killing malicious program itself to attack the malicious diagnostic program, it is proposed a method that can block the execution of AV-Killing malicious program at the source.
  • a plurality of clients 300 including the client system 100, AV-Killing malicious program that can not be diagnosed by the malicious diagnostic program, that is, the currently installed version of the malicious diagnostic program to be diagnosed Assume that a new AV-Killing malicious program is installed that is not recognized.
  • the client system 100 will be described on the assumption that the above-described AV-Killing malicious program is the first client among the plurality of clients 300 including the client system 100.
  • the malicious diagnostic program is executed together with the system driving so that the malicious diagnostic program can continuously or periodically diagnose the malicious program in the system.
  • the AV-Killing malicious program may be executed at a specific time point planned to attack and terminate the malicious diagnostic program running in the client system 100.
  • the client system 100 first determines whether the malicious diagnostic program is abnormally terminated, and when it is determined that the malicious diagnostic program is abnormally terminated, termination related information related to abnormal termination of the malicious diagnostic program. Create
  • the client system 100 reports that the malicious diagnosis program is terminated by being attacked by the AV-Killing malicious program and generates termination related information related to abnormal termination of the malicious diagnosis program. will be.
  • the client system 100 although the malicious diagnostic program is terminated by the AV-Killing malicious program in the system, the information about the AV-Killing malicious program that terminated the malicious diagnostic program (exit related information) It is left in the form of a dying message.
  • the client system 100 provides the generated termination related information to the server 200 so that the server 200 recognizes a malicious program that terminates the malicious diagnosis program, that is, AV-Killing malicious program, based on the termination related information. Then, the recognized AV-Killing malicious program is added as a diagnosis target.
  • the plurality of other clients 300 interoperating with the server 200 may diagnose the AV-killing malicious program before the newly-added AV-killing malicious program is executed.
  • the server 200 may recognize a new AV-killing malicious program based on the termination related information generated / provided from the client system 100 first attacked by the AV-killing malicious program.
  • the server 200 updates the malicious diagnosis program installed in the plurality of clients 300 including the client system 100 by adding the aforementioned AV-Killing malicious program as a diagnosis target. can do.
  • the client system 100 has been attacked by the AV-Killing malware
  • a number of other clients 300 that have not yet run the AV-Killing malware have been newly diagnosed by the updated malicious diagnosis program. Since the added AV-Killing malware can be recognized / diagnosed, it is possible to perform subsequent procedures (eg, report the diagnosis result, delete the diagnosed malware, treat the infection by the diagnosed malware), etc. according to the diagnosis result. Will be.
  • the server 200 when the server 200 recognizes a new AV-Killing malicious program based on the termination related information generated / provided from the client system 100, the server 200 may be configured with the plurality of clients 300 except for the client system 100.
  • AV-Killing malware is recognized / diagnosed by a plurality of clients 300 to perform subsequent procedures (e.g., reporting a diagnosis result, deleting a diagnosed malware program, and diagnosing a diagnosis program). Treatment of infections caused by malicious programs, etc.).
  • the abnormal termination determination unit 130 to determine whether the malicious diagnostic program 110 is abnormally terminated, and the malicious diagnostic program 110 is abnormally terminated
  • the information generating unit 140 generates termination related information related to abnormal termination of the malicious diagnosis program 110, and the generated termination related information is provided to the server 200, so that the server based on the termination related information. Recognizing the malicious program that terminated the malicious diagnostic program 110, and added as a diagnostic target information information to allow a number of other clients 300 to work with the server 200 to diagnose before the malicious program is executed Study 150.
  • a plurality of programs 120 may be installed in the client system 100.
  • the malicious diagnosis program 110 is executed together with the system operation, so that the malicious diagnosis program 110 can diagnose the malicious program in the system continuously or periodically. Make sure
  • the client system 100 the AV-Killing malicious program that can not be diagnosed by the malicious diagnostic program 110, that is, the new AV-Killing malicious that the currently installed version of the malicious diagnostic program 110 is not recognized as a diagnosis target Assume that the program is installed.
  • the abnormal termination determination unit 130 determines whether the malicious diagnosis program 110 is abnormally terminated.
  • the abnormal termination determination unit 130 checks whether the malicious diagnosis program 110 is terminated, and determines whether the termination is abnormal when the malicious diagnosis program 110 is terminated.
  • an embodiment of determining whether the termination of the malicious diagnosis program 110 is abnormal is as follows.
  • the abnormal termination determination unit 130 may determine that the malicious diagnosis program 110 is abnormally terminated when the action related to the termination of the malicious diagnosis program 110 is not an action according to a preset normal termination procedure. have.
  • the malicious diagnostic program 110 may be normally terminated by user manipulation of the client system 100, in addition to the termination caused by the attack of the AV-killing malicious program, or temporarily updated for the malicious diagnostic program 110. It may end normally.
  • a white list of instructions for normally terminating the malicious diagnosis program 110 or programs for terminating the malicious diagnosis program 110 may be preset.
  • the abnormal termination determination unit 130 if it is determined that the action associated with the termination of the malicious diagnostic program 110 is an action by a command or program belonging to the preset white list, the termination of the malicious diagnostic program 110 is already It will be judged to follow the established normal termination procedure.
  • the abnormal termination determination unit 130 if it is determined that the action associated with the termination of the malicious diagnostic program 110 is not an action by a command or a program belonging to the preset whitelist, the termination of the malicious diagnostic program 110 is By determining that it does not follow the preset normal termination procedure, it may be determined that the malicious diagnosis program 110 is abnormally terminated.
  • the information generating unit 140 determines that the malicious diagnosis program 110 is abnormally terminated by the abnormal termination determining unit 130, the information generating unit 140 generates termination related information related to abnormal termination of the malicious diagnosis program 110.
  • the information generating unit 140 reports that the malicious diagnostic program 110 is terminated by being attacked by the AV-Killing malicious program when the malicious diagnostic program 110 ends abnormally, and the malicious diagnostic program 110 ends. To generate shutdown-related information related to abnormal termination of.
  • the information generating unit 140 based on the log information recorded the actions by each program 1, 2 .. .N executed in the client system 100, malicious diagnosis program By searching for the program attacking 110, information about the searched program may be generated as termination related information.
  • the client system 100 may record, as log information, an action by each program 1, 2... N executed in the client system 100.
  • the malicious diagnostic program 110 is a behavior-based diagnostic program that monitors the behavior of each program 1,2, .N running on the client system 100 to diagnose the malicious program of the registered diagnosis target.
  • the malicious diagnostic program 110 would record the behavior of each program 1,2, .N continuously monitored until the attack and termination by the AV-Killing malicious program as log information.
  • the information generating unit 140 may perform the malicious diagnosis program 110 based on the log information recorded as described above. You can search for an attacked program.
  • the program 1 is an AV-Killing malicious program among a plurality of programs 1,2, .N installed in the client system 100 as shown in FIG.
  • the information generating unit 140 confirms a program which has substantially terminated the malicious diagnosis program 110 based on the log information recorded as described above, and deletes the identified program (eg, Program 1).
  • the diagnosis program 110 may be searched as being an attack program.
  • the information generation unit 140 may generate information on the searched program (eg, program 1) as the end related information as described above.
  • the information generating unit 140 may use information (eg, program name information, size information, hash value (eg, MD5), etc.) for recognizing the retrieved program (eg, program 1) as termination related information. Can be generated.
  • information eg, program name information, size information, hash value (eg, MD5), etc.
  • the information generating unit 140 may detect at least one unauthenticated program among programs running when the malicious diagnosis program 110 ends abnormally. After confirming, information about the at least one checked program may be generated as termination related information.
  • the malicious diagnostic program 110 is selected from the programs 1, 2... Check the programs (eg programs 1, 2, N-2, N) that are running at the time of abnormal termination and at least one unauthenticated program among the checked programs (eg programs 1, 2, N-2, N). You can check the program (ex: program 1,2).
  • the at least one uncertified program does not belong to the diagnosis range at the time of the most recent diagnosis by the malicious diagnosis program 110, and has not been diagnosed or does not belong to the list of registered authentication programs or authenticated by a separate authentication procedure. It may not be a program.
  • At least one unauthenticated program will mean a suspicious program that is not certified as a normal program in any way.
  • the information generator 140 may generate information regarding at least one program (eg, programs 1 and 2) identified as the termination related information.
  • the information generator 140 may generate termination related information including at least one program (eg, programs 1 and 2).
  • the information generating unit 140 although the malicious diagnostic program 110 is attacked and terminated by the AV-Killing malicious program in the client system 100, AV-Killing that terminated the malicious diagnostic program 110 It is to leave information about malicious program (exit related information) in the form of a dying message.
  • the information generation unit 140 may be configured by a thread (eg, a recorder thread) driven in a kernel memory of the client system 100.
  • a thread eg, a recorder thread driven in a kernel memory of the client system 100.
  • the information providing unit 150 provides the termination related information generated by the information generating unit 140 to the server 200 so that the server 200 terminates the malicious diagnosis program 110 based on the termination related information.
  • the AV-Killing malicious program is executed in a plurality of other clients 300 that interoperate with the server 200 by recognizing a program, that is, AV-Killing malicious program and adding the recognized AV-Killing malicious program as a diagnosis target Make a diagnosis.
  • the server 200 may recognize a new AV-killing malicious program based on the termination related information generated / provided from the client system 100 first attacked by the AV-killing malicious program.
  • the server 200 is a malicious program, that is, a new AV-Killing malicious program, according to the termination related information generated / provided from the client system 100. It can be recognized and added to the diagnosis.
  • the termination related information generated / provided from the client system 100 includes information (eg, program name information, size information, hash value) for recognizing a program (eg, program 1). (Eg MD5), etc.).
  • the server 200 may recognize that the program 1 is a malicious program, that is, a new AV-Killing malicious program, based on the termination related information, and may add the AV-Killing malicious program, ie, program 1, as a diagnosis target.
  • the server 200 sequentially executes at least one program (eg, programs 1 and 2) according to the termination related information generated / provided from the client system 100 to at least execute the at least one program.
  • One program eg program 1, 2) that terminates the malicious diagnostic program running on the server 200 (eg program 1) is recognized as a malicious program, that is, a new AV-Killing malicious program added to the diagnosis target can do.
  • At least one program (eg, programs 1 and 2) will be included in the termination related information generated / provided from the client system 100.
  • the server 200 executes the same malicious diagnostic program as the malicious diagnostic program 110 installed in the client system 100 and sequentially executes at least one program (eg, programs 1 and 2) included in the termination related information. Run the program to see if the malicious diagnostic program ends when any program is executed.
  • at least one program eg, programs 1 and 2 included in the termination related information.
  • the server 200 is the server 200 of at least one program (eg, program 1, 2) included in the termination-related information
  • the program 1 that terminates the malicious diagnosis program running in the) can be recognized as a malicious program, that is, a new AV-Killing malicious program, and the AV-Killing malicious program, or program 1, will be added as a diagnosis target.
  • the server 200 adds the above-mentioned AV-Killing malicious program, that is, program 1, as a diagnosis target, and installs the malicious diagnosis on the plurality of clients 300 including the client system 100. You can update the program.
  • the client system 100 has been attacked by the AV-Killing malware
  • many other clients 300 that have not yet executed the AV-Killing malware have been updated.
  • the diagnosis program can recognize / diagnose newly added AV-Killing malware as a diagnosis target, subsequent procedures (e.g., reporting the diagnosis result, deleting the diagnosed malicious program, Infection treatment, etc.).
  • the server 200 when the server 200 recognizes a new AV-Killing malicious program based on the termination related information generated / provided from the client system 100, the server 200 may be configured with the plurality of clients 300 except for the client system 100.
  • AV-Killing malware is recognized / diagnosed by a plurality of clients 300 to perform subsequent procedures (e.g., reporting a diagnosis result, deleting a diagnosed malware program, and diagnosing a diagnosis program). Treatment of infections caused by malicious programs, etc.).
  • the client system 100 has been attacked by the AV-Killing malware
  • a number of other clients 300 that have not yet run the AV-Killing malware have been newly diagnosed by the updated malicious diagnosis program. Since the added AV-Killing malware can be recognized / diagnosed, it is possible to perform subsequent procedures (eg, report the diagnosis result, delete the diagnosed malware, treat the infection by the diagnosed malware), etc. according to the diagnosis result. Will be.
  • the client system although the malicious diagnostic program in the system is attacked by the AV-killing malicious program and terminated, information about the AV-killing malicious program which terminated the malicious diagnostic program (exit related) Information) in the form of a Dying message, allowing a number of other clients to recognize the AV-Killing malware through the server as a diagnostic target, allowing many other clients to create new AVs at the expense of one client system.
  • -Killing Malicious program itself is diagnosed quickly to derive the effect of blocking the execution of AV-Killing malicious program.
  • the abnormal termination determination unit 130, the information generating unit 140 and the information providing unit 150 configuration of the present invention described above is configured in the form of one program (application), including the client system 100 It may also be possible to be installed on a number of other clients 300.
  • FIGS. 3 and 4 For convenience of explanation, it will be described using the reference numerals of FIGS. 1 and 2 described above.
  • the client system 100 executes the malicious diagnostic program 110 together with the system driving, so that the malicious diagnostic program 110 continuously or periodically diagnoses the malicious program in the system while the system is running. Will be (S10).
  • the AV-Killing malicious program may be executed at a predetermined time point to attack and terminate the malicious diagnosis program 110 running in the client system 100.
  • the client system 100 determines whether or not abnormally terminated when the malicious diagnostic program 110 ends (S20), and if the malicious diagnostic program 110 is abnormally terminated, the malicious diagnosis End-related information associated with abnormal termination of the program 110 is generated (S30).
  • the client system 100 reports that the malicious diagnosis program 110 is terminated by being attacked by the AV-Killing malicious program, and the abnormal diagnosis of the malicious diagnosis program 110 is performed. It is to create termination related information related to termination.
  • the client system 100 although the malicious diagnostic program 110 is attacked and terminated by the AV-Killing malicious program in the system, the information about the AV-Killing malicious program that terminated the malicious diagnostic program 110 Fields (termination information) in the form of dying messages.
  • the client system 100 provides the generated termination related information to the server 200 (S40), so that the server 200 terminates the malicious diagnosis program 110 based on the termination related information, that is, AV. -Recognizes Killing malware and adds the recognized AV-Killing malware as a diagnosis target so that it can be diagnosed before the AV-Killing malware is executed in a number of other clients 300 linked with the server 200. do.
  • the server 200 may recognize a new AV-killing malicious program based on the termination related information generated / provided from the client system 100 first attacked by the AV-killing malicious program.
  • the server 200 adds the aforementioned AV-Killing malicious program as a diagnosis target (S50), and cooperates with a plurality of clients 300 including the client system 100.
  • Installed malicious diagnostic program 110 can be updated (S60).
  • the malicious diagnosis program updated by the server 200 in a number of other clients 300 where the AV-Killing malware has not yet been executed. Since the 110 can recognize / diagnose the added AV-Killing malicious program as a diagnosis target (S70, S72, S74), subsequent procedures (eg, report the diagnosis result, delete the diagnosed malicious program, Treatment of infection by the diagnosed malicious program) can be performed.
  • the server 200 when the server 200 recognizes a new AV-Killing malicious program based on the termination related information generated / provided from the client system 100, the server 200 may be configured with the plurality of clients 300 except for the client system 100.
  • AV-Killing malware is recognized / diagnosed by a plurality of clients 300 to perform subsequent procedures (e.g., reporting a diagnosis result, deleting a diagnosed malware program, and diagnosing a diagnosis program). Treatment of infections caused by malicious programs, etc.).
  • the malicious diagnosis program 110 is executed together with the system operation, so that the malicious diagnosis program 110 can diagnose the malicious program in the system continuously or periodically. (S100).
  • the client system 100 the AV-Killing malicious program that can not be diagnosed by the malicious diagnostic program 110, that is, the new AV-Killing malicious that the currently installed version of the malicious diagnostic program 110 is not recognized as a diagnosis target Assume that the program is installed.
  • the operation method of the client system 100 of the present invention checks whether or not the malicious diagnostic program 110 is terminated, and if the malicious diagnostic program 110 is terminated, whether such termination is abnormal termination. To judge.
  • an embodiment of determining whether the termination of the malicious diagnosis program 110 is abnormal is as follows.
  • the malicious diagnosis program 110 when the action related to the termination of the malicious diagnosis program 110 is not an action according to a predetermined normal termination procedure, the malicious diagnosis program 110 is abnormally terminated. It can be judged that.
  • the current malicious diagnosis program ( It will be determined that the termination of 110) follows the preset normal termination procedure.
  • the operation method of the client system 100 of the present invention if it is determined that the action associated with the termination of the malicious diagnostic program 110 is not an action by a command or program belonging to a preset white list, this time the malicious diagnostic program 110 ) May be determined to be abnormally terminated by determining that the termination does not follow the preset normal termination procedure.
  • step S110 of the present invention when it is determined that the malicious diagnostic program 110 is abnormally terminated in step S110, it generates termination related information related to abnormal termination of the malicious diagnostic program 110 (S120). ).
  • the operation method of the client system 100 of the present invention reports that the malicious diagnostic program 110 is abnormally terminated when the malicious diagnostic program 110 is attacked by the AV-killing malicious program and terminated. To generate termination-related information associated with abnormal termination of the diagnostic program (110).
  • the operation method of the client system 100 of the present invention if the malicious diagnostic program 110 is abnormally terminated in step S110, based on the log information recorded as described above As such, a program that attacks the malicious diagnosis program 110 may be searched.
  • the program 1 is an AV-Killing malicious program among a plurality of programs 1,2, .N installed in the client system 100 as shown in FIG.
  • the program that substantially terminates the malicious diagnosis program 110 is confirmed based on the log information recorded as described above, and the identified program (eg, The program 1) may be searched as being a program attacking the malicious diagnosis program 110.
  • information about a program (eg, program 1) searched as described above may be generated as termination related information.
  • information eg, program name information, size information, hash value (eg MD5), etc.
  • a retrieved program eg, program 1
  • the malicious diagnostic program 110 may identify at least one unauthenticated program from among programs being executed at an abnormally terminated time point, and generate information about the at least one checked program as termination related information.
  • the operating method of the client system 100 of the present invention may be a program that is executed at a time when the malicious diagnosis program 110 is abnormally terminated among programs 1, 2... , N-2, N) and at least one non-certified program (eg, programs 1 and 2) among the checked programs (eg programs 1, 2, N-2, N) can be identified.
  • non-certified program eg, programs 1 and 2 among the checked programs
  • information about at least one program may be generated as termination related information.
  • the operation method of the client system 100 of the present invention may generate termination related information including at least one program (for example, programs 1 and 2).
  • the operation method of the client system 100 of the present invention although the malicious diagnostic program 110 is attacked and terminated by the AV-Killing malicious program in the client system 100, the malicious diagnostic program 110
  • the information about the AV-Killing malicious program that has been terminated (termination information) is left in the form of a Dying message.
  • Operation method of the client system 100 of the present invention by providing the termination-related information generated in step S120 to the server 200 (S130), the server 200 malicious diagnosis program 110 based on the termination-related information.
  • the AV-Killing malicious program that recognizes the malicious program that terminates the AV-Killing malicious program, adds the recognized AV-Killing malicious program as a diagnosis target, and the AV-Killing malicious program is executed in a plurality of other clients 300 that interact with the server 200. Diagnostics can be made before execution (S140).
  • the server 200 may recognize a new AV-killing malicious program based on the termination related information generated / provided from the client system 100 first attacked by the AV-killing malicious program.
  • the server 200 is a malicious program, that is, a new AV-Killing malicious program, according to the termination related information generated / provided from the client system 100. It can be recognized and added to the diagnosis.
  • the termination related information generated / provided from the client system 100 includes information (eg, program name information, size information, hash value) for recognizing a program (eg, program 1). (Eg MD5), etc.).
  • the server 200 may recognize that the program 1 is a malicious program, that is, a new AV-Killing malicious program, based on the termination related information, and may add the AV-Killing malicious program, ie, program 1, as a diagnosis target.
  • the server 200 sequentially executes at least one program (eg, programs 1 and 2) according to the termination related information generated / provided from the client system 100 to at least execute the at least one program.
  • One program eg program 1, 2) that terminates the malicious diagnostic program running on the server 200 (eg program 1) is recognized as a malicious program, that is, a new AV-Killing malicious program added to the diagnosis target can do.
  • At least one program (eg, programs 1 and 2) will be included in the termination related information generated / provided from the client system 100.
  • the server 200 executes the same malicious diagnostic program as the malicious diagnostic program 110 installed in the client system 100 and sequentially executes at least one program (eg, programs 1 and 2) included in the termination related information. Run the program to see if the malicious diagnostic program ends when any program is executed.
  • at least one program eg, programs 1 and 2 included in the termination related information.
  • the server 200 is the server 200 of at least one program (eg, program 1, 2) included in the termination-related information
  • the program 1 that terminates the malicious diagnosis program running in the) can be recognized as a malicious program, that is, a new AV-Killing malicious program, and the AV-Killing malicious program, or program 1, will be added as a diagnosis target.
  • the server 200 adds the above-mentioned AV-Killing malicious program, that is, program 1, as a diagnosis target, and installs the malicious diagnosis on the plurality of clients 300 including the client system 100. You can update the program.
  • the server 200 is not available in many other clients 300 where AV-Killing malware has not yet been executed. Since the malicious diagnostic program updated by) can recognize / diagnose AV-killing malware added as a diagnosis target, subsequent procedures (e.g., report the diagnosis result, delete the diagnosed malicious program, diagnosed) Treatment of infections caused by malicious programs).
  • the server 200 when the server 200 recognizes a new AV-Killing malicious program based on the termination related information generated / provided from the client system 100, the server 200 may be configured with the plurality of clients 300 except for the client system 100.
  • AV-Killing malware is recognized / diagnosed by a plurality of clients 300 to perform subsequent procedures (e.g., reporting a diagnosis result, deleting a diagnosed malware program, and diagnosing a diagnosis program). Treatment of infections caused by malicious programs, etc.).
  • the operation method of the client system according to the present invention includes information about AV-Killing malicious programs which terminated the malicious diagnostic programs, even though the malicious diagnostic programs in the system were terminated by AV-Killing malicious programs.
  • AV-Killing malicious programs By leaving (shutdown-related information) in the form of a dying message, many other clients can recognize the AV-Killing malicious program as a diagnosis target through the server. They can quickly diagnose the new AV-Killing malware itself and derive the effect of blocking the execution of AV-Killing malware.
  • the method of operating a client system may be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Magneto-optical media and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 하나의 클라이언트시스템의 희생을 기반으로, 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단하여 AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 클라이언트시스템 및 클라이언트시스템의 동작 방법에 관한 것이다.

Description

클라이언트시스템 및 클라이언트시스템의 동작 방법
본 발명의 실시예들은, 악성진단프로그램(예 : 안티 바이러스 제품)을 공격하여 종료시키는 악성프로그램으로부터 시스템을 빠르고 효율적으로 보호할 수 있도록 하는 기술들과 관련된다.
많은 악성코드(악성프로그램)들이 자신을 진단하는 악성진단프로그램(예: 안티 바이러스 제품)에 대항하기 위해, 악성진단프로그램을 공격하여 종료시킨 후에 시스템을 감염 시키고 있다. 이런 기술을 AV-Killing 기술이라고 부르는데, AV-Killing 기술에 의해 악성진단프로그램이 종료되면, 악성진단프로그램의 진단 기능이 무력화가 되어 더 이상 시스템을 보호 하는 것이 불가능해 진다.
이러한, AV-Killing 기술에 대응하고자 많은 악성진단프로그램 업체들은 자신의 제품에 자체 보호 기술을 적용하여 무력화 되지 않도록 방어하고 있다.
하지만, 이와 같은 방어 기법을 악성진단프로그램에 적용하는 방식은, 얼마 지나지 않아 악성코드들이 그 방어 기법을 무력화 하는 새로운 공격 기법으로 악성진단프로그램을 공격하기 때문에 방어와 공격의 악순환이 반복될 뿐이다.
이에, 본 발명에서는, 악성진단프로그램에 방어 기법을 적용하는 기존의 자체 보호 기술 보다는, 악성진단프로그램을 공격하는 악성코드 자체를 빠르게 진단하여 이에 대처할 수 있도록 함으로써 악성코드의 실행을 원천적으로 차단할 수 있는 방안을 제안하고자 한다.
본 발명의 실시예들은 악성진단프로그램(예 : 안티 바이러스 제품)을 공격하여 종료시키는 악성프로그램으로부터 시스템을 빠르고 효율적으로 보호하기 위한 기술로서, 악성진단프로그램을 공격하는 악성프로그램 자체를 빠르게 진단하여 결과적으로 악성프로그램의 실행을 원천 차단할 수 있는 클라이언트시스템 및 클라이언트시스템의 동작 방법을 제안하고자 한다.
상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 클라이언트시스템의 동작 방법은, 악성진단프로그램이 비정상적으로 종료되는지 여부를 판단하는 판단단계; 상기 악성진단프로그램이 비정상적으로 종료되는 것으로 판단되면, 상기 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성하는 정보생성단계; 및 상기 종료관련정보를 서버로 제공하여, 상기 서버가 상기 종료관련정보에 기초하여 상기 악성진단프로그램을 종료시킨 악성프로그램을 인지하고 상기 인지한 악성프로그램을 진단대상으로 추가할 수 있도록 하는 제공단계를 포함한다.
상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 클라이언트시스템은, 악성진단프로그램이 비정상적으로 종료되는지 여부를 판단하는 비정상종료판단부; 상기 악성진단프로그램이 비정상적으로 종료되는 것으로 판단되면, 상기 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성하는 정보생성부; 및 상기 종료관련정보를 서버로 제공하여, 상기 서버가 상기 종료관련정보에 기초하여 상기 악성진단프로그램을 종료시킨 악성프로그램을 인지하고 상기 인지한 악성프로그램을 진단대상으로 추가할 수 있도록 하는 정보제공부를 포함한다.
본 발명의 실시예들은 하나의 클라이언트시스템의 희생을 기반으로 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단하여 AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 효과를 갖는다.
도 1은 본 발명의 바람직한 실시예에 따른 클라이언트시스템이 포함된 전체 시스템을 보여주는 예시도이다.
도 2는 본 발명의 바람직한 실시예에 따른 클라이언트시스템의 구성을 보여주는 구성도이다.
도 3은 본 발명의 바람직한 실시예에 따른 클라이언트시스템이 포함된 전체 시스템의 제어 흐름을 보여주는 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따른 클라이언트시스템의 동작 방법을 보여주는 동작 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 설명한다.
먼저, 도 1을 참조하여 본 발명을 설명하면 다음과 같다. 여기서, 도 1은 본 발명의 바람직한 실시예에 따른 클라이언트시스템이 포함된 전체 시스템을 보여주고 있다.
도 1에 도시된 바와 같이 전체 시스템에는, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)과, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에서 악성코드(이하, 악성프로그램이라 함)를 진단할 수 있도록 하는 서버(200)가 포함된다.
기본적으로, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)은, 컴퓨터, 스마트폰, 이동통신단말 등과 같이, 탑재된 운영체제를 기반으로 동작하는 시스템일 수 있다.
이러한, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에는, 악성프로그램에 의한 감염 및 공격으로부터 시스템을 보호하기 위해서, 시스템에서 악성프로그램을 진단하는 악성진단프로그램(예 : 안티 바이러스 제품)이 설치되어 있다.
클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에 설치되는 악성진단프로그램(예 : 안티 바이러스 제품)은, 서버(200)로부터 제공되어 설치되며 이후에도 서버(200)와의 연동을 통해서 주기적으로 업데이트되는 프로그램이다.
클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에 설치되는 악성진단프로그램(예 : 안티 바이러스 제품)은, 진단대상으로서 기 등록된 악성프로그램들에 대한 정보를 기반으로, 악성진단프로그램 자신이 실행되는 시스템 내에서 악성프로그램들을 진단하게 된다.
예컨대, 악성진단프로그램은, 자체적으로 시스템 내에서 악성프로그램들을 진단하는 클라이언트 기반 진단 방식, 또는 진단 시마다 서버(200)와 연동하여 악성프로그램들을 진단하는 클라우드 기반 진단 방식 중 어느 하나의 방식으로, 악성프로그램을 진단할 수 있다.
이에, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)는, 시스템 구동과 함께 악성진단프로그램을 실행하고, 악성진단프로그램을 통해 클라이언트 기반 진단 방식 또는 클라우드 기반 진단 방식 중 어느 하나의 방식에 따라서, 지속적으로 또는 주기적으로 시스템 내에서 악성프로그램을 진단할 수 있다.
이에, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)는, 악성프로그램을 진단한 진단 결과에 따라서, 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)를 수행할 수 있게 된다.
헌데, 최근에는 이러한 악성진단프로그램을 공격하여 종료시킨 후에 시스템을 감염시키는 악성프로그램(이하, AV-Killing 악성프로그램이라 함)이 등장하였다. 이러한 AV-Killing 악성프로그램에 의해 시스템에서 악성진단프로그램이 종료되면, 악성진단프로그램의 진단 기능이 무력화가 되어 더 이상 시스템을 보호하는 것이 불가능해 진다.
이에, 본 발명에서는, 악성진단프로그램을 공격하는 AV-Killing 악성프로그램 자체를 빠르게 진단하여 이에 대처할 수 있도록 함으로써, AV-Killing 악성프로그램의 실행을 원천적으로 차단할 수 있는 방안을 제안하고자 한다.
우선, 설명의 편의를 위해, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에는, 악성진단프로그램이 진단할 수 없는 AV-Killing 악성프로그램, 다시 말해 현재 설치된 버전의 악성진단프로그램이 진단대상으로서 인지하지 못하는 새로운 AV-Killing 악성프로그램이 설치되었다고 가정한다.
이때, 본 발명에 따른 클라이언트시스템(100)은, 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300) 중에서 전술의 AV-Killing 악성프로그램이 가장 먼저 실행되는 클라이언트인 것으로 가정하여 설명한다.
즉, 클라이언트시스템(100)에서는, 전술한 바와 같이 시스템 구동과 함께 악성진단프로그램을 실행하여, 시스템 구동 중에 지속적으로 또는 주기적으로 악성진단프로그램이 시스템 내에서 악성프로그램을 진단할 수 있도록 한다.
이때, 클라이언트시스템(100)에서는, AV-Killing 악성프로그램이 계획한 특정 시점에 실행되어 클라이언트시스템(100) 내 실행 중인 악성진단프로그램을 공격하여 종료시킬 수 있다.
이때, 본 발명에 따른 클라이언트시스템(100)은, 먼저 악성진단프로그램이 비정상적으로 종료되었는지 여부를 판단하고, 악성진단프로그램이 비정상적으로 종료된 것으로 판단되면, 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성한다.
즉, 클라이언트시스템(100)은, 악성진단프로그램이 비정상적으로 종료되는 경우 악성진단프로그램이 AV-Killing 악성프로그램에 의해 공격받아 종료된 것으로 보고, 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성하는 것이다.
결과적으로, 클라이언트시스템(100)은, 시스템 내에서 비록 AV-Killing 악성프로그램에 의해 악성진단프로그램이 공격받아 종료되었지만, 악성진단프로그램을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남기는 것이다.
이에, 클라이언트시스템(100)은, 생성한 종료관련정보를 서버(200)로 제공하여, 서버(200)가 상기 종료관련정보를 토대로 악성진단프로그램을 종료시킨 악성프로그램 즉 AV-Killing 악성프로그램을 인지하고, 인지한 AV-Killing 악성프로그램을 진단대상으로 추가한다.
이에 따라서, 서버(200)와 연동하는 다수의 다른 클라이언트(300)에서는, 진단대상으로 새롭게 추가된 AV-Killing 악성프로그램이 실행되기 이전에 AV-Killing 악성프로그램을 진단해낼 수 있게 된다.
보다 구체적으로 설명하면, 서버(200)는, AV-Killing 악성프로그램에 의해서 가장 먼저 공격받은 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지할 수 있다.
이에, 서버(200)는, 다음 업데이트 주기 도달 시, 전술의 인지한 AV-Killing 악성프로그램을 진단대상으로 추가하여 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에 설치된 악성진단프로그램을 업데이트할 수 있다.
따라서, 비록 클라이언트시스템(100)은 AV-Killing 악성프로그램에 의해 공격을 받았지만, 아직 AV-Killing 악성프로그램이 실행되지 않은 다른 다수의 클라이언트들(300)에서는 업데이트된 악성진단프로그램에 의해서 진단대상으로서 새롭게 추가된 AV-Killing 악성프로그램을 인지/진단할 수 있기 때문에, 이러한 진단 결과에 따른 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행할 수 있게 된다.
한편, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지하면, 클라이언트시스템(100)를 제외한 다수의 클라이언트들(300)와의 전술한 클라우드 기반 진단 방식(또는 네트워크 진단 방식이라 함)을 통해, 다수의 클라이언트들(300)에서 AV-Killing 악성프로그램을 인지/진단하여 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행하도록 할 수도 있다.
즉, 전술한 바와 같은 본 발명의 실시예에 따르면, 하나의 클라이언트시스템(100)의 희생을 기반으로 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단할 수 있는 환경을 조성함으로써, AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 효과를 도출할 수 있다.
이하에서는, 도 2를 참조하여 본 발명의 바람직한 실시예에 따른 클라이언트시스템의 구성을 보다 구체적으로 설명하도록 한다. 설명의 편의를 위해 도 1에서 언급한 참조번호를 이용하여 설명하도록 하겠다.
본 발명의 바람직한 실시예에 따른 클라이언트시스템(100)은, 악성진단프로그램(110)이 비정상적으로 종료되지 여부를 판단하는 비정상종료판단부(130)와, 악성진단프로그램(110)이 비정상적으로 종료되면, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성하는 정보생성부(140)와, 상기 생성한 종료관련정보를 서버(200)로 제공하여, 상기 서버가 상기 종료관련정보를 토대로 악성진단프로그램(110)을 종료시킨 악성프로그램을 인지하고 진단대상으로 추가하여 서버(200)와 연동하는 다수의 다른 클라이언트들(300)에서 상기 악성프로그램이 실행되기 이전에 진단할 수 있도록 하는 정보제공부(150)를 포함한다.
그리고, 클라이언트시스템(100)에는, 악성진단프로그램(110) 이외에도 다수의 프로그램들(120)이 설치될 수 있다.
전술한 바와 같이, 클라이언트시스템(100)에서는, 시스템 구동과 함께 악성진단프로그램(110)을 실행하여, 시스템 구동 중에 지속적으로 또는 주기적으로 악성진단프로그램(110)이 시스템 내에서 악성프로그램을 진단할 수 있도록 한다.
여기서, 클라이언트시스템(100)에는, 악성진단프로그램(110)이 진단할 수 없는 AV-Killing 악성프로그램, 다시 말해 현재 설치된 버전의 악성진단프로그램(110)이 진단대상으로서 인지하지 못하는 새로운 AV-Killing 악성프로그램이 설치되었다고 가정한다.
비정상종료판단부(130)는, 악성진단프로그램(110)이 비정상적으로 종료되는지 여부를 판단한다.
보다 구체적으로 설명하면, 비정상종료판단부(130)는, 악성진단프로그램(110)이 종료되는지 여부를 확인하고, 악성진단프로그램(110)이 종료되면 이러한 종료가 비정상적인 종료인지 여부를 판단하는 것이다.
이때, 악성진단프로그램(110)의 종료가 비정상적인 종료인지 여부를 판단하는 실시예를 설명하면 다음과 같다.
예컨대, 비정상종료판단부(130)는, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 정상종료절차에 따른 행위가 아닌 경우, 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단할 수 있다.
다시 말하면, 악성진단프로그램(110)은, AV-Killing 악성프로그램의 공격에 의한 종료 이외에도, 클라이언트시스템(100)의 사용자 조작에 의해 정상 종료될 수도 있고, 또는 악성진단프로그램(110) 업데이트를 위해 일시적으로 정상 종료될 수도 있다.
이에, 비정상종료판단부(130)에는, 악성진단프로그램(110)을 정상 종료시키는 명령어들 또는 악성진단프로그램(110)을 정상 종료시키는 프로그램들에 대한 화이트리스트가 기 설정되어 있을 수 있다.
이에, 비정상종료판단부(130)는, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 화이트리스트에 속하는 명령어 또는 프로그램에 의한 행위라고 판단되면, 금번 악성진단프로그램(110)의 종료가 기 설정된 정상종료절차에 따르는 것으로 판단할 것이다.
한편, 비정상종료판단부(130)는, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 화이트리스트에 속하는 명령어 또는 프로그램에 의한 행위가 아니라고 판단되면, 금번 악성진단프로그램(110)의 종료가 기 설정된 정상종료절차에 따르지 않는다고 판단하여, 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단할 수 있다.
정보생성부(140)는, 비정상종료판단부(130)에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성한다.
즉, 정보생성부(140)는, 악성진단프로그램(110)이 비정상적으로 종료되는 경우를 악성진단프로그램(110)이 AV-Killing 악성프로그램에 의해 공격받아 종료된 것으로 보고, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성하는 것이다.
이하에서는, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성하는 실시예를 설명하도록 한다.
먼저, 제1실시예를 설명하면, 정보생성부(140)는, 클라이언트시스템(100)에서 실행되는 각 프로그램1,2.. .N에 의한 행위가 기록된 로그정보를 기초로, 악성진단프로그램(110)을 공격한 프로그램을 검색하여 상기 검색한 프로그램에 대한 정보를 종료관련정보로 생성할 수 있다.
보다 구체적으로 설명하면, 클라이언트시스템(100)에는 클라이언트시스템(100)에서 실행되는 각 프로그램1,2.. .N에 의한 행위가 로그정보로서 기록될 수 있다.
예를 들면, 악성진단프로그램(110)이 클라이언트시스템(100)에서 실행되는 각 프로그램1,2.. .N에 의한 행위를 감시하여 기 등록된 진단대상의 악성프로그램을 진단하는 행위기반 진단프로그램이라면, 악성진단프로그램(110)은 AV-Killing 악성프로그램에 의해 공격받아 종료되기 이전까지 지속적으로 감시한 각 프로그램1,2.. .N에 의한 행위를 로그정보로서 기록했을 것이다.
물론, 악성진단프로그램(110) 이외의 다른 프로그램 또는 함수에 의해, 클라이언트시스템(100)에서 실행되는 각 프로그램1,2.. .N에 의한 행위가 로그정보로서 기록될 수 있다.
이에, 정보생성부(140)는, 비정상종료판단부(130)에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 전술과 같이 기록된 로그정보를 기초로 악성진단프로그램(110)을 공격한 프로그램을 검색할 수 있다. 이하에서는, 설명의 편의를 위해, 도 2와 같이 클라이언트시스템(100)에 설치된 다수의 프로그램1,2.. .N 중에서 프로그램1이 AV-Killing 악성프로그램인 것으로 설명하겠다.
따라서, 예를 들면 정보생성부(140)는, 전술과 같이 기록된 로그정보를 기초로 악성진단프로그램(110)을 실질적으로 종료시킨 프로그램을 확인하고, 확인된 프로그램(예 : 프로그램1)을 악성진단프로그램(110)을 공격한 프로그램인 것으로 검색할 수 있다.
그리고, 정보생성부(140)는, 전술과 같이 검색한 프로그램(예 : 프로그램1)에 대한 정보를 종료관련정보로 생성할 수 있다.
예컨대, 정보생성부(140)는, 검색한 프로그램(예 : 프로그램1)을 인지할 수 있도록 하는 정보(예 : 프로그램이름정보, 사이즈정보, 해쉬값(예 : MD5) 등)을 종료관련정보로서 생성할 수 있다.
한편, 제1실시예와는 다른 제2실시예를 설명하면, 정보생성부(140)는, 악성진단프로그램(110)이 비정상적으로 종료된 시점에 실행 중인 프로그램 중에서 인증되지 않은 적어도 하나의 프로그램을 확인하고, 상기 확인한 적어도 하나의 프로그램에 대한 정보를 종료관련정보로 생성할 수 있다.
보다 구체적으로 설명하면, 클라이언트시스템(100)에 설치된 각 프로그램1,2.. .N이 모두 동시간 대에 실행되는 것은 아니다.
이에, 정보생성부(140)는, 비정상종료판단부(130)에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 각 프로그램1,2.. .N 중에서 악성진단프로그램(110)이 비정상적으로 종료된 시점에 실행 중인 프로그램(예 : 프로그램1,2, N-2, N)을 확인하고, 확인한 프로그램(예 : 프로그램1,2, N-2, N) 중에서 인증되지 않은 적어도 하나의 프로그램(예 : 프로그램1,2)을 확인할 수 있다.
이때, 인증되지 않은 적어도 하나의 프로그램은, 악성진단프로그램(110)에 의한 가장 최근의 진단 시 진단범위에 속하지 않아 진단되지 않았거나 또는 기 등록된 인증프로그램 리스트에 속하지 않거나 또는 별도 인증절차에 의해 인증되지 않은 프로그램일 수 있다.
다시 말해, 인증되지 않은 적어도 하나의 프로그램이란, 어떠한 방식으로든 정상프로그램이라고 인증되지 않은 의심스러운 프로그램을 의미할 것이다.
그리고, 정보생성부(140)는, 전술과 같이 확인한 적어도 하나의 프로그램(예 : 프로그램1,2)에 대한 정보를 종료관련정보로 생성할 수 있다.
예컨대, 정보생성부(140)는, 적어도 하나의 프로그램(예 : 프로그램1,2)을 포함하는 종료관련정보를 생성할 수 있다.
결과적으로, 정보생성부(140)는, 클라이언트시스템(100) 내에서 비록 AV-Killing 악성프로그램에 의해 악성진단프로그램(110)이 공격받아 종료되었지만, 악성진단프로그램(110)을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남기는 것이다.
이러한 정보생성부(140)는, 클라이언트시스템(100)의 커널 메모리(Kernel Memory)에서 구동되는 쓰레드(예 : Recoder Thread)에 의한 구성일 수 있다.
정보제공부(150)는, 정보생성부(140)에서 생성한 종료관련정보를 서버(200)로 제공하여, 서버(200)가 상기 종료관련정보를 토대로 악성진단프로그램(110)을 종료시킨 악성프로그램 즉 AV-Killing 악성프로그램을 인지하고, 인지한 AV-Killing 악성프로그램을 진단대상으로 추가하여 서버(200)와 연동하는 다수의 다른 클라이언트들(300)에서 AV-Killing 악성프로그램이 실행되기 이전에 진단할 수 있도록 한다.
보다 구체적으로 설명하면, 서버(200)는, AV-Killing 악성프로그램에 의해서 가장 먼저 공격받은 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지할 수 있다.
즉, 전술의 제1실시예에 따르면, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에 따른 프로그램(예 : 프로그램1)을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지하여 진단대상으로 추가할 수 있다.
다시 말하면, 전술의 제1실시예의 경우 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에는 프로그램(예 : 프로그램1)을 인지할 수 있도록 하는 정보(예 : 프로그램이름정보, 사이즈정보, 해쉬값(예 : MD5) 등)가 포함될 것이다.
이에, 서버(200)는, 종료관련정보를 토대로 프로그램1이 악성프로그램 즉 새로운 AV-Killing 악성프로그램임을 인지할 수 있고, AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가할 수 있다.
한편, 전술의 제2실시예에 따르면, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에 따른 적어도 하나의 프로그램(예 : 프로그램1,2)을 순차적으로 실행하여 적어도 하나의 프로그램(예 : 프로그램1,2) 중 서버(200)에서 실행 중인 악성진단프로그램을 종료시키는 프로그램(예 : 프로그램1)을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지하여 진단대상으로 추가할 수 있다.
다시 말하면, 전술의 제2실시예의 경우 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에는, 적어도 하나의 프로그램(예 : 프로그램1,2)이 포함될 것이다.
이에, 서버(200)는, 클라이언트시스템(100)에 설치된 악성진단프로그램(110)과 동일한 악성진단프로그램을 실행하고, 종료관련정보에 포함된 적어도 하나의 프로그램(예 : 프로그램1,2)을 순차적으로 실행하여 어떤 프로그램이 실행될 때 악성진단프로그램이 종료되는지를 확인한다.
따라서, 서버(200)에서 프로그램1을 실행시킬 때 악성진단프로그램이 종료되는 것으로 가정하면, 서버(200)는 종료관련정보에 포함된 적어도 하나의 프로그램(예 : 프로그램1,2) 중 서버(200)에서 실행 중인 악성진단프로그램을 종료시키는 프로그램1을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지할 수 있고, AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가할 것이다.
이에, 서버(200)는, 다음 업데이트 주기 도달 시, 전술의 인지한 AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가하여 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에 설치된 악성진단프로그램을 업데이트할 수 있다.
따라서, 본 발명의 실시예에 따르면, 비록 클라이언트시스템(100)은 AV-Killing 악성프로그램에 의해 공격을 받았지만, 아직 AV-Killing 악성프로그램이 실행되지 않은 다른 다수의 클라이언트들(300)에서는 업데이트된 악성진단프로그램에 의해서 진단대상으로서 새롭게 추가된 AV-Killing 악성프로그램을 인지/진단할 수 있기 때문에, 이러한 진단 결과에 따른 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행할 수 있게 된다.
한편, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지하면, 클라이언트시스템(100)를 제외한 다수의 클라이언트들(300)와의 전술한 클라우드 기반 진단 방식(또는 네트워크 진단 방식이라 함)을 통해, 다수의 클라이언트들(300)에서 AV-Killing 악성프로그램을 인지/진단하여 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행하도록 할 수도 있다.
따라서, 비록 클라이언트시스템(100)은 AV-Killing 악성프로그램에 의해 공격을 받았지만, 아직 AV-Killing 악성프로그램이 실행되지 않은 다른 다수의 클라이언트들(300)에서는 업데이트된 악성진단프로그램에 의해서 진단대상으로서 새롭게 추가된 AV-Killing 악성프로그램을 인지/진단할 수 있기 때문에, 이러한 진단 결과에 따른 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행할 수 있게 된다.
이상에서 설명한 바와 같이 본 발명에 따른 클라이언트시스템은, 비록 AV-Killing 악성프로그램에 의해 시스템 내 악성진단프로그램이 공격받아 종료되었지만, 악성진단프로그램을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남겨, 서버를 통해서 다수의 다른 클라이언트들이 AV-Killing 악성프로그램을 진단대상으로서 인지할 수 있도록 함으로써, 하나의 클라이언트시스템의 희생을 기반으로 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단하여 AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 효과를 도출한다.
한편, 전술에서 설명한 본 발명의 비정상종료판단부(130), 정보생성부(140) 및 정보제공부(150) 구성은, 하나의 프로그램(어플리케이션) 형태로 구성되어, 클라이언트시스템(100)을 비롯한 다수의 다른 클라이언트들(300)에 설치되는 것도 가능할 것이다.
이하에서는, 도 3 및 도 4를 참조하여 본 발명의 바람직한 실시예에 따른 클라이언트시스템의 동작 방법을 설명하도록 한다. 설명의 편의를 위해 전술한 도 1 및 도 2의 참조번호를 이용하여 설명하도록 하겠다.
먼저, 도 3을 참조하여 바람직한 실시예에 따른 클라이언트시스템(100)이 포함된 전체 시스템의 제어 흐름을 설명하도록 한다.
클라이언트시스템(100)에서는, 전술한 바와 같이 시스템 구동과 함께 악성진단프로그램(110)을 실행하여, 시스템 구동 중에 지속적으로 또는 주기적으로 악성진단프로그램(110)이 시스템 내에서 악성프로그램을 진단할 수 있도록 할 것이다(S10).
이때, 클라이언트시스템(100)에서는, AV-Killing 악성프로그램이 계획한 특정 시점에 실행되어 클라이언트시스템(100) 내 실행 중인 악성진단프로그램(110)을 공격하여 종료시킬 수 있다.
이때, 본 발명에 따른 클라이언트시스템(100)은, 악성진단프로그램(110)이 종료되면 비정상적으로 종료되었는지 여부를 판단하고(S20), 악성진단프로그램(110)이 비정상적으로 종료된 것으로 판단되면 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성한다(S30).
즉, 클라이언트시스템(100)은, 악성진단프로그램(110)이 비정상적으로 종료되는 경우 악성진단프로그램(110)이 AV-Killing 악성프로그램에 의해 공격받아 종료된 것으로 보고, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성하는 것이다.
결과적으로, 클라이언트시스템(100)은, 시스템 내에서 비록 AV-Killing 악성프로그램에 의해 악성진단프로그램(110)이 공격받아 종료되었지만, 악성진단프로그램(110)을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남기는 것이다.
이에, 클라이언트시스템(100)은, 생성한 종료관련정보를 서버(200)로 제공하여(S40), 서버(200)가 상기 종료관련정보를 토대로 악성진단프로그램(110)을 종료시킨 악성프로그램 즉 AV-Killing 악성프로그램을 인지하고, 인지한 AV-Killing 악성프로그램을 진단대상으로 추가하여 서버(200)와 연동하는 다수의 다른 클라이언트(300)에서 AV-Killing 악성프로그램이 실행되기 이전에 진단할 수 있도록 한다.
보다 구체적으로 설명하면, 서버(200)는, AV-Killing 악성프로그램에 의해서 가장 먼저 공격받은 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지할 수 있다.
이에, 서버(200)는, 다음 업데이트 주기 도달 시, 전술의 인지한 AV-Killing 악성프로그램을 진단대상으로 추가하여(S50), 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)와 연동하여 설치된 악성진단프로그램(110)을 업데이트할 수 있다(S60).
따라서, 비록 클라이언트시스템(100)은 AV-Killing 악성프로그램에 의해 공격을 받았지만, 아직 AV-Killing 악성프로그램이 실행되지 않은 다른 다수의 클라이언트들(300)에서는 서버(200)에 의해 업데이트된 악성진단프로그램(110)이 진단대상으로서 추가된 AV-Killing 악성프로그램을 인지/진단할 수 있기 때문에(S70,S72,S74), 이러한 진단 결과에 따른 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행할 수 있게 된다.
한편, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지하면, 클라이언트시스템(100)를 제외한 다수의 클라이언트들(300)와의 전술한 클라우드 기반 진단 방식(또는 네트워크 진단 방식이라 함)을 통해, 다수의 클라이언트들(300)에서 AV-Killing 악성프로그램을 인지/진단하여 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행하도록 할 수도 있다.
즉, 전술한 바와 같은 본 발명의 실시예에 따르면, 하나의 클라이언트시스템(100)의 희생을 기반으로 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단할 수 있는 환경을 조성함으로써, AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 효과를 도출할 수 있다.
이하에서는 도 4를 참조하여 본 발명의 바람직한 실시예에 따른 클라이언트시스템의 동작 방법을 설명하도록 하겠다.
전술한 바와 같이, 클라이언트시스템(100)에서는, 시스템 구동과 함께 악성진단프로그램(110)을 실행하여, 시스템 구동 중에 지속적으로 또는 주기적으로 악성진단프로그램(110)이 시스템 내에서 악성프로그램을 진단할 수 있도록 한다(S100).
여기서, 클라이언트시스템(100)에는, 악성진단프로그램(110)이 진단할 수 없는 AV-Killing 악성프로그램, 다시 말해 현재 설치된 버전의 악성진단프로그램(110)이 진단대상으로서 인지하지 못하는 새로운 AV-Killing 악성프로그램이 설치되었다고 가정한다.
본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)이 비정상적으로 종료되지 여부를 판단한다(S110).
보다 구체적으로 설명하면, 본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)이 종료되는지 여부를 확인하고, 악성진단프로그램(110)이 종료되면 이러한 종료가 비정상적인 종료인지 여부를 판단하는 것이다.
이때, 악성진단프로그램(110)의 종료가 비정상적인 종료인지 여부를 판단하는 실시예를 설명하면 다음과 같다.
예컨대, 본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 정상종료절차에 따른 행위가 아닌 경우, 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단할 수 있다.
예를 들면, 본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 화이트리스트에 속하는 명령어 또는 프로그램에 의한 행위라고 판단되면, 금번 악성진단프로그램(110)의 종료가 기 설정된 정상종료절차에 따르는 것으로 판단할 것이다.
한편, 본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)의 종료와 관련된 행위가 기 설정된 화이트리스트에 속하는 명령어 또는 프로그램에 의한 행위가 아니라고 판단되면, 금번 악성진단프로그램(110)의 종료가 기 설정된 정상종료절차에 따르지 않는다고 판단하여, 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단할 수 있다.
본 발명의 클라이언트시스템(100)의 동작 방법은, S110단계에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성한다(S120).
즉, 본 발명의 클라이언트시스템(100)의 동작 방법은, 악성진단프로그램(110)이 비정상적으로 종료되는 경우를 악성진단프로그램(110)이 AV-Killing 악성프로그램에 의해 공격받아 종료된 것으로 보고, 악성진단프로그램(110)의 비정상적인 종료와 관련된 종료관련정보를 생성하는 것이다.
먼저, 제1실시예를 설명하면, 본 발명의 클라이언트시스템(100)의 동작 방법은, S110단계에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 전술과 같이 기록된 로그정보를 기초로 악성진단프로그램(110)을 공격한 프로그램을 검색할 수 있다. 이하에서는, 설명의 편의를 위해, 도 2와 같이 클라이언트시스템(100)에 설치된 다수의 프로그램1,2.. .N 중에서 프로그램1이 AV-Killing 악성프로그램인 것으로 설명하겠다.
따라서, 예를 들면 본 발명의 클라이언트시스템(100)의 동작 방법은, 전술과 같이 기록된 로그정보를 기초로 악성진단프로그램(110)을 실질적으로 종료시킨 프로그램을 확인하고, 확인된 프로그램(예 : 프로그램1)을 악성진단프로그램(110)을 공격한 프로그램인 것으로 검색할 수 있다.
그리고, 본 발명의 클라이언트시스템(100)의 동작 방법은, 전술과 같이 검색한 프로그램(예 : 프로그램1)에 대한 정보를 종료관련정보로 생성할 수 있다.
예컨대, 본 발명의 클라이언트시스템(100)의 동작 방법은, 검색한 프로그램(예 : 프로그램1)을 인지할 수 있도록 하는 정보(예 : 프로그램이름정보, 사이즈정보, 해쉬값(예 : MD5) 등)을 종료관련정보로서 생성할 수 있다.
한편, 제1실시예와는 다른 제2실시예를 설명하면, 본 발명의 클라이언트시스템(100)의 동작 방법은, S110단계에서 악성진단프로그램(110)이 비정상적으로 종료되는 것으로 판단되면, 악성진단프로그램(110)이 비정상적으로 종료된 시점에 실행 중인 프로그램 중에서 인증되지 않은 적어도 하나의 프로그램을 확인하고, 상기 확인한 적어도 하나의 프로그램에 대한 정보를 종료관련정보로 생성할 수 있다.
예를 들어, 본 발명의 클라이언트시스템(100)의 동작 방법은, 각 프로그램1,2.. .N 중에서 악성진단프로그램(110)이 비정상적으로 종료된 시점에 실행 중인 프로그램(예 : 프로그램1,2, N-2, N)을 확인하고, 확인한 프로그램(예 : 프로그램1,2, N-2, N) 중에서 인증되지 않은 적어도 하나의 프로그램(예 : 프로그램1,2)을 확인할 수 있다.
그리고, 본 발명의 클라이언트시스템(100)의 동작 방법은, 전술과 같이 확인한 적어도 하나의 프로그램(예 : 프로그램1,2)에 대한 정보를 종료관련정보로 생성할 수 있다.
예컨대, 본 발명의 클라이언트시스템(100)의 동작 방법은, 적어도 하나의 프로그램(예 : 프로그램1,2)을 포함하는 종료관련정보를 생성할 수 있다.
결과적으로, 본 발명의 클라이언트시스템(100)의 동작 방법은, 클라이언트시스템(100) 내에서 비록 AV-Killing 악성프로그램에 의해 악성진단프로그램(110)이 공격받아 종료되었지만, 악성진단프로그램(110)을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남기는 것이다.
본 발명의 클라이언트시스템(100)의 동작 방법은, S120단계에서 생성한 종료관련정보를 서버(200)로 제공하여(S130), 서버(200)가 상기 종료관련정보를 토대로 악성진단프로그램(110)을 종료시킨 악성프로그램 즉 AV-Killing 악성프로그램을 인지하고, 인지한 AV-Killing 악성프로그램을 진단대상으로 추가하여 서버(200)와 연동하는 다수의 다른 클라이언트들(300)에서 AV-Killing 악성프로그램이 실행되기 이전에 진단할 수 있도록 한다(S140).
보다 구체적으로 설명하면, 서버(200)는, AV-Killing 악성프로그램에 의해서 가장 먼저 공격받은 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지할 수 있다.
즉, 전술의 제1실시예에 따르면, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에 따른 프로그램(예 : 프로그램1)을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지하여 진단대상으로 추가할 수 있다.
다시 말하면, 전술의 제1실시예의 경우 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에는 프로그램(예 : 프로그램1)을 인지할 수 있도록 하는 정보(예 : 프로그램이름정보, 사이즈정보, 해쉬값(예 : MD5) 등)가 포함될 것이다.
이에, 서버(200)는, 종료관련정보를 토대로 프로그램1이 악성프로그램 즉 새로운 AV-Killing 악성프로그램임을 인지할 수 있고, AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가할 수 있다.
한편, 전술의 제2실시예에 따르면, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에 따른 적어도 하나의 프로그램(예 : 프로그램1,2)을 순차적으로 실행하여 적어도 하나의 프로그램(예 : 프로그램1,2) 중 서버(200)에서 실행 중인 악성진단프로그램을 종료시키는 프로그램(예 : 프로그램1)을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지하여 진단대상으로 추가할 수 있다.
다시 말하면, 전술의 제2실시예의 경우 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보에는, 적어도 하나의 프로그램(예 : 프로그램1,2)이 포함될 것이다.
이에, 서버(200)는, 클라이언트시스템(100)에 설치된 악성진단프로그램(110)과 동일한 악성진단프로그램을 실행하고, 종료관련정보에 포함된 적어도 하나의 프로그램(예 : 프로그램1,2)을 순차적으로 실행하여 어떤 프로그램이 실행될 때 악성진단프로그램이 종료되는지를 확인한다.
따라서, 서버(200)에서 프로그램1을 실행시킬 때 악성진단프로그램이 종료되는 것으로 가정하면, 서버(200)는 종료관련정보에 포함된 적어도 하나의 프로그램(예 : 프로그램1,2) 중 서버(200)에서 실행 중인 악성진단프로그램을 종료시키는 프로그램1을 악성프로그램 즉 새로운 AV-Killing 악성프로그램인 것으로 인지할 수 있고, AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가할 것이다.
이에, 서버(200)는, 다음 업데이트 주기 도달 시, 전술의 인지한 AV-Killing 악성프로그램 즉 프로그램1을 진단대상으로 추가하여 클라이언트시스템(100)을 비롯한 다수의 클라이언트들(300)에 설치된 악성진단프로그램을 업데이트할 수 있다.
따라서, 본 발명의 실시예에 따르면, 비록 클라이언트시스템(100)은 AV-Killing 악성프로그램에 의해 공격을 받았지만, 아직 AV-Killing 악성프로그램이 실행되지 않은 다른 다수의 클라이언트들(300)에서는 서버(200)에 의해 업데이트된 악성진단프로그램이 진단대상으로서 추가된 AV-Killing 악성프로그램을 인지/진단할 수 있기 때문에, 이러한 진단 결과에 따른 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행할 수 있게 된다.
한편, 서버(200)는, 클라이언트시스템(100)로부터 생성/제공되는 종료관련정보를 토대로 새로운 AV-Killing 악성프로그램을 인지하면, 클라이언트시스템(100)를 제외한 다수의 클라이언트들(300)와의 전술한 클라우드 기반 진단 방식(또는 네트워크 진단 방식이라 함)을 통해, 다수의 클라이언트들(300)에서 AV-Killing 악성프로그램을 인지/진단하여 이후 절차(예 : 진단결과 보고, 진단된 악성프로그램 삭제, 진단된 악성프로그램에 의한 감염 치료 등)을 수행하도록 할 수도 있다.
이상에서 설명한 바와 같이 본 발명에 따른 클라이언트시스템의 동작 방법은, 비록 AV-Killing 악성프로그램에 의해 시스템 내 악성진단프로그램이 공격받아 종료되었지만, 악성진단프로그램을 종료시킨 AV-Killing 악성프로그램에 대한 정보들(종료관련정보)을 다잉메시지와 같은 형태로 남겨, 서버를 통해서 다수의 다른 클라이언트들이 AV-Killing 악성프로그램을 진단대상으로서 인지할 수 있도록 함으로써, 하나의 클라이언트시스템의 희생을 기반으로 다른 다수의 클라이언트들이 새로운 AV-Killing 악성프로그램 자체를 빠르게 진단하여 AV-Killing 악성프로그램의 실행을 원천 차단할 수 있는 효과를 도출한다.
본 발명의 일실시예에 따른 클라이언트시스템의 동작 방법은, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (10)

  1. 악성진단프로그램이 비정상적으로 종료되는지 여부를 판단하는 판단단계;
    상기 악성진단프로그램이 비정상적으로 종료되는 것으로 판단되면, 상기 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성하는 정보생성단계; 및
    상기 종료관련정보를 서버로 제공하여, 상기 서버가 상기 종료관련정보에 기초하여 상기 악성진단프로그램을 종료시킨 악성프로그램을 인지하고 상기 인지한 악성프로그램을 진단대상으로 추가할 수 있도록 하는 제공단계를 포함하는 것을 특징으로 하는 클라이언트시스템의 동작 방법.
  2. 제 1 항에 있어서,
    상기 판단단계는,
    상기 악성진단프로그램의 종료와 관련된 행위가 기 설정된 정상종료절차에 따른 행위가 아닌 경우, 상기 악성진단프로그램이 비정상적으로 종료되는 것으로 판단하는 것을 특징으로 하는 클라이언트시스템의 동작 방법.
  3. 제 1 항에 있어서,
    상기 정보생성단계는,
    상기 클라이언트시스템에서 실행되는 각 프로그램에 의한 행위가 기록된 로그정보를 기초로, 상기 악성진단프로그램을 공격한 프로그램을 검색하고, 상기 검색한 프로그램에 대한 정보를 상기 종료관련정보로 생성하는 것을 특징으로 하는 클라이언트시스템의 동작 방법.
  4. 제 1 항에 있어서,
    상기 정보생성단계는,
    상기 악성진단프로그램이 비정상적으로 종료된 시점에 실행 중인 프로그램 중에서 인증되지 않은 적어도 하나의 프로그램을 확인하고, 상기 확인한 적어도 하나의 프로그램에 대한 정보를 상기 종료관련정보로 생성하는 것을 특징으로 하는 클라이언트시스템의 동작 방법.
  5. 제 3 항 또는 제 4 항에 있어서,
    상기 종료관련정보를 제공받은 상기 서버는,
    상기 종료관련정보에 따른 프로그램을 상기 악성프로그램으로 인지하거나, 또는 상기 종료관련정보에 따른 적어도 하나의 프로그램을 순차적으로 실행하여 상기 적어도 하나의 프로그램 중 상기 서버에서 실행 중인 상기 악성진단프로그램을 종료시키는 프로그램을 상기 악성프로그램으로 인지하는 것을 특징으로 하는 클라이언트시스템의 동작 방법.
  6. 악성진단프로그램이 비정상적으로 종료되는지 여부를 판단하는 비정상종료판단부;
    상기 악성진단프로그램이 비정상적으로 종료되는 것으로 판단되면, 상기 악성진단프로그램의 비정상적인 종료와 관련된 종료관련정보를 생성하는 정보생성부; 및
    상기 종료관련정보를 서버로 제공하여, 상기 서버가 상기 종료관련정보에 기초하여 상기 악성진단프로그램을 종료시킨 악성프로그램을 인지하고 상기 인지한 악성프로그램을 진단대상으로 추가할 수 있도록 하는 정보제공부를 포함하는 것을 특징으로 하는 클라이언트시스템.
  7. 제 6 항에 있어서,
    상기 정보생성부는,
    상기 클라이언트시스템에서 실행되는 각 프로그램에 의한 행위가 기록된 로그정보를 기초로, 상기 악성진단프로그램을 공격한 프로그램을 검색하고, 상기 검색한 프로그램에 대한 정보를 상기 종료관련정보로 생성하는 것을 특징으로 하는 클라이언트시스템.
  8. 제 6 항에 있어서,
    상기 정보생성부는,
    상기 악성진단프로그램이 비정상적으로 종료된 시점에 실행 중인 프로그램 중에서 인증되지 않은 적어도 하나의 프로그램을 확인하고, 상기 확인한 적어도 하나의 프로그램에 대한 정보를 상기 종료관련정보로 생성하는 것을 특징으로 하는 클라이언트시스템.
  9. 제 7 항 또는 제 8 항에 있어서,
    상기 종료관련정보를 제공받은 상기 서버는,
    상기 종료관련정보에 따른 프로그램을 상기 악성프로그램으로 인지하거나, 또는 상기 종료관련정보에 따른 적어도 하나의 프로그램을 순차적으로 실행하여 상기 적어도 하나의 프로그램 중 상기 서버에서 실행 중인 상기 악성진단프로그램을 종료시키는 프로그램을 상기 악성프로그램으로 인지하는 것을 특징으로 하는 클라이언트시스템.
  10. 제 1 항 내지 제 5 항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
PCT/KR2014/006279 2013-07-12 2014-07-11 클라이언트시스템 및 클라이언트시스템의 동작 방법 WO2015005736A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20130082294A KR101489142B1 (ko) 2013-07-12 2013-07-12 클라이언트시스템 및 클라이언트시스템의 동작 방법
KR10-2013-0082294 2013-07-12

Publications (1)

Publication Number Publication Date
WO2015005736A1 true WO2015005736A1 (ko) 2015-01-15

Family

ID=52280315

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/006279 WO2015005736A1 (ko) 2013-07-12 2014-07-11 클라이언트시스템 및 클라이언트시스템의 동작 방법

Country Status (2)

Country Link
KR (1) KR101489142B1 (ko)
WO (1) WO2015005736A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112162913A (zh) * 2020-10-30 2021-01-01 珠海格力电器股份有限公司 操作的执行方法和装置、存储介质、电子装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008522298A (ja) * 2004-12-02 2008-06-26 聯想(北京)有限公司 コンピュータに信頼可能な実行環境を構築する方法
KR20100037016A (ko) * 2008-09-30 2010-04-08 인텔 코포레이션 바이러스 방지 스캔 서비스를 제공하는 디바이스, 시스템 및 방법
KR20110027547A (ko) * 2009-09-08 2011-03-16 (주)이스트소프트 자동화된 악성코드 긴급대응 시스템 및 방법
KR20130053027A (ko) * 2011-11-14 2013-05-23 (주)네오위즈게임즈 프로그램의 비정상적 종료에 대한 데이터 제공 및 수집 방법과 그 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008522298A (ja) * 2004-12-02 2008-06-26 聯想(北京)有限公司 コンピュータに信頼可能な実行環境を構築する方法
KR20100037016A (ko) * 2008-09-30 2010-04-08 인텔 코포레이션 바이러스 방지 스캔 서비스를 제공하는 디바이스, 시스템 및 방법
KR20110027547A (ko) * 2009-09-08 2011-03-16 (주)이스트소프트 자동화된 악성코드 긴급대응 시스템 및 방법
KR20130053027A (ko) * 2011-11-14 2013-05-23 (주)네오위즈게임즈 프로그램의 비정상적 종료에 대한 데이터 제공 및 수집 방법과 그 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112162913A (zh) * 2020-10-30 2021-01-01 珠海格力电器股份有限公司 操作的执行方法和装置、存储介质、电子装置

Also Published As

Publication number Publication date
KR20150007803A (ko) 2015-01-21
KR101489142B1 (ko) 2015-02-05

Similar Documents

Publication Publication Date Title
WO2021060856A1 (ko) 단말의 안전한 네트워크 접속을 위한 시스템 및 방법
WO2013168913A1 (ko) 비실행 파일 검사 장치 및 방법
WO2012015171A2 (ko) 해커 바이러스 보안통합관리기
WO2011105659A1 (ko) 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
WO2018101727A1 (ko) 인증프로세스의 단계분할과 생체인증을 접목한 개인정보침해 방어 방법 및 시스템
WO2013168951A1 (ko) 악성 파일 검사 장치 및 방법
WO2016169390A1 (zh) 应用安全防护方法、终端、存储介质
WO2017034072A1 (ko) 네트워크 보안 시스템 및 보안 방법
WO2019231135A1 (ko) 차량 침입 감지 및 방지 시스템
WO2019160195A1 (ko) 파일 내 포함된 악성 위협 탐지 장치 및 방법, 그 기록매체
WO2018056601A1 (ko) 콘텐츠 파일 접근 제어를 이용한 랜섬웨어 차단 장치 및 차단 방법
WO2012023657A1 (ko) 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템
JP5989936B2 (ja) 特定装置、特定方法および特定プログラム
WO2019039730A1 (ko) 랜섬웨어 방지 장치 및 방법
EP3474174A1 (en) System and method of adapting patterns of dangerous behavior of programs to the computer systems of users
WO2015194829A2 (ko) 인터넷 접속 요청을 하는 클라이언트 단말의 인터넷 접속 요청 트래픽으로부터 동일한 공인 ip를 이용하는 사설 네트워크상의 복수개의 클라이언트 단말 중에서 추가 비지정 도메인 네임을 구비한 웹서버에 의해 선별된 디바이스의 대수를 검출하는 방법 및 공인 ip 공유 상태의 디바이스의 선별적인 검출 시스템
JP2011154727A (ja) 解析システム、解析方法および解析プログラム
WO2014042344A1 (ko) 디버그 이벤트를 이용한 악성 쉘 코드 탐지 장치 및 방법
WO2014185627A1 (ko) 데이터 프로세싱 시스템 보안 장치와 보안방법
JP6918269B2 (ja) 攻撃推定装置、攻撃制御方法、および攻撃推定プログラム
WO2014077615A1 (en) Anti-malware system, method of processing packet in the same, and computing device
WO2014200201A1 (ko) 시스템 보호를 위한 파일 보안용 관리장치와 관리방법
WO2015005736A1 (ko) 클라이언트시스템 및 클라이언트시스템의 동작 방법
WO2018043885A1 (ko) 악성코드탐지시스템 및 악성코드 탐지 방법
WO2013125867A1 (ko) 컴퓨터 시스템과, 파일 및 행위 기반 복합룰 작성 시스템

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: 14822353

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14822353

Country of ref document: EP

Kind code of ref document: A1