IP Library Granted Patent US 8,621,624
Granted Patent B2
US 8,621,624 · App. 12/332,012 · Granted Dec 31, 2013

Apparatus and method for preventing anomaly of application program

Inventors: In Sook Jang (Daejeon, KR); Eun Young Lee (Daejeon, KR); Hyung Geun Oh (Daejeon, KR); Do Hoon Lee (Daejeon, KR)
Assignee: Electronics and Telecommunications Research Institute
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,621,624
App. No.
12/332,012
Granted
Dec 31, 2013
Kind
B2
Abstract

An apparatus and method for preventing an anomaly of an application program are provided. More particularly, an apparatus and method for preventing an anomaly of an application program that detect and stop an anomaly on the basis of a behavior profile for an application program are provided. The apparatus includes a behavior monitor that detects behavior of an application program in operation, an anomaly detector that determines whether the detected behavior of the application program is an anomaly on the basis of a behavior profile of the application program in operation, and an anomaly stopper that stops the behavior of the application program determined as an anomaly by the anomaly detector. Possible application program behavior is stored according to its purpose in a behavior profile and an anomaly is detected and stopped on the basis of the behavior profile, thereby decreasing a false-positive rate of anomaly detection and simultaneously solving a problem of a conventional security programs being incapable of defending against attacks using the authority of a program trusted by a user.

Claims (57)

1. An apparatus for preventing an anomaly of an application program executed in a computer, comprising:

a hardware processor;

a behavior profile database that stores a behavior profile for each application program installed in the computer, wherein the behavior profile comprises, for the each application program, information on behavior that is permitted to be executed by the respective application program in operation, and

wherein the behavior comprises at least one of process generation, registry write, file write and network connection behavior;

a behavior monitor that detects behavior of the application program in operation,

wherein the behavior monitor detects only behavior of a selected application program based on a monitoring-target program database storing a predetermined list of monitoring-target application programs, and

wherein the predetermined list is configured from a list of application program interface (API) functions;

an anomaly detector that determines whether the detected behavior of the application program is an anomaly based on the behavior profile of the application program stored in the behavior profile database,

wherein the anomaly is configured to be detected from at least a reliable application program,

wherein the reliable application program is configured to be a program trusted by a user to be executed in the computer of the user, and

wherein the anomaly is configured to determine that the detected behavior of the respective application program is different from the permitted behavior to be executed by the same respective application program; and

an anomaly stopper that stops the behavior of the application program determined as the anomaly by the anomaly detector.

2. The apparatus of claim 1 , further comprising:

a behavior profile extractor that extracts the behavior profile of the application program in operation.

3. The apparatus of claim 2 , wherein the behavior profile extractor extracts the behavior profile of the application program in operation by analyzing a source code of the application program in operation.

4. The apparatus of claim 2 , wherein the behavior profile extractor extracts the behavior profile of the application program in operation by simulating the application program in operation.

5. The apparatus of claim 1 , wherein the behavior profile is an extensible markup language (XML) code comprising a tag indicating whether each behavior is accepted.

6. The apparatus of claim 1 , wherein the behavior monitor detects only monitoring-target behavior among behavior of the application program in operation on the basis of types of monitoring-target behavior stored in a monitoring-target behavior database.

7. The apparatus of claim 1 , wherein the behavior monitor hooks and analyzes the respective (API) function called by the application program in operation using an API hooking module.

8. The apparatus of claim 7 , wherein the behavior monitor detects only monitoring-target behavior among behavior of the application program in operation based on a monitoring-target behavior database storing the list of API functions corresponding to a monitoring-target behavior.

9. A method for preventing an anomaly of an application program executed in a computer, comprising:

storing a behavior profile for each application program installed in the computer, wherein the behavior profile comprises, for each application, information on behavior that is permitted to be executed by the application,

wherein the behavior comprises at least one of process generation, registry write, file write and network connection behavior;

detecting behavior of the application program in operation, and

wherein the detecting of the behavior of the application program in operation comprises:

detecting only behavior of a selected application program based on a monitoring-target program database storing a predetermined list of monitoring-target application program, and

wherein the predetermined list less than an actual list of behaviors that are performed for each of the application programs;

determining by a processor whether the detected behavior of the application program is an anomaly based on the stored behavior profile of the application program,

wherein the anomaly is detected from at least a reliable application program, and

wherein the reliable application program is a program trusted by a user to be executed in the computer of the user,

wherein the reliable application program is trusted by the user prior to the detecting of the behavior of the application program in operation, and

wherein the anomaly determines that the detected behavior of the selected application program from the respective application program is different from the permitted behavior to be executed by the same respective application program; and

stopping the behavior of the application program determined as the anomaly, and

wherein the behavior is stopped in the application program before being executed in the computer.

10. The method of claim 9 , wherein in extracting the behavior profile of the application program in operation, the behavior profile is extracted by analyzing a source code of the application program in operation.

11. The method of claim 9 , wherein in extracting the behavior profile of the application program in operation, the behavior profile is extracted by simulating the application program in operation.

12. The method of claim 9 , wherein the detecting of the behavior of the application program in operation comprises:

hooking an API function called by the application program in operation; and

detecting the behavior attempted by the application program in operation by analyzing the hooked API function.

13. The method of claim 9 , wherein the detecting of the behavior of the application program in operation comprises:

detecting only monitoring-target behavior among behavior of the application program in operation based on types of monitoring-target behavior stored in a monitoring-target behavior database.

14. An apparatus for preventing an anomaly of an application program executed in a computer, comprising:

a hardware processor;

a behavior profile database that stores a behavior profile for each application program installed in the computer, wherein the behavior profile comprises, for each application, information on behavior that is permitted to be executed by the application program,

wherein the behavior comprises at least one of process generation, registry write, file write and network connection behavior,

wherein the behavior is configured to be a normal behavior of an application program in operation, and

wherein the normal behavior comprises no malicious codes, and

wherein the malicious codes comprises known malicious codes or unknown malicious code;

a behavior monitor that detects behavior of the application program in operation,

wherein the behavior monitor detects only behavior of a selected application program based on a monitoring-target program database storing a list of monitoring-target application programs, and

wherein the behavior monitor hooks and analyzes an application program interface (API) function called by the application program in operation using an API hooking module;

an anomaly detector that determines whether the detected behavior of the application program is an anomaly based on the behavior profile of the application program stored in the behavior profile database,

wherein the anomaly is configured to be detected from at least a reliable application program,

wherein the reliable application program is configured to be a program trusted by a user to be executed in the computer of the user, and

wherein the anomaly is only determined from the detected behavior from a predetermined number of selected application programs for each of the application programs; and

an anomaly stopper that stops the behavior of the application program determined as the anomaly by the anomaly detector, and

wherein the behavior is stopped in the application program before being executed in the computer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2018
From: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
To: SECUVE CO., LTD.
Reel/Frame 046481/0952 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2008
From: JANG, IN SOOK; LEE, EUN YOUNG; OH, HYUNG GEUN; LEE, DO HOON
To: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
Reel/Frame 021956/0806 →
Priority Claims (1)
KR 10-2008-0056736 · Jun 17, 2008 · national
Continuity (1)
Related Publication 20090313699A1 · Dec 17, 2009