The present invention relates to a security event sampling apparatus and method to protect characteristic information of security events, and more particularly, to an apparatus and method for sampling a security event received from a network system by using contents of the security event to protect characteristic information of the security event.
The work related to the present invention was partly supported by the IT R&D program of MIC/IITA [2005-S-022-01, Title: The Development of Smart Monitoring and Tracing System against Cyber-attack in AII-IP Network].
Recently, as sampling methods used in collecting and analyzing security events on a network, there are a systematic sampling method extracting security events at regular intervals, a random sampling method randomly extracting a security event from security events, and a stratified random sampling method dividing security events into homogeneous layers and randomly extracting from the homogeneous layers.
In association with this, there is Korean Patent Application No. 10-2005-032363 entitled An apparatus for capturing Internet Protocol (IP) packet with sampling and signature searching function, and a method thereof, which embodies sampling function and signature searching function in hardware and supports periodical sampling, random sampling, and Hash-based sampling to improve performance of sampling. However, there is still a problem of distortions of content characteristics of security events before and after sampling.
Generally, contents of security events include a source Internet protocol (IP) address, a destination IP address, a source port, a destination port, and a protocol. Distribution of information included in the contents of the security events becomes important characteristics to determine a security state of a network.
Also, cyber attacks presently performed on a network use a method of fixing both of a source port and a destination port, a method of fixing a source port and randomly varying a destination port, and a method of randomly varying both of a source port and a destination port. Accordingly, distribution of a relation between a source port and a destination port plays an important role in analyzing and visualizing a cyber attack state.
Since security events are sampled without using content characteristic information of the security events in conventional sampling methods, content characteristics of security events after sampling become different from content characteristics of security events prior to sampling. That is, when sampling without using contents of security events, information on distribution of a relation between a source port and destination port is damaged, thereby deteriorating performance of a network visualization and analysis apparatus.
An aspect of the present invention provides a security event sampling apparatus and method capable of maintaining content characteristic information of security events prior to sampling and content characteristic information after the sampling to be identical without change when sampling security events received from network systems existing on a network.
According to an aspect of the present invention, there is provided an apparatus for sampling a security event based on contents of the security event, the apparatus including: a security event accumulation module collecting security events occurring in a network system and storing the security events for each type according to contents of the security event; a security event analysis module calculating distribution of the security events for each type by analyzing the stored security events; and a security event extraction module sampling the stored security events according to the calculated distribution of the security events for each type.
The apparatus may further include a security event storage unit having a plurality of storage areas storing the security events for each type.
The apparatus may further include a sampling ratio determination module determining a sampling ratio in proportion to processing performance of a system and an average number of received security events per second for a set T amount of time.
According to another aspect of the present invention, there is provided a method of sampling a security event based on contents of the security event, the method including: collecting security events occurring in a network system; classifying and storing the security events for each type according to a relation between a source port and a destination port of contents of the collected security event; analyzing the number of the security events stored for each type and calculating a port relation distribution; and sampling the security event by using the calculated port relation distribution.
The method may further include determining a sampling ratio of the security event by comparing the set maximum number of the processed the security events for each stage and an average number of security events received per second for a T amount of time, before the calculating the port relation distribution.
Hereinafter, exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
Only, in describing operations of the exemplary embodiments in detail, when it is considered that a detailed description on related well-known functions or constitutions unnecessarily may make essential points of the present invention be unclear, the detailed description will be omitted.
In the drawings, the same reference numerals are used throughout to designate the same or similar components.
Throughout the specification, when it is describe that a part is “connected to” another part, this includes not only a case of “being directly connected to” but also a case of “being electrically connected to” interposing another device therebetween.
Also, when it is described that an apparatus “includes” an element while there is no opposite description thereof, this is not designate that the apparatus excludes other elements but designates that the apparatus may further include other elements.
The term of “module” indicates a unit for processing a certain function or operation, which can be embodied by software, hardware, or a combination of software and hardware.
Referring to
The security event accumulation module 110 collects security events generated from a network system existing in a network, classifies contents of the collected security events for each type, and stores in respective memories 101 to 104 of the event security storage unit 100.
That is, in the respective memories 101 to 104 of the security event storage unit 100, there are stored only security events corresponding to four types classified by the security event analysis module 130 according to a port relation between a source port and a destination port in the contents.
In this case, contents of a security event include a source Internet Protocol (IP) address, a source port, a destination IP address, a destination port, and a protocol. The contents are important to determine a security state of a network.
Accordingly, in the present invention, there is used port relation distribution where security events are classified for each port relation between the source port and the destination port in the contents of the security event. Also, instead of the port relation distribution, there may be used IP address relation distribution where IP addresses are classified for each country or domain.
Also, the sampling ratio determination module 120 determines a sampling ratio by comparing an average number of security events received per second for a preset T amount of time with a maximum number of processed security events, which is previously defined security event processing performance of a system for each stage. A process of determining the sampling ratio by the sampling ratio determination module 120 will be described in detail with reference to
The security event analysis module 130 calculates port relation distribution by analyzing a number of security events stored in the respective memories 101 to 104. That is, the security event analysis module 130 calculates the port relation distribution by calculating an existence ratio of the number of security events stored in the respective memories 101 to 104 with respect to a number of overall security events.
Also, the security event analysis module 130 sets and previously defines a type of a security event according to a port relation between a source port and a destination port in contents of the security event in such a way that the security event accumulation module 110 stores the security events in a plurality of storage areas in the security event storage unit 100. A process of calculating the port relation distribution by the security event analysis module 130 will be described in detail with reference to
The security event extraction module 140 extracts and samples security events by using the sampling ratio determined by the sampling ratio determination module 120 and the port relation distribution calculated by the security event analysis module 130 and transmits the sampled security events.
Referring to
The security event accumulation module 110 classifies the security events for each type according to a port relation between a source port and destination port in contents of the collected security event and stores in respective memories 101 to 104 of the security event storage unit 100.
In this case, each type of security events stored in each of the memories 101 to 104 of the security event storage unit 100 is previously defined by the security event analysis module 130. For example, based on well-known 1024th port, there are four types in the port relation between a source port and destination port.
Instead of the well-known 1024 port, a security event type may be defined by classifying IP addresses for each country or domain.
The sampling ratio determination module 120 determines a sampling ratio of the security events by comparing an average number A of received security events per second for a T amount of time set by a user with a maximum number of processing security events, which is previously defined security event processing performance of a system for each of a plurality of stages (S120).
The security event analysis module 130 calculates port relation distribution of the security event by analyzing a number of security events for each type stored in each of the memories 101 to 104 of the security event storage unit 100 (S130).
The security event extraction module 140 samples the security events stored in the security event storage unit 100 by using the sampling ratio determined by the sampling ratio determination module 120 and the port relation distribution calculated by the security event analysis module 130 (S140).
On the other hand, in the present invention, the sampling ratio may be fixed without performing S120.
To sample suitably for system performance, a maximum number of security events capable of being processed for each stage of security event processing performance of the system is defined. An initial value of the maximum number P of presently processing security events in the system is a maximum number of Pt of processing security events at a t stage corresponding to present processing performance of the system (P=R*Pt, R is a constant).
As described above, in a state where a maximum number of security events for each processing performance of the system is determined, when collecting a number of security events is finished, the sampling ratio determination module 120 calculates the average number A of the received security events per second for the T amount of time set by the user by using a number of security events received per second (S200).
After that, it is checked whether the average number A of the received security events per second is greater than the maximum number of Pt presently set in the system (P=R*Pt, R is a constant) (S210).
As a result of the checking in S210, when the average number A of the received security events per second is identical to or greater than the maximum number of processing security events (P=R*Pt, R is a constant), the sampling ratio is increased by increasing from at stage to a t+1 stage among stages defining processing performance of a system. In addition, a maximum number of processing security events in a present system is increased to a t+1 stage.
Accordingly, a sampling ratio S of the present system and a maximum number P of processing security events are adjusted to K*St+1 and K*Pt+1 (K is a constant) (S220).
On the other hand, as a result of S210, when the average number A of the received security events per second is not identical to nor greater than a present maximum number of processing security events (P=R*Pt, R is a constant), it is checked whether the average number A of the received security events per second is close to a maximum number (Pt−1) of processing security events corresponding to a t−1 stage lower than the present t stage (S230).
As a result of the checking in S230, when the average number A of the received security events is smaller than the maximum number Pt−1 of processing security events at the t−1 stage, an adjacent stage is searched by comparing each of maximum numbers Pt−2, Pt−3, . . . , and Pt−n stored in each of stages t−2, t−3, . . . , and t−n, substitute t=t−1) with the average number A of the received security events while decreasing a level of a stage (S240).
As a result of the searching in S240, when the average number A of the received security events gets close to the maximum number Pt−n of processing security events at the t−n stage, the sampling ratio S of the present system and the maximum number P of processing security events are changed into S=K*St−n, P=K*Pt−n (K is a constant) to be suitable for the close t−n stage (S250).
According to this, a suitable sampling ratio is set to processing performance of the present system.
Generally, there are shown a lot of network attacks in a type of randomly varying a source port or a destination port smaller than 1024 port and well-known or randomly varying both of the source port and destination port while performing the network attack.
Also, since most of cases when both of the source port and the destination port are smaller than the well-known 1024 port are normal network traffics, it becomes very important characteristics whether both of the source port and the destination port are well-known and smaller than 1024 port.
Accordingly, the security event analysis module 130 defines a type of a security event based on 1024 port as one of following four types.
(1) a case where both of a source port and destination port are smaller than 1024 port
(2) a case where a source port is smaller than 1024 port and a destination port is greater than 1024 port
(3) a case where a source port is greater than 1024 port and a destination port is smaller than 1024 port
(4) a case where both of a source port and destination port are greater than 1024 port
Accordingly, the security event accumulation module 110 classifies received security events according to the four types defined as described above and stores the security events in the respective memories 101 to 104 of the security event storage unit 100.
Then, the security event analysis module 130 analyzes a number of security events for each type present in the four memories 101 to 104 of the security event storage unit 100 (S300), calculates an existence ratio of the number of security events for each type with respect to a number of overall security events (S310), and calculates port relation distribution X (S320).
For example, when there are security events corresponding to four types such as (1), (2), (3), and (4) in four memories of the security event storage unit 100 as 10, 20, 40, and 30, respectively, since port relation distribution X of the security events is an existence ratio (10/100, 20/100, 40/100, and 30/100) of each of the types with respect to a number of overall security events (10+20+40+30=100), the port relation distribution X becomes {0.1, 0.2, 0.4, and 0.3}.
Accordingly, as a result of calculating the port relation distribution X, since a number of the security events of (3) type is largest, sampling is performed in such a way that a number of the security events of (3) types is largest when transmitting the security events after sampling.
The invention can also be embodied as computer readable codes on a computer readable recording medium. The computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system.
Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission through the Internet).
The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
Also, functional programs, codes, and code segments for accomplishing the present invention can be easily construed by programmers skilled in the art to which the present invention pertains.
While the present invention has been shown and described in connection with the exemplary embodiments, it will be apparent to those skilled in the art that modifications and variations can be made without departing from the spirit and scope of the invention as defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2007-0067268 | Jul 2007 | KR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/KR07/05797 | 11/19/2007 | WO | 00 | 12/29/2009 |