KR20190130766A - Method for network security and system performing the same - Google Patents
Method for network security and system performing the same Download PDFInfo
- Publication number
- KR20190130766A KR20190130766A KR1020180055292A KR20180055292A KR20190130766A KR 20190130766 A KR20190130766 A KR 20190130766A KR 1020180055292 A KR1020180055292 A KR 1020180055292A KR 20180055292 A KR20180055292 A KR 20180055292A KR 20190130766 A KR20190130766 A KR 20190130766A
- Authority
- KR
- South Korea
- Prior art keywords
- security
- packets
- packet
- network
- session
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/067—Generation of reports using time frame reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 네트워크 보안 방법 및 이를 수행하는 네트워크 보안 시스템에 관한 것이다. 보다 상세하게는 시간상의 공백이 최소화되도록 네트워크 보안 검사를 수행하며, 네트워크 보안 검사의 결과를 관리자가 용이하게 파악할 수 있도록 리포팅하며, 적응적으로 보안 정책을 조절할 수 있는 네트워크 보안 방법 및 이를 수행하는 네트워크 보안 시스템에 관한 것이다.The present invention relates to a network security method and a network security system for performing the same. More specifically, network security checks are performed to minimize time gaps, reporting of the results of network security checks can be easily understood by administrators, and network security methods that can adaptively adjust security policies and networks that perform the same. It relates to a security system.
기존의 네트워크 제어 및 관리 장비들은 TCP(transport layer protocol)/UDP(user datagram protocol) 또는 IP(Internet protocol)의 패킷 정보를 기반으로, 해당 장비들의 특정 단위 목표인 라우팅이나 QoS(Quality of Service), DDoS(Distributed Denial of Service)방지 등을 달성하기 위해 노력해 왔다. 그러나 패킷 기반의 접근 방법은 상위 애플리케이션들의 통신 관계에 따른 정보들을 무시하고, 단순히 일시적인 정보 전달 단위인 각각의 분리된 패킷에 담겨 있는 정보들에만 의존함으로써, 적게는 처리 속도의 한계성과 크게는 적용성의 한계로 인해 패킷 라우팅을 위한 라우터, DDoS 공격을 방어하는 전용 시스템, 또는 트래픽 제어를 위한 DPI(Deep Packet Inspection) 시스템 등과 같은 독립적인 목표를 위한 단일 시스템의 형태로 제공되고 있다. 이 중 DPI 시스템은 특정 애플리케이션 또는 클라이언트(예컨대, P2P 클라이언트(client))가 사용하는 잘 알려진 포트 번호와 페이로드(Payload)의 시그너쳐(Signature)를 찾아서 검출하고, 검출된 패킷을 제어하는 방법을 채택하고 있다. 이러한 시그너쳐를 검출함으로써 어떤 클라이언트 즉, 애플리케이션이 현재 네트워크에서 패킷을 생성 및/또는 전송하고 있는지를 알게 되고, 소정의 정책에 따라 적절한 네트워크 제어를 수행하게 된다.Existing network control and management devices are based on packet information of a transport layer protocol (TCP) / UDP (user datagram protocol) or an IP (Internet protocol), such as routing, quality of service (QoS), Efforts have been made to achieve Distributed Denial of Service (DDoS) prevention. However, the packet-based approach ignores the information related to the communication relationship of the upper applications and relies only on the information contained in each separate packet, which is a temporary information transmission unit, thereby reducing the processing speed and largely the applicability. Due to their limitations, they are offered in the form of a single system for independent goals such as routers for packet routing, dedicated systems to defend against DDoS attacks, or deep packet inspection (DPI) systems for traffic control. Among these, the DPI system adopts a method of finding and detecting well-known port numbers and payload signatures used by a specific application or client (eg, a P2P client), and controlling the detected packets. Doing. By detecting these signatures, it is known which client, i.e., the application, is currently generating and / or transmitting packets in the network, and performs appropriate network control in accordance with certain policies.
하지만, 종래의 DPI 시스템은 전송되는 모든 패킷의 페이로드를 검사해야 하므로 프로세싱의 오버헤드가 너무 크다는 단점이 있다. 즉, 모든 패킷의 페이로드를 검출하기 위해서는 고속 및 고가의 장비가 필요한 문제점이 있다. 더구나, 페이로드가 암호화된 패킷일 경우에는 암호화를 풀 수 있는 방법이 없으므로 시그너쳐를 검출할 수도 없을 수 있다. 또한, 암호화가 되어 있지 않더라도 반드시 시그너쳐가 찾아진다는 보장도 없고, 실제로 모든 시그너처를 찾기도 어려운 문제점이 있다.However, the conventional DPI system has a disadvantage in that the processing overhead is too large because the payload of every packet to be transmitted must be checked. In other words, high speed and expensive equipment is required to detect payloads of all packets. In addition, when the payload is an encrypted packet, the signature may not be detected because there is no way to solve the encryption. In addition, even if it is not encrypted, there is no guarantee that a signature is necessarily found, and there is a problem that it is difficult to find all signatures.
따라서 DPI 시스템의 일종인 IPS(Intrusion Prevention System)은 알려진 보안정책 중 일부만을 적용하고 있는 것이 현실이다. 즉, IPS는 네트워크를 통과하는 패킷들 중 보안정책상 허용되는 패킷은 통과시키고 허용되지 않는 패킷은 차단시키는 시스템인데, 이러한 시스템이 아무리 고사양화 및 고성능화된다고 하더라도, 최근의 네트워크 속도와 트래픽양의 비약적인 성장에 따라 모든 알려진 보안정책(보안 룰셋(rule-set))을 모두 검사한 후 검사결과 문제없는 패킷만을 통과시키는 것은 네트워크 속도의 저하를 가져올 수밖에 없다. Therefore, the reality is that the Intrusion Prevention System (IPS), a kind of DPI system, applies only some of the known security policies. In other words, IPS is a system that passes allowed packets and blocks unacceptable packets among the packets passing through the network. However, even if these systems are highly specified and high-performance, the recent growth in network speed and traffic volume is rapid. As a result, checking all known security policies (security rule-sets) and passing only the packets without any problems as a result of the test can slow down the network.
따라서 검사 시점에서 알려진 보안 룰셋 중 일부만을 적용할 수밖에 없고, 조직의 보안 담당자는 조직에 적합한 보안 정책이 설정되었는가에 대한 판단과 지속적으로 변화하는 보안 위협 트렌드의 변동에 대한 대응을 일일이 수행하는 수 밖에 없는 실정이다.Therefore, only some of the known security rulesets can be applied at the time of inspection, and the organization's security officers can only determine whether the appropriate security policy is set for the organization and respond to the continuously changing security threat trends. There is no situation.
또한 DPI 시스템의 일종인 IDS(Intrusion Detection System) 역시 실시간으로 패킷을 제어하지는 않더라도, 모든 패킷을 검사하는 것은 사실상 불가능에 가깝다. 그리고 네트워크를 통과하는 모든 패킷을 검사할 수 있다고 하더라도, 검사를 위해 패킷들을 저장하기 위해 매우 많은 패킷을 저장하여야 하는데 이는 사실상 불가능에 가깝거나 매우 높은 비용이 요구된다.In addition, even if the Intrusion Detection System (IDS), a DPI system, does not control packets in real time, it is almost impossible to inspect all packets. And although every packet can be inspected through the network, very many packets must be stored to store the packets for inspection, which is virtually impossible or very expensive.
본 발명은 이러한 문제점을 해결하고자 안출된 발명으로써, 본 발명이 이루고자 하는 기술적 과제는 실시간으로 패킷을 검사하고 검사결과 문제없는 패킷만을 선택적으로 통과시키는 네트워크 보안 시스템에 있어서, 빠른 시간 내에 현재의 네트워크 패킷들을 검사할 수 있을 뿐 아니라 과거의 네트워크 패킷들도 소급하여 빠른 시간 내에 검사할 수 있는 방법 및 시스템을 제공하는 것이다.The present invention has been made to solve such a problem, and the technical problem to be achieved by the present invention is a network security system that inspects a packet in real time and selectively passes only a packet without a problem as a result. It is possible to provide a method and a system that can not only inspect the network, but also inspect the network packets of the past in a short time.
또한 네트워크 관리자/보안 관리자가 용이하게 파악할 수 있도록 네트워크 보안 검사 결과를 제공할 수 있는 방법 및 시스템을 제공하는 것이다.It also provides a method and system that can provide network security check results for network administrators / security administrators to easily grasp.
또한 매우 효율적인 패킷 저장을 통해 모든 또는 대부분의 룰셋을 검사할 수 있고, 이를 토대로 최신의 보안 위협에 따라 자동으로 적용되는 보안 룰셋을 적응적으로 변경함으로써 위협동향의 변화에 맞추어 대응할 수 있는 기술적 사상을 제공하는 것이다.In addition, highly efficient packet storage can inspect all or most of the rulesets, and based on this, it is possible to adaptively change the security rules applied automatically according to the latest security threats and respond to the change of threat trends. To provide.
또한, 고속으로 패킷을 검사하면서 세션의 초기 선행패킷만을 검사할 수 있도록 하여 실시간으로 보안 검사가 수행될 수 있는 기술적 사상을 제공하는 것이다. In addition, it is possible to examine only the initial preceding packet of the session while inspecting the packet at a high speed to provide a technical idea that security inspection can be performed in real time.
또한, 네트워크를 기록하기 위해 패킷의 저장개수를 현저히 줄일 수 있고, 고속의 패킷 서치를 지원할 수 있는 기술적 사상을 제공하는 것이다. In addition, it is possible to significantly reduce the number of packets stored for recording the network, and to provide a technical idea capable of supporting high-speed packet search.
본 발명의 일 측면에 따르면, 네트워크 보안 시스템이, 네트워크로부터 수신하는 복수의 패킷 중 미리 설정된 적용 보안 룰셋에 따라 허용된 패킷은 통과시키고 허용되지 않는 패킷은 차단시키는 침입방지 프로세스를 수행하는 단계, 상기 네트워크 보안 시스템이, 상기 복수의 패킷들 중 적어도 일부를 저장장치에 선택적으로 저장하는 단계, 상기 네트워크 보안 시스템이, 상기 패킷 저장 프로세스를 통해 저장된 저장 패킷 중 적어도 일부에 대한 보안 검사를 수행하는 단계 및 상기 네트워크 보안 시스템이, 상기 보안 검사의 수행 결과를 포함하는 리포트 문서를 생성하는 단계를 포함하는 네트워크 보안 방법이 제공된다.According to an aspect of the present invention, the network security system performs an intrusion prevention process for passing an allowed packet and blocking an unacceptable packet according to a preset applied security ruleset among a plurality of packets received from the network. Selectively storing at least some of the plurality of packets in a storage device by a network security system, performing, by the network security system, a security check on at least some of the stored packets stored through the packet storing process; The network security system is provided, the network security method comprising the step of generating a report document containing a result of performing the security check.
일 실시예에서, 상기 보안 검사는, 소정의 주기마다 해당 주기 동안 저장된 저장 패킷을 대상으로 수행하는 주기 단위 검사, 상기 저장장치에 저장된 저장 패킷 전체 혹은 미리 지정된 기간동안 저장된 패킷에 대해 수행하는 업데이트 소급 검사, 사용자에 의해 지정된 소정의 기간 동안 저장된 저장 패킷을 대상으로 사용자가 지정한 룰들로 수행하는 사용자 지정 검사 및 상기 네트워크 보안 시스템이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 임의 기간 검사 중 적어도 하나를 포함할 수 있다.In one embodiment, the security check is a periodic check for performing a storage packet stored for a predetermined period every predetermined period, the retrospective update to perform the entire storage packet stored in the storage device or a packet stored for a predetermined period Checking, performing a user-specified rule on stored packets stored for a predetermined period of time specified by the user, and random period checking on a stored packet stored for any period determined by the network security system. It may include at least one.
일 실시예에서, 상기 네트워크 보안 시스템이, 상기 보안 검사의 수행 결과에 기초하여 상기 침입방지 프로세스에 적용될 상기 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경하는 단계를 더 포함할 수 있다.In an embodiment, the network security system may further include changing the applied security rule set to be applied to the intrusion prevention process from a first security rule set to a second security rule set based on a result of performing the security check. .
일 실시예에서, 보안 검사의 수행결과에 기초하여 상기 침입방지 프로세스에 적용될 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경하는 단계는,In one embodiment, the step of changing the applied security ruleset to be applied to the intrusion prevention process from the first security ruleset to the second security ruleset based on the result of the security check,
상기 보안 검사의 수행결과에 기초하여, 상기 제2보안 룰셋에 포함될 적어도 하나의 제2보안 룰을 결정하는 단계 및 결정된 적어도 하나의 제2보안 룰을 상기 제1보안 룰셋에 신규로 추가하거나 상기 제1보안 룰셋에 포함된 적어도 하나의 제1보안 룰과 대체하여 상기 제2보안 룰셋을 특정하는 단계를 포함할 수 있다.Determining at least one second security rule to be included in the second security rule set and adding the determined at least one second security rule to the first security rule set based on a result of performing the security check; The method may include specifying the second security rule set in place of at least one first security rule included in the first security rule set.
일 실시예에서, 결정된 적어도 하나의 제2보안 룰을 상기 제1보안 룰셋에 신규로 추가하거나 상기 제1보안 룰셋에 포함된 적어도 하나의 제1보안 룰과 대체하여 상기 제2보안 룰셋을 특정하는 단계는, 상기 제1보안 룰셋에 포함된 보안 룰들 중 사용된지 가장 오래된 순서대로 대체될 상기 적어도 하나의 제1보안 룰을 결정하는 단계를 포함할 수 있다.In one embodiment, specifying the second security rule set by adding the determined at least one second security rule to the first security rule set newly or replacing the at least one first security rule included in the first security rule set. The step may include determining the at least one first security rule to be replaced in the oldest order of the security rules included in the first security ruleset.
일 실시예에서, 상기 네트워크 보안방법은, 상기 보안 검사의 수행결과에 따라 상기 적용 보안 룰셋에 포함될 보안 룰의 개수를 변경하는 단계를 더 포함할 수 있다.In an embodiment, the network security method may further include changing the number of security rules to be included in the applied security rule set according to a result of performing the security check.
일 실시예에서, 상기 네트워크 보안 시스템이, 상기 복수의 패킷 중 적어도 일부를 저장장치에 선택적으로 저장하는 단계는, 상기 네트워크 보안 시스템이, 상기 복수의 패킷들에 기초하여 상기 복수의 패킷이 형성하는 복수의 플로우를 생성하는 단계, 상기 네트워크 보안 시스템이, 생성된 상기 복수의 플로우에 대한 정보에 기초하여 상기 복수의 플로우 중 동일한 세션을 형성하는 적어도 하나의 세션 형성 플로우를 추출하는 단계, 및 추출된 상기 세션 형성 플로우에 기초하여 상기 복수의 패킷 중 적어도 일부를 특정하는 단계를 포함할 수 있다.In an embodiment, the network security system selectively storing at least some of the plurality of packets in a storage device may include: forming, by the network security system, the plurality of packets based on the plurality of packets. Generating a plurality of flows, extracting, by the network security system, at least one session forming flow that forms the same session of the plurality of flows based on the generated information about the plurality of flows, and extracted Specifying at least a portion of the plurality of packets based on the session establishment flow.
본 발명의 다른 일 측면에 따르면, 데이터 처리장치에 설치되며 상술한 방법을 수행하기 위한 매체에 기록된 컴퓨터 프로그램이 제공된다.According to another aspect of the present invention, a computer program provided in a data processing apparatus and recorded in a medium for performing the above-described method is provided.
본 발명의 다른 일 측면에 따르면, 네트워크로부터 수신하는 복수의 패킷 중 미리 설정된 적용 보안 룰셋에 따라 허용된 패킷은 통과시키고 허용되지 않는 패킷은 차단시키는 침입방지 프로세스를 수행하는 침입방지 모듈, 상기 복수의 패킷들 중 적어도 일부를 저장장치에 선택적으로 저장하는 패킷 저장모듈, 상기 네트워크 보안 시스템이, 상기 패킷 저장 프로세스를 통해 저장된 저장 패킷 중 적어도 일부에 대한 보안 검사를 수행하는 제어모듈 및 상기 보안 검사의 수행 결과를 포함하는 리포트 문서를 생성하는 리포트 모듈을 포함하는 네트워크 보안 시스템이 제공된다.According to another aspect of the present invention, an intrusion prevention module for performing an intrusion prevention process for passing an allowed packet and blocking an unacceptable packet according to a preset applied security ruleset among a plurality of packets received from the network, the plurality of packets A packet storage module for selectively storing at least some of the packets in a storage device, a control module for performing a security check on at least some of the stored packets stored by the network security system, and performing the security check A network security system is provided that includes a report module for generating a report document containing the results.
일 실시예에서, 상기 보안 검사는, 소정의 주기마다 해당 주기 동안 저장된 저장 패킷을 대상으로 수행하는 주기 단위 검사, 상기 저장장치에 저장된 저장 패킷 전체 혹은 미리 지정된 기간동안 저장된 패킷에 대해 수행하는 업데이트 소급 검사, 사용자에 의해 지정된 소정의 기간 동안 저장된 저장 패킷을 대상으로 사용자가 지정한 룰들로 수행하는 사용자 지정 검사 및 상기 네트워크 보안 시스템이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 임의 기간 검사 중 적어도 하나를 포함할 수 있다.In one embodiment, the security check is a periodic check for performing a storage packet stored for a predetermined period every predetermined period, the retrospective update to perform the entire storage packet stored in the storage device or a packet stored for a predetermined period Checking, performing a user-specified rule on stored packets stored for a predetermined period of time specified by the user, and random period checking on a stored packet stored for any period determined by the network security system. It may include at least one.
일 실시예에서, 상기 제어모듈은, 상기 보안 검사의 수행 결과에 기초하여 상기 침입방지 프로세스에 적용될 상기 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경할 수 있다.In an embodiment, the control module may change the applied security rule set to be applied to the intrusion prevention process from a first security rule set to a second security rule set based on a result of performing the security check.
일 실시예에서, 상기 패킷 저장모듈은, 상기 복수의 패킷들에 기초하여 상기 복수의 패킷이 형성하는 복수의 플로우를 생성하고, 생성된 상기 복수의 플로우에 대한 정보에 기초하여 상기 복수의 플로우 중 동일한 세션을 형성하는 적어도 하나의 세션 형성 플로우를 추출하고, 추출된 상기 세션 형성 플로우에 기초하여 상기 복수의 패킷 중 적어도 일부를 특정할 수 있다.In one embodiment, the packet storage module generates a plurality of flows formed by the plurality of packets based on the plurality of packets, and among the plurality of flows based on information on the generated plurality of flows. At least one session forming flow forming the same session may be extracted, and at least some of the plurality of packets may be specified based on the extracted session forming flow.
본 발명의 기술적 사상에 따르면, 실시간으로 패킷을 검사하고 검사결과 문제없는 패킷만을 선택적으로 통과시키는 네트워크 보안 시스템에 있어서, 네트워크 관리자/보안 관리자가 용이하게 파악할 수 있도록 네트워크 보안 검사 결과를 제공할 수 있는 방법 및 시스템을 제공하는 것이다.According to the technical idea of the present invention, in a network security system that inspects a packet in real time and selectively passes only a packet without a problem as a result, a network security check result can be provided for the network administrator / security manager to easily grasp. It is to provide a method and system.
또한 적용되는 보안 룰셋을 적응적으로 변경하여 위협동향의 변화에 맞추어 대응할 수 있고, 이를 통해 별도의 인력 없이도 보안 운용이 효율적으로 이루어질 수 있는 효과가 있다. In addition, it is possible to respond to changes in threat trends by adaptively changing the applied security ruleset, and through this, there is an effect that security operation can be efficiently performed without a separate manpower.
또한 모든 또는 대부분의 룰셋에 대한 검사를 효과적으로 할 수 있고, 이를 토대로 최신의 보안 위협에 따라 자동으로 적용되는 보안 룰셋을 변경할 수 있는 효과가 있다. In addition, all or most of the rulesets can be inspected effectively, and based on this, the security rulesets automatically applied according to the latest security threats can be changed.
또한, 고속으로 패킷을 검사하면서 플로우 및 플로우에 기반한 세션에 대한 정보를 생성할 수 있어서, 세션의 선행패킷 일부만을 검사할 수 있도록 하여 대용량 고속 네트워크 환경에서 빠른 시간내에 보안 검사가 수행될 수 있는 효과가 있다.In addition, it is possible to generate flow and flow-based session information while inspecting packets at high speed, so that only a portion of the preceding packets of the session can be inspected, so that security inspection can be performed quickly in a large-capacity high-speed network environment. There is.
또한, 네트워크를 기록하기 위해 필요한 패킷의 저장개수를 현저히 줄일 수 있고, 세션 정보 및 플로우 정보에 기초하여 고속의 패킷 서치를 지원할 수 있는 효과가 있다.In addition, the number of packets stored for recording a network can be significantly reduced, and high speed packet search can be supported based on session information and flow information.
또한, 네트워크를 기록하기 위해 필요한 패킷의 저장개수가 줄어듦으로 인해 동일한 물리적 환경에서도 오랜 시간동안 네트워크의 기록이 가능한 효과가 있다.In addition, since the number of packets stored for recording the network is reduced, the network can be recorded for a long time even in the same physical environment.
또한 이러한 네트워크의 기록이 가능함으로써, 실시간으로 보안 검사를 수행하는데 뛰어날 뿐만 아니라, 과거에 네트워크 공격이 있었는지에 대한 검증도 가능한 효과가 있다.In addition, the recording of such a network is not only excellent for performing security checks in real time, but also for verifying whether there has been a network attack in the past.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 네트워크 보안 시스템의 개략적인 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시 예에 따른 네트워크 보안 방법을 개략적으로 설명하기 위한 도면이다.
도 3은 상기 네트워크 보안 시스템(100)에 의해 수행되는 각종 보안 검사를 설명하기 위한 도면이다.
도 4a 내지 도 4h는 리포트 문서에 포함될 수 있는 각종 보안 검사 결과의 일 예를 도시하는 도면이다.
도 5는 본 발명의 일 실시 예에 따른 네트워크 보안 방법을 위한 세션, 플로우, 및 패킷을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시 예에 따른 네트워크 보안 방법에 따른 패킷 서치를 수행하는 개념을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시 예에 따른 네트워크 보안 시스템 제공방법을 통한 복수의 패킷저장 모드를 설명하기 위한 도면이다.
도 8는 본 발명의 다른 일 실시예에 따른 네트워크 보안 방법에서 특정 세션 내의 일정 크기의 최초 선행 페이로드를 저장하는 방법에 대하여 설명하기 위한 도면이다.
도 9는 본 발명의 다른 일 실시예에 따른 네트워크 검사 방법에서 세션의 중간부터 일정한 크기 혹은 개수의 패킷을 저장하는 방법에 대하여 설명하기 위한 도면이다.
도 10는 본 발명의 일 실시 예에 따라 과거의 네트워크 공격을 효과적으로 검사할 수 있는 개념을 설명하기 위한 도면이다.BRIEF DESCRIPTION OF THE DRAWINGS In order to better understand the drawings cited in the detailed description of the invention, a brief description of each drawing is provided.
BRIEF DESCRIPTION OF THE DRAWINGS In order to better understand the drawings cited in the detailed description of the invention, a brief description of each drawing is provided.
1 is a view showing a schematic configuration of a network security system according to an embodiment of the present invention.
2 is a diagram schematically illustrating a network security method according to an embodiment of the present invention.
3 is a diagram for describing various security checks performed by the
4A to 4H illustrate examples of various security check results that may be included in a report document.
5 is a diagram illustrating a session, a flow, and a packet for a network security method according to an embodiment of the present invention.
6 is a diagram illustrating a concept of performing a packet search according to a network security method according to an embodiment of the present invention.
7 is a diagram illustrating a plurality of packet storage modes through a network security system providing method according to an embodiment of the present invention.
FIG. 8 is a diagram for describing a method of storing an initial leading payload of a predetermined size in a specific session in a network security method according to another embodiment of the present invention.
FIG. 9 is a diagram illustrating a method of storing a predetermined size or number of packets from the middle of a session in a network checking method according to another embodiment of the present invention.
FIG. 10 is a diagram for describing a concept of effectively checking a past network attack according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all transformations, equivalents, and substitutes included in the spirit and scope of the present invention. In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, terms such as "comprise" or "have" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described in the specification, one or more other It is to be understood that the present invention does not exclude the possibility of adding or presenting features or numbers, steps, operations, components, components, or combinations thereof.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.In addition, in the present specification, when one component 'transmits' data to another component, the component may directly transmit the data to the other component, or through at least one other component. Means that the data may be transmitted to the other component. On the contrary, when one component 'directly transmits' data to another component, it means that the data is transmitted from the component to the other component without passing through the other component.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.
도 1은 본 발명의 일 실시 예에 따른 네트워크 보안 시스템의 개략적인 구성을 나타내는 도면이다. 상기 네트워크 보안 시스템은 본 발명의 기술적 사상에 따른 네트워크 보안 방법을 수행할 수 있다.1 is a view showing a schematic configuration of a network security system according to an embodiment of the present invention. The network security system may perform a network security method according to the spirit of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 네트워크 보안 시스템(100)은 침입방지 모듈(110), 패킷저장 모듈(120), 제어모듈(130), 및 리포트 모듈(170)을 포함한다. 상기 네트워크 보안 시스템(100)은 저장장치(140) 및/또는 패킷서치 모듈(150)을 더 포함할 수 있다.Referring to FIG. 1, the
다른 실시 예에 의하면, 상기 네트워크 보안 시스템(100)은 패킷저장 모듈(120), 제어모듈(130), 리포트 모듈(170)을 포함할 수 있다. 이러한 경우는 기존에 이미 구축된 IPS 시스템(예컨대, 침입방지 모듈(110))에 본 발명의 기술적 사상을 적용하기 위해 네트워크 보안 시스템(100)이 적용되는 경우일 수 있다.According to another embodiment, the
일 실시예에서, 상기 네트워크 보안 시스템(100)은 여러 대의 네트워크 단위를 연결하여 네트워크를 구성하는 통신 장치일수 있다. 상기 네트워크 보안 시스템(100)은 허브, 액세스 포인트, 공유기 등일 수 있다. 또는 상기 네트워크 보안 시스템(100)은 이러한 통신 장치(허브, 액세스 포인트, 공유기 등)와 연결되어 있는 시스템일 수 있다.In one embodiment, the
상기 네트워크 보안 시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 네트워크 보안 시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 네트워크 보안 시스템(100)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다.The
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In the present specification, the module may mean a functional and structural combination of hardware for performing the technical idea of the present invention and software for driving the hardware. For example, the module may mean a logical unit of a predetermined code and a hardware resource for performing the predetermined code, and means a physically connected code or does not necessarily mean one kind of hardware. It can be easily inferred by the average expert in the art.
상기 저장장치(140)는 본 발명의 기술적 사상을 구현하는데 필요한 데이터 및/또는 정보를 저장하는 장치일 수 있다. 일 실시예에서 상기 저장장치(140)는 데이터베이스, 비휘발성 스토리지(예를 들면, HDD, SDD 등)일 수 있다.The
한편, 본 발명의 기술적 사상을 구현하기 위해서는 패킷추출 모듈(160)이 더 구비될 수 있다. 상기 패킷추출 모듈(160)은 네트워크로부터 복수의 패킷들을 수신할 수 있다. 상기 패킷추출 모듈(160)은 네트워크상의 소정의 위치에 설치되어 네트워크를 통해 이동하는 패킷들을 수집하여, 상기 패킷저장 모듈(120)로 분배할 수 있다. 일 예에 의하면 상기 패킷추출 모듈(160)은 네트워크로부터 패킷들을 태핑(tapping)하는 장비를 포함하여 구현될 수 있다. Meanwhile, in order to implement the technical idea of the present invention, the
상기 패킷추출 모듈(160)은 예컨대, 소정의 로컬 에어리어 네트워크(LAN) 상에 존재하는 게이트웨이(gateway)의 전단 및/또는 후단에 위치하여 본 발명의 기술적 사상에 따라 네트워크를 검사할 수 있다. 그러면 상기 네트워크 보안 시스템(100)은 검사결과를 이용하여 따라 네트워크/트래픽을 컨트롤할 수 있다. 네트워크/트래픽을 컨트롤 한다 함은 소정의 세션, 플로우 및/또는 패킷별로 대역폭, 전송 속도를 조절하거나 전송을 차단하는 등의 인위적 행위를 의미할 수 있다. 상기 패킷추출 모듈(160)은 예컨대 소정의 NIC(Network Interface Card)로 구현될 수 있지만, 이에 한정되는 것은 아니다.The
패킷추출 모듈(160)은 수신된 패킷을 상기 패킷저장 모듈(120)로 전송할 수 있다. The
상기 침입방지 모듈(110)은 적용 보안 룰셋에 따라 실시간으로 패킷검사를 수행하고, 검사결과에 따라 선택적으로 패킷을 통과시킬 수 있다. 즉, 패킷검사결과 문제가 없는 패킷만을 선택적으로 통과시킬 수 있다. The
상기 적용 보안 룰셋은 검사시점에서 알려진 즉, 상기 네트워크 보안 시스템(100)에 저장되어서 적용 가능한 보안 룰셋의 전체 집합 즉, 풀 룰셋(full rule-set) 중 일부일 수 있다. 보안 룰셋은 복수의 보안 룰을 포함하는 의미일 수 있다. 또한 각각의 보안 룰은 보안 검사의 기준이 되는 규칙을 포함할 수 있다. 예컨대, 패킷에 특정 패턴의 비트 스트림이 존재하거나, 패킷의 어떤 위치에 어떤 값 또는 텍스트가 존재하거나, 어떤 포트(port)로 수신되는 패킷이거나, 및/또는 패킷의 출발지 또는 목적지가 어떠한 값이거나 등의 규칙들이 적어도 하나 조합되어서 보안 룰을 형성할 수 있다. 이러한 보안 룰은 신규 보안 위협이 발생할 때마다 상기 네트워크 보안 시스템(100)에 해당 신규 보안 위협의 종류나 특징 그리고 이에 대응되는 보안 룰이 업데이트될 수 있음은 물론이다.The applied security ruleset may be a part of a full set of security rulesets known at the time of inspection, that is, stored in the
한편, 풀 룰셋은 통상 2만 여개가 넘는 보안 룰을 포함하는 것으로 알려져 있고, 신규 보안 위협이 발생할 때마다 그 수는 증가할 수밖에 없다. 그리고 실제로 아무리 고성능의 침입방지 모듈(110) 또는 IPS라 하더라도 풀 룰셋을 모두 실시간으로 검사하는 것은 거의 불가능에 가깝다. 현실적으로 정도의 차이는 있지만 적용 보안 룰셋은 풀 룰셋의 10분의 1 수준으로 설정되는 것이 일반적이다. 즉, 종래의 네트워크 보안 시스템들은 이미 알려진 풀 룰셋 중 일부분만 적용 보안 룰셋으로 적용하여 실시간으로 검사를 수행하고, 나머지 보안 룰셋들은 검사를 수행하지 않게 된다. On the other hand, a full rule set is generally known to include more than 20,000 security rules, the number is bound to increase each time a new security threat occurs. And no matter how high performance
따라서 적용 보안 룰셋의 나머지 보안 룰셋을 본 명세서에서는 운용상의 보안공백으로 표현하기로 한다. 운용상의 보안공백은 어쩔 수 없이 발생하는 보안상의 헛점이지만 이러한 운용상의 보안공백을 최소화하기 위한 노력이 필요하였다. 이러한 노력은 예컨대, 보안 전문 인력이 해당 시점에서 보안 위협의 트렌드 등을 습득하고, 일정 주기 별로 적용 보안 룰셋을 변경하는 방식이 존재해왔다. 하지만 보안 전문 인력을 고용하여야 하는 것도 큰 비용의 손실일 뿐만 아니라, 아무리 뛰어난 보안 전문 인력이라 하더라도 보안의 대상이 되는 네트워크에 실제로 어떠한 보안위협들이 존재하였는지를 정확히 알고, 그에 따라 적용 보안 룰셋을 최적화하는 것은 실질적으로 불가능하였다. 왜냐하면 IPS를 통해서 실시간으로 검사를 수행한 보안 룰셋 이외에는 실제 어떠한 보안 위협이 존재하였는지를 알기가 어렵고, 이를 알기 위해서는 모든 패킷들을 별도로 저장한 후 저장된 패킷들에 대해 실제 일일이 풀 룰셋 또는 풀 룰셋 중 대부분의 보안 룰셋으로 검사를 수행해보아야만 정확히 해당 네트워크에서 어떤 보안 위협이 존재하였는지를 알 수 있기 때문이다. 하지만 전술한 바와 같이 네트워크를 통과하는 모든 패킷들을 저장하는 것 자체가 매우 고비용이고, 이러한 모든 패킷들을 다 저장한 후 풀 룰셋으로 패킷검사를 수행한다고 하더라도 매우 오랜 시간이 걸릴 수 밖에 없었다. 그리고 오랜 시간 후에 비로소 검사결과를 확인하고, 적용 보안 룰셋을 변경하는 것은 비효율적일 수 있다.Therefore, the rest of the security ruleset of the applied security ruleset will be expressed as a security white space in the present specification. Operational security gaps are inevitable security gaps, but efforts have been made to minimize such operational security gaps. For example, there has been a way for security experts to acquire trends of security threats at that time, and to change applied security rulesets at regular intervals. However, hiring security professionals is not only a big cost loss, but knowing exactly what threats actually exist in the network to be secured, no matter how good security experts are, and optimizing the applied security ruleset accordingly It was practically impossible. Because it is difficult to know what kind of security threat existed except the security ruleset, which is inspected in real time through IPS. This can be done only by checking the ruleset to see exactly what security threats exist on the network. However, as described above, storing all the packets passing through the network is very expensive, and even if all the packets are stored and the packet inspection is performed with the full ruleset, it takes a very long time. After a long time, it may be inefficient to check the test results and change the applied security ruleset.
이러한 문제점은 저장하는 패킷을 대폭으로 줄일 수 있으면서도, 실제로 모든 패킷을 저장해서 검사하는 것과 대동소이한 검사결과를 가질 수 있는 기술적 사상에 의해 해결될 수 있다. 본 발명은 이러한 기술적 사상을 제공함으로써 저장된 패킷의 양을 대폭 줄일 수 있으면서도 양질의 검사결과를 얻을 수 있고, 이를 통해 저장된 패킷에 대해 풀 룰셋 또는 운용상의 보안공백에 상응하는 보안 룰셋(예컨대, 풀 룰셋 중 적용 보안 룰셋을 제외한 보안 룰셋)으로 검사를 수행하여 빠른 검사결과를 획득할 수 있고, 이를 통해 적용 보안 룰셋을 적응적으로 변경할 수 있도록 함으로써 네트워크의 보안성을 효과적으로 높일 수 있도록 한다. 이러한 기술적 사상은 특정 세션의 초기 일부의 패킷 혹은 초기 일부의 페이로드만을 매우 빠른 시간에 선별할 수 있는 기술적 사상 및 선별된 세션의 초기 일부의 패킷 혹은 페이로드를 선택적으로 저장하는 기술적 사상에 의해 달성될 수 있다. 이러한 기술적 사상에 대해서는 후술하도록 한다.This problem can be solved by a technical idea that can significantly reduce the number of packets to be stored, but can actually have inspection results similar to those of storing and inspecting all packets. By providing the technical idea, the present invention can significantly reduce the amount of stored packets and obtain high quality inspection results. Through this, security rulesets (e.g., full rulesets) corresponding to the full ruleset or the operational security space for the stored packets can be obtained. Among the security rulesets except the applied security rulesets, the inspection can be performed to obtain a quick scan result, and through this, the security rules of the network can be effectively increased by allowing the adaptive security rulesets to be adaptively changed. This technical concept is achieved by the technical idea of selecting only the initial part of the packet or the payload of the initial part of a particular session at a very fast time and the technical idea of selectively storing the packet or payload of the initial part of the selected session. Can be. This technical idea will be described later.
한편, 신규 보안 위협이 발생하는 경우에는 아무리 적용 보안 룰셋을 최적화하더라도 이를 방지할 수는 없다. 즉, 새로운 공격이 발생하면 시간적으로 일정 시간 후에 상기 새로운 공격에 대응되는 보안 룰이 생성될 수 밖에 없다. 이러한 신규 보안 위협을 본 명세서에서는 '시간상의 보안 공백'으로 정의하기로 한다. 그리고 이러한 시간상의 보안 공백을 최소화하기 위한 기술적 사상 역시 전술한 바와 같이 효율적으로 선별된 패킷만을 저장하고, 저장된 패킷들을 고속으로 탐색할 수 있음으로 가능해질 수 있다. 이러한 기술적 사상 역시 후술하도록 한다.On the other hand, if a new security threat occurs, no matter how optimized the security ruleset applied, it cannot be prevented. That is, when a new attack occurs, a security rule corresponding to the new attack may be generated after a certain time. Such new security threats will be defined herein as 'security gap in time'. In addition, the technical idea for minimizing such security gap in time may also be enabled by storing only the packets efficiently selected as described above and searching the stored packets at high speed. This technical idea will also be described later.
상기 패킷저장 모듈(120)은 상기 패킷추출 모듈(160)로부터 수신된 복수의 패킷들 중에서 적어도 일부를 선택적으로 추출할 수 있다. The
그러면 상기 제어모듈(130)은 패킷저장 모듈(120)에 의해 저장된 저장패킷에 대해 보안 검사를 수행할 수 있다. 저장패킷에 대한 패킷검사는 적용 보안 룰셋 이외의 보안 룰을 적어도 하나 검사 룰로써 설정하여 패킷검사를 수행하는 과정일 수 있다. 물론, 구현 예에 따라 패킷검사 시점의 풀 룰셋에 대해 패킷검사를 수행할 수도 있음은 물론이다. 또한, 적용 보안 룰셋을 저장패킷에 대해 검사할 때에도 적용할 수도 있다. 또는 풀 룰셋 중 적용 보안 룰셋을 제외한 나머지 보안 룰들에 대해서만 패킷검사를 수행할 수도 있다.Then, the
상기 제어모듈(130)에 의해 수행되는 보안 검사는 소정의 주기마다 해당 주기 동안 저장된 저장 패킷을 대상으로 수행하는 주기 단위 검사, 상기 저장장치(140)에 저장된 저장 패킷 전체 혹은 미리 지정된 기간동안 저장된 패킷에 대해 수행하는 업데이트 소급 검사, 사용자에 의해 지정된 소정의 기간 동안 사용자가 지정한 룰들로 저장된 저장 패킷을 대상으로 수행하는 사용자 지정 검사 및 상기 네트워크 보안 시스템이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 임의 기간 검사 중 적어도 하나를 포함할 수 있다.The security check performed by the
이러한 저장패킷에 대한 패킷검사는 상기 침입방지 모듈(110)이 수행하는 패킷검사의 시점보다 일정 시간 후일 수 있다. 따라서 침입방지 모듈(110)이 수행하는 패킷검사의 시점에서의 풀 룰셋과 상기 제어모듈(130)이 저장패킷에 대해 수행하는 패킷검사 시점에서의 풀 룰셋은 다를 수도 있다. 따라서 실시 예에 따라 침입방지 모듈(110)이 수행하는 패킷검사 시점에서의 풀 룰셋에 비해 저장패킷에 대해 수행하는 패킷검사시점에서 새로운 보안 룰이 풀 룰셋에 추가된 경우에는, 상기 새로운 보안 룰은 반드시 저장패킷에 대해서는 검사 룰로써 설정될 수 있도록 상기 제어모듈(130)은 적용 보안 룰셋을 변경할 수도 있다.Packet inspection for such a storage packet may be a certain time later than the time point of the packet inspection performed by the
결국, 상기 제어모듈(130)은 저장패킷에 대해 적용 보안 룰셋에 포함되지 않은 적어도 하나의 보안 룰을 검사 룰로 설정하여 패킷검사를 수행하고, 패킷검사의 수행결과에 따라 현재 적용되고 있는 적용 보안 룰셋을 변경할 수 있다. 이하에서는 설명의 편의를 위해, 상기 제어모듈(130)은 저장패킷에 대해 풀 룰셋으로 검사를 수행하는 경우를 예시적으로 설명하도록 한다.As a result, the
상기 제어모듈(130)이 적용 보안 룰셋을 변경한다고 함은, 변경 전의 적용 보안 룰셋에 포함된 보안 룰과 변경 후의 적용 보안 룰셋에 포함되는 보안 룰 중 적어도 하나는 다름을 의미할 수 있다. 따라서 변경전의 적용 보안 룰셋에 포함된 보안 룰이 변경 후의 적용 보안 룰셋에도 여전히 포함될 수 있음은 물론이다.The change of the applied security rule set by the
또한 상기 제어모듈(130)이 적용 보안 룰셋을 변경한다고 함은, 적용 보안 룰셋에 포함된 보안 룰의 개수는 유지한 채, 적용 보안 룰셋에 포함된 보안 룰을 대체하는 과정일 수도 있다. In addition, changing the applied security rule set by the
하지만 구현 예에 따라서는 상기 제어모듈(130)은 적용 보안 룰셋에 포함될 보안 룰의 개수 역시 변경할 수도 있다. 예컨대, 상기 제어모듈(130)은 일정 주기별로 저장패킷에 대한 패킷검사를 수행할 수 있고, 그 결과 보안 위협이 기존에 비해 증대되고 있다고 판단한 경우에는 보안 룰의 개수를 증가시킬 수도 있다. 물론 이와 반대로 저장패킷에 대한 패킷검사결과에 따라 적용 보안 룰셋에 포함될 보안 룰의 개수를 줄일 수도 있다.However, according to the implementation example, the
상기 제어모듈(130)은 변경된 적용 보안 룰셋에 대해 상기 침입방지 모듈(110)이 검사 룰로써 패킷검사를 수행할 수 있도록 할 수 있다. 예컨대, 상기 침입방지 모듈(110)이 자체적으로 적용 보안 룰셋을 저장하는 경우에는 변경된 적용 보안 룰셋에 대한 정보를 상기 침입방지 모듈(110)로 전송할 수도 있다. 또는 상기 제어모듈(130)은 소정의 저장위치에 변경된 적용 보안 룰셋에 대한 정보를 저장하고, 상기 침입방지 모듈(110)은 상기 저장위치에 저장된 상기 적용 보안 룰셋을 검사 룰로 설정하여 패킷검사를 수행하도록 할 수도 있다. 기타 다양한 방식으로 상기 제어모듈(130)은 적용 보안 룰셋을 변경할 수 있다. The
상기 저장장치 (140)는 본 발명의 기술적 사상을 구현하기 위해 필요한 정보들이 저장되는 정보의 저장수단을 의미할 수 있다. 상기 저장장치 (140)에는 전술한 바와 같이 패킷저장 모듈(120)에 의해 저장된 저장패킷에 대한 정보, 후술할 바와 같은 플로우 정보, 세션 정보 등이 저장될 수 있음은 물론이다. 또한 적용 보안 룰셋에 대한 정보가 저장될 수도 있다. 기타 본 발명의 기술적 사상을 구현하기 위해 필요한 정보들이 저장되는 저장수단으로 상기 저장장치 (140)가 구현되면 족하다. 또한 상기 저장장치 (140)는 하나의 물리적 저장장치로만 구현될 필요는 없고, 복수의 물리적 저장장치로 구현될 수도 있다. 또한, 구현 예에 따라 상기 저장장치 (140)는 상기 네트워크 보안 시스템(100)과는 분리된 물리적 장치로 구현될 수도 있고, 상기 네트워크 보안 시스템(100)은 네트워크를 통해 상기 저장장치 (140)에 억세스할 수도 있다.The
상기 패킷서치 모듈(150)은 저장장치 (140)에 저장된 패킷을 서치하는 기능을 수행할 수 있다. 이때 후술할 바와 같이 고속의 다운드릴 서치가 가능하도록 할 수 있다. 그리고 이러한 고속의 패킷서치를 통해 시간상의 보안 공백을 줄일 수 있는 효과가 있다.The
한편, 상기 리포트 모듈(170)은 상기 제어모듈(130)에 의해 수행된 보안 검사의 수행 결과를 포함하는 리포트 문서를 생성할 수 있다. 리포트 문서는 전자적인 형태의 문서일 수 있다. 전자적인 형태의 문서라고 함은 컴퓨터에 의해 인식될 수 있는 기록 매체에 저장되거나 네트워크를 통해 전송 가능하거나 컴퓨터에 의해 인식될 수 있는 형태의 문서를 의미할 수 있다. 예를 들면, 리포트 문서는 웹 문서, 워드프로세서에 의해 인식될 수 있는 형태의 문서일 수 있다.Meanwhile, the
도 2는 본 발명의 일 실시 예에 따른 네트워크 보안 방법을 개략적으로 설명하기 위한 도면이다. 2 is a diagram schematically illustrating a network security method according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 실시 예에 따른 네트워크 보안방법을 위해서는 상기 네트워크 보안 시스템(100)에 의해 입력 트래픽의 효과적인 선택적 저장이 이루어질 수 있다(S100).Referring to FIG. 2, for the network security method according to an embodiment of the present invention, effective selective storage of input traffic may be performed by the network security system 100 (S100).
이러한 선택적 저장은 세션을 탐지하고, 세션의 초기 일부 패킷 혹은 초기 일부 페이로드만을 추출하는 기술적 사상이 이용될 수 있다. 또한 후술할 바와 같이 세션의 초기 일부의 패킷 혹은 페이로드를 고속으로 추출하기 위해 플로우 정보를 이용하는 기술적 사상이 제공될 수 있다.This selective storage may be used to detect the session, and the technical idea of extracting only the initial partial packet or the initial partial payload of the session. In addition, as described below, a technical idea of using flow information to extract packets or payloads of an initial part of a session at high speed may be provided.
이러한 입력 트래픽의 선택적 저장은 상기 패킷저장 모듈(120)에 의해 수행될 수 있다. Selective storage of such input traffic may be performed by the
한편, 상기 네트워크 보안 시스템(100)에 의해 실시간으로 침입방지 프로세스가 이루어지고 있을 수 있다(S100-1). 이러한 침입방지는 전술한 바와 같이 적용 보안 룰셋에 의해 실시간 패킷검사를 통해 선택적인 패킷의 통과를 수행함으로써 이루어질 수 있다. 상기 네트워크 보안 시스템(100)은 풀 룰셋 중 소정의 방식으로 선택한 일부의 보안 룰셋을 상기 침입방지 프로세스에서의 적용 보안 룰셋으로 선택하고, 이를 상기 침입방지 프로세스의 검사 룰로 적용하고 있을 수 있다. 이러한 초기의 적용 보안 룰셋은 임의로 또는 소정의 보안 담당자에 의해 이루어질 수 있다.On the other hand, the intrusion prevention process may be made in real time by the network security system 100 (S100-1). Such intrusion prevention can be achieved by performing selective packet passing through real-time packet inspection by the applied security ruleset as described above. The
한편, 상기 네트워크 보안 시스템(100)은 저장패킷에 대해 패킷검사를 수행할 수 있다(S110). 저장패킷에 대한 패킷검사는 전술한 바와 같이 풀 룰셋이 적용될 수 있지만, 이에 국한되지는 않는다. 적어도 현재 침입방지 프로세스에 적용되고 있는 적용 보안 룰셋에는 포함되지 않은 적어도 하나의 보안 룰이 상기 저장패킷에 대한 보안 검사에서 검사 룰로 이용될 수 있다.On the other hand, the
상기 네트워크 보안 시스템(100)에 의해 수행되는 보안 검사는 i) 주기 단위 검사, ii) 업데이트 소급 검사, iii) 사용자 지정 검사, iv) 임의 기간 검사 중 적어도 하나를 포함할 수 있다.The security check performed by the
도 3은 상기 네트워크 보안 시스템(100)에 의해 수행되는 각종 보안 검사를 설명하기 위한 도면이다.3 is a diagram for describing various security checks performed by the
i) 주기 단위 검사는 일정한 주기마다 실시되는 보안 검사로서, 해당 주기 동안 저장된 저장 패킷을 대상으로 수행되는 검사일 수 있다. 도 3의 예에서와 같이, 주기 단위 검사는 일 단위로(즉, 매일) 수행될 수 있다. 이 외에도 주기 단위 검사는 주 단위, 월 단위, 분기 단위로 수행될 수 있으나 이에 한정되는 것은 아니다. 주기 단위 검사는 미리 정해진 임의의 기간을 주기로 수행될 수 있다.i) The periodic check is a security check performed at a certain cycle, and may be a check performed on a stored packet stored during the cycle. As in the example of FIG. 3, the periodic checks may be performed on a daily basis (ie, daily). In addition, the periodic inspection may be performed on a weekly, monthly or quarterly basis, but is not limited thereto. The periodic check may be performed at a predetermined predetermined period.
주기가 빠를수록 더욱 즉각적으로 운용상의 보안공백에 대한 대응이 가능해질 수 있다. 그리고 이러한 주기를 단축하기 위해서는 저장패킷의 양이 적으면서도, 패킷검사의 품질이 높아질 수 있도록 효율적인 패킷 저장이 이루어져야 할 수 있다.The faster the cycle, the more immediately it becomes possible to respond to operational security whitespace. In order to shorten the cycle, it is necessary to efficiently store the packets so that the quality of packet inspection can be improved while the amount of the storage packets is small.
ii) 업데이트 소급 검사는 검사 시점 전까지 수집되어 상기 저장장치 (140)에 저장된 모든 저장 패킷을 대상으로 하거나 미리 지정된 기간동안 저장된 모든 패킷에 대해 수행되는 검사일 수 있다. 도 3의 예에서, 패킷이 2017-03-18부터 수집되었고, 검사 시점이 2017-04-03인 경우, 2017-03-18부터 2017-04-03까지의 모든 저장 패킷에 대하여 업데이트 소급 검사가 수행될 수 있다.ii) The update retrospective check may be a check performed on all the storage packets collected before the inspection point and stored in the
iii) 사용자 지정 감사는 사용자가 지정한 기간 동안 저장된 저장 패킷을 대상으로 사용자가 선택한 룰들을 이용하여 수행하는 검사일 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 사용자가 2017-03-20 06:00부터 2017-03-30 12:35까지를 검사 기간으로 지정한 경우, 상기 네트워크 보안 시스탬(100)은 해당 기간 동안 수집된 저장 패킷을 대상으로 보안 검사를 수행할 수 있다.iii) Custom auditing may be a check performed by user-selected rules on stored packets stored for a user-specified period of time. For example, as illustrated in FIG. 3, when the user designates a scan period from 2017-03-20 06:00 to 2017-03-30 12:35, the
iv) 임의 기간 검사는 상기 네트워크 보안 시스템(100)이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 보안 검사일 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 상기 네트워크 보안 시스템(100)은 임의의 기간 2017-03-28 ~ 2017-04-02의 기간을 선택하여 해당 기간 동안 수집된 저장 패킷을 대상으로 보안 검사를 수행할 수 있다.iv) The random duration check may be a security check performed on a stored packet stored for a random duration determined by the
한편, 상기 네트워크 보안 시스템(100)은 검사결과에 따라 적용 보안 룰셋을 변경할 수 있다(S120). 적용 보안 룰셋의 변경은 예컨대, 현재 설정된 적용 보안 룰셋으로는 탐지되지 않는 패킷이 저장패킷에 대한 패킷검사 프로세스(S110)에서 탐지된 경우, 해당 패킷을 탐지할 수 있는 보안 룰이 포함되도록 하는 변경일 수 있다. On the other hand, the
이러한 보안 룰의 변경을 위한 일 예는 LRU(Least Recently Used) 방식일 수도 있다. 즉, 가장 오랫동안 사용되지 않은(즉, 필터링할 패킷을 탐지하는데 이용되지 않은) 보안 룰을 적용 보안 룰셋에서 제외하는 대신 새로운 보안 룰이 적용 보안 룰셋에 포함되도록 하는 방식일 수 있다. 하지만 이러한 구체적인 적용 보안 룰셋의 변경 방식은 다양할 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. One example for changing the security rule may be a Least Recently Used (LRU) method. That is, instead of excluding the security rule that has not been used for the longest time (ie, not used to detect a packet to be filtered) from the applied security rule set, the new security rule may be included in the applied security rule set. However, it can be easily inferred by the average expert in the technical field of the present invention that the method of changing the specific applied security ruleset may vary.
한편, 상기 네트워크 보안 시스템(100)은 적용 보안 룰셋에 포함될 보안 룰의 개수 및/또는 저장패킷에 대한 패킷검사 주기를 적응적으로 조절할 수도 있다. 이러한 조절은 저장패킷에 대한 패킷검사 프로세스(S110)의 결과에 따라 보안 위협의 강도(예컨대, 탐지된 공격 또는 패킷의 수 등)에 따라 적응적으로 조절될 수 있다. Meanwhile, the
예컨대, 적용 보안 룰셋에 포함된 보안 룰의 개수의 조절은 네트워크의 성능을 심각하게 저하시키지 않는 범위내에서 수행되는 것이 바람직할 수 있다. 또한 저장패킷에 대한 패킷검사 주기의 조절은 보안 위협의 강도가 강하다고 판단된 경우에는 짧게 조절되고, 반대의 경우에는 길게 조절될 수 있다.For example, it may be desirable to adjust the number of security rules included in the applied security ruleset within a range that does not seriously degrade the performance of the network. In addition, the adjustment of the packet inspection period for the storage packet can be adjusted shortly when it is determined that the strength of the security threat is strong and vice versa.
적용 보안 룰셋의 변경이 이루어지면, 상기 침입방지 프로세스는 변경된 적용 보안 룰셋에 따라 이루어질 수 있다.If a change is made to the applied security ruleset, the intrusion prevention process may be made according to the changed applied security ruleset.
결국 본 발명의 기술적 사상에 의하면, 운용상의 보안공백을 최소화하면서 실제 네트워크에서 이루어진 보안 위협에 따라 적응적 보안정책이 이루어질 수 있는 효과를 제공할 수 있다. After all, according to the technical idea of the present invention, it is possible to provide the effect that the adaptive security policy can be made according to the security threats made in the actual network while minimizing the operational security gap.
한편, 상기 네트워크 보안 시스템(100)은 보안 검사 결과를 포함하는 리포트 문서를 생성할 수 있다(S130).Meanwhile, the
상기 네트워크 보안 시스템(100)은 리포트 문서를 통해 보안 관리자에게 보안 관련 정보를 용이하게 전달할 수 있다. 도 4a 내지 도 4h는 리포트 문서에 포함될 수 있는 각종 보안 검사 결과의 일 예를 도시하는 도면이다.The
도 4a에 도시된 바와 같이, 리포트 문서는 시간대별 보안 위협의 발생횟수를 그래프의 형태로 포함할 수 있다. 또는 보안 위협의 발생 횟수를 표의 형태로 표시할 수도 있다. 또한 리포트 문서는 도 4b에 도시된 바와 같이, 위험도별로 발생 건수가 건수가 많은 보안 위협을 나타내는 자료를 포함할 수도 있다. 또한 도 4c에 도시된 바와 같이, 리포트 문서는 보안 경고가 많이 발생한 내/외부 IP의 리스트를 포함할 수도 있다. 또한 도 4d에 도시된 바와 같이, 리포트 문서는 많은 종류의 보안 경고가 발생한 내/외부 IP 리스트를 포함할 수도 있다. 또한 리포트 문서는 도 4e에 도시된 바와 같이, 블랙 리스트 IP 군에 포함되고 의심스러운 데이터베이스로의 접근 현황을 나타내는 자료를 포함할 수도 있다. 또한 도 4f에 도시된 바와 같이, 리포트 문서는 전 세계적으로 공유되고 있는 보안 취약점을 이용한 위협(CVE; Common Vulnerabilities & Exposure) 관련 보안 위협에 관한 자료를 포함할 수도 있다. 또한 도 4g에 도시된 바와 같이, 리포트 문서는 외부 CNC 서버에 접속한 내부 IP 자료를 포함할 수도 있다. 또한 도 4h에 도시된 바와 같이, 리포트 문서는 블랙 리스트에 의한 추가 위협 리스트를 포함할 수도 있다.As shown in FIG. 4A, the report document may include the occurrence frequency of the time-phase security threat in the form of a graph. Alternatively, the number of occurrences of security threats may be displayed in the form of a table. In addition, as shown in FIG. 4B, the report document may include data representing security threats having a high number of occurrences by risk. Also, as shown in FIG. 4C, the report document may include a list of internal / external IPs in which a lot of security alerts are generated. In addition, as shown in FIG. 4D, the report document may include an internal / external IP list in which many kinds of security alerts are generated. In addition, the report document may include data indicating the status of access to the suspicious database included in the blacklist IP group, as shown in FIG. 4E. In addition, as illustrated in FIG. 4F, the report document may include data on a security threat related to a common vulnerabilities & exposure (CVE) that is shared worldwide. In addition, as shown in FIG. 4G, the report document may include internal IP data connected to an external CNC server. In addition, as shown in FIG. 4H, the report document may include an additional threat list by the black list.
한편, 패킷저장 모듈(120)에 의해 선택적으로 패킷을 저장하는 개념에 대해서 설명하면 다음과 같다. 본 발명의 기술적 사상에 의하면, 상기 패킷저장 모듈(120)은 고속으로 세션들 각각의 선행 패킷 N개 혹은 선행 페이로드 K바이트만을 추출하여 저장할 수 있다. 이를 위해 플로우를 이용하는 기술적 사상을 제공한다.Meanwhile, the concept of selectively storing packets by the
상기 패킷저장 모듈(120)은 플로우 생성모듈(121) 및 세션생성 모듈(122)을 포함할 수 있다. The
상기 플로우 생성모듈(121)은 상기 패킷추출 모듈(160)에 의해 수신되는 패킷들에 기초하여 복수의 플로우들을 생성할 수 있다. 상기 패킷추출 모듈(160)은 상기 플로우 생성모듈(121)로 순차적으로 패킷들을 출력할 수 있다. 그러면, 상기 플로우 생성모듈(121)은 플로우를 생성할 수 있다. 플로우를 생성한다고 함은 후술할 바와 같이 플로우 정보를 생성하는 것을 의미할 수 있다. 구현 예에 따라서는, 선택적으로 상기 플로우 생성모듈(121)은 플로우에 포함되는 패킷을 추출하여 상기 저장장치(140)에 저장할 수도 있다. 상기 플로우 생성모듈(121)은 소정의 플로우에 해당하는 모든 패킷들을 저장토록 할 수도 있지만, 구현 예에 따라서는 후술할 바와 같이 상기 플로우를 포함하는 세션의 초기 몇 개의 패킷만을 최종적으로 상기 저장장치(140)에 저장토록 할 수도 있다.The
물론, 상기 플로우 생성모듈(121)은 플로우 및 해당 플로우에 포함된 모든 패킷을 임시로 상기 저장장치(140)에 저장하고, 상기 세션 생성모듈(122)이 저장된 패킷들 중 선택적으로 일부만 저장하고 나머지는 삭제할 수도 있다.Of course, the
본 명세서에서 플로우(flow)라 함은, 제한된 시간 내에 연속적으로 전달되는 IP 패킷들의 집합을 의미한다. 따라서, IP 플로우는 애플리케이션의 주소 쌍(송신자 주소, 송신자 포트 번호, 수신자 주소, 수신자 포트 번호), 호스트 쌍(송신자 네트워크 주소, 수신자 네트워크 주소), AS 번호 쌍(송신자 AS 번호, 수신자 AS 번호) 등으로 명세되는 제한된 시간 내에 연속적으로 전달되는 IP 패킷들의 흐름으로 정의될 수 있다. 이러한 플로우에 대한 개념 및 플로우를 형성하는 방식에 대해서는 상기한 선행기술문헌에 상세히 개시되어 있으므로 본 명세서에서는 상세한 설명은 생략하도록 한다. 또한, 본 명세서에서 플로우에 대한 개념, 플로우의 생성 방법에 대해서는 상기한 선행기술문헌에 개시된 기술적 사상 및 기재를 본 명세서의 레퍼런스로 포함하며, 본 명세서의 기재에 포함되는 것으로 취급할 수 있다.In the present specification, the term "flow" refers to a set of IP packets continuously delivered within a limited time. Thus, IP flows can include the application's address pairs (sender address, sender port number, receiver address, receiver port number), host pairs (sender network address, receiver network address), AS number pairs (sender AS number, receiver AS number), and so on. It can be defined as the flow of IP packets continuously delivered within the limited time specified by. The concept of the flow and the manner of forming the flow is described in detail in the above-mentioned prior art document, so the detailed description thereof will be omitted. In addition, the concept of the flow and the method of generating the flow in the present specification include the technical idea and description disclosed in the above-mentioned prior art document as a reference of the present specification, and may be treated as being included in the description of the present specification.
패킷들의 속성 중 플로우를 생성하기 위한 일 예로 5-튜플(tuple)을 이용할 수 있다. 즉, 플로우 생성모듈(121)은 네트워크 상에서 패킷들을 입력으로 받아서 패킷들의 연속된 집합인 플로우를 생성하거나, 플로우를 형성하는 패킷들 중 일부를 추출할 수 있다. 플로우를 생성하거나 플로우 패킷을 검출하는 조건은 패킷들의 속성(예컨대, 5-Tuple(Source Address, Destination Address, Source Port, Destination Port, Protocol))를 비교하여 동일한 속성(예컨대, 5-튜플(tuple) 값)을 가지는 패킷이 존재하지 않으면 새로운 플로우를 생성하고, 만약에 동일한 값을 가지는 패킷이 존재하면 그 플로우의 플로우 정보를 업데이트할 수 있다.An example of generating a flow among the attributes of packets may use a 5-tuple. That is, the
패킷들의 연속된 집합이라 함은 반드시 물리적으로 연속된 패킷들을 의미하는 것이 아니라, 시간적으로 제한된 시간 내에 도달한 패킷의 속성이 동일한 패킷을 포함하는 의미로 사용될 수 있다. A contiguous set of packets does not necessarily mean packets that are physically contiguous, but may be used to mean that an attribute of a packet reached within a time limited time includes the same packet.
상기 플로우 정보는 패킷의 5-튜플 정보를 포함하며, 플로우 사이즈(Flow Size), 지속기간(Duration) 즉, 플로우의 시작 시간(S.T) 및 종료 시간(E.T), 패킷 카운트(Packet Count, P.C), 평균 패킷 사이즈(Average Packet Size), 평균 레이트(Average Rate), 플래그(예컨대, 프로토콜을 위한 특별한 신호(SYN, FIN 등)) 및/또는 폴로우 사이즈 등을 포함할 수 있다. 상기 플로우 정보는 저장장치(140)로 출력되어 저장될 수 있다. 상기 플로우 생성모듈(121)은 상기 저장장치(140)에 소정의 플로우에 대한 플로우 정보 및 상기 플로우에 포함되는 패킷 중 적어도 일부를 서로 대응시켜 저장할 수 있다. 이러한 과정을 상기 플로우 생성모듈(121)이 플로우를 생성한다고 정의할 수 있다. 예컨대, 플로우 정보 및 플로우에 포함된 패킷이 물리적으로 연속되도록 저장될 수도 있고, 테이블, 링크 등과 같이 물리적으로는 분리되어 있더라도 용이하게 탐색될 수 있는 다양한 형태로 저장될 수 있다.The flow information includes 5-tuple information of a packet, and includes a flow size, a duration, that is, a start time (ST) and an end time (ET) of a flow, and a packet count (PC). , Average Packet Size, Average Rate, Flags (eg, special signals for protocols (SYN, FIN, etc.)) and / or follow size. The flow information may be output to the
이렇게 저장된 패킷들 중 일부는 상기 세션 생성모듈(122)에 의해 생성되는 세션 정보에 기초하여 삭제될 수도 있다. 예를 들어, 세션의 초기 N 개의 선행패킷을 제외하고는 삭제될 수도 있다. 또는 세션 초기의 N바이트의 페이로드를 포함하고 있는 선행패킷을 제외하고는 삭제될 수 있다. 또한 구현 예에 따라서는 특정 플로우에 대해서는 플로우 정보만 저장되고, 상기 특정 플로우에 해당하는 패킷은 저장되지 않을 수도 있다.Some of the packets thus stored may be deleted based on the session information generated by the
상기 세션 생성모듈(122)은 상기 플로우 생성모듈(121)에 의해 복수의 플로우들이 저장되면 즉, 복수의 플로우들이 생성되면, 상기 복수의 플로우들에 대한 정보에 기초하여 세션을 생성할 수 있다. 세션을 생성한다고 함은 생성된 복수의 플로우들 중에서 동일한 세션을 형성하는 플로우들을 추출하고, 추출된 플로우들에 대한 식별정보를 포함하는 세션 정보를 생성하여 상기 저장장치(140)에 저장하는 것을 의미할 수 있다.When the plurality of flows are stored by the
일 실시예에서, 플로우와 세션은 다음과 같은 방식으로 생성될 수 있다.In one embodiment, flows and sessions may be created in the following manner.
상기 플로우 생성모듈(121)은 패킷의 5-tuple을 기준으로 판단하여 해당 패킷이 종료되지 않고 남아있는 플로우에 포함되면(5-tuple, 정보가 동일하면) 해당 플로우 정보를 수정하고, 해당 패킷이 해당 플로우에 종속됨을 표시할 수 있다.The
만약 해당 패킷의 5-tuple 정보를 기준으로 판단하여 해당 패킷이 특정 플로우에 속하지 않으면 새로운 플로우를 생성하여 해당 패킷이 새로 생성된 플로우에 종속됨을 표시할 수 있다. If it is determined based on the 5-tuple information of the packet, if the packet does not belong to a specific flow, a new flow may be generated to indicate that the packet depends on the newly generated flow.
새로운 플로우가 생성되면, 상기 세션 생성모듈(122)은 플로우의 5-tuple 정보를 기준으로 판단하여 해당 플로우가 종료되지 않고 남아있는 세션에 포함되면 해당 세션 정보를 수정하고, 해당 플로우를 해당 세션에 종속됨을 표시할 수 있다. 만약 해당 플로우의 5-tuple 정보를 기초로 판단하여, 특정 세션에 속하지 않으면 새로운 세션을 생성하고 해당 플로우가 새로 생성된 세션에 종속됨을 표시할 수 있다. 만약 세션의 끝을 알리는 패킷이 수신되면 해당 패킷이 포함되는 플로우와 세션을 종료하고 저장장치(140)에 저장할 수 있다. 종료되지 않고 남아있는 플로우, 세션의 경우, 일정시간 동안 해당 플로우나 세션에 포함되는 패킷이 수신되지 않으면 해당 플로우와 세션은 종료될 수 있다.When a new flow is generated, the
또한 상기 세션 정보와 함께 상기 세션에 포함된 패킷들 중 일부를 상기 세션 정보에 대응되도록 저장하는 과정을 포함하는 의미일 수 있다. 예를 들어, 세션 형성 시 상기 세션 생성모듈(122)은 상기 세션에 포함된 패킷들 중 초기 M 개의 선행패킷을 상기 세션 정보에 대응되도록 저장할 수 있다. 혹은 상기 세션에 포함된 패킷들 중 N번째 패킷부터 M개의 후속 패킷을 상기 세션 정보에 대응되도록 저장할 수 있다. 또는 상기 세션 생성모듈(122)은 상기 세션 정보와 함께 상기 세션에 포함된 패킷들 중 상기 세션의 초기 K 바이트의 페이로드를 포함하는 패킷을 상기 세션 정보에 대응되도록 저장할 수도 있다. 또는 상기 세션 생성모듈(130)은 N번째 패킷부터 K 바이트의 페이로드를 포함하는 후속 패킷을 상기 세션 정보에 대응되도록 저장할 수도 있다. 이에 대해서는 후에 보다 상세하게 설명하기로 한다.The method may also include storing some of the packets included in the session together with the session information to correspond to the session information. For example, during session establishment, the
일부 패킷을 상기 세션 정보에 대응되도록 저장하는 과정은 이미 상기 플로우 생성모듈(121)에 의해 저장된 패킷들 중 상기 일부 패킷을 제외하고 삭제하는 과정일 수 있다. 또는 세션 정보 및 패킷은 별도로 저장될 수도 있다. 이러한 경우에는 해당 패킷은 이중으로 저장될 수도 있다.The storing of some packets to correspond to the session information may be a process of deleting some of the packets already stored by the
또는 일부 패킷을 상기 세션 정보에 대응되도록 저장하는 과정에서 저장될 대상이 되는 패킷만을 휘발성 메모리에 임시 저장하고 저장 대상이 아닌 패킷은 버리게 되며, 세션 종료 시 휘발성 메모리에 저장되어 있는 패킷이 상기 저장장치(140)에 저장할 수도 있다.Alternatively, in the process of storing some packets corresponding to the session information, only packets that are to be stored are temporarily stored in the volatile memory and packets that are not to be stored are discarded, and the packet stored in the volatile memory is terminated at the end of the session. It may be stored at 140.
상기 세션 생성모듈(122)이 세션을 생성하는 개념은 도 5를 참조하여 설명하도록 한다.The concept of generating a session by the
도 2는 본 발명의 일 실시 예에 따른 네트워크 보안 방법을 위한 세션, 플로우, 및 패킷을 설명하기 위한 도면이다.2 is a diagram illustrating a session, a flow, and a packet for a network security method according to an embodiment of the present invention.
도 5를 참조하면, 소정의 장치들끼리 세션(S)이 형성되면, 상기 세션(S)은 적어도 하나의 플로우(F)로 구성될 수 있다. 또한, 상기 적어도 하나의 플로우는 각각 적어도 하나의 패킷(P)으로 구성될 수 있다.Referring to FIG. 5, when sessions S are formed between predetermined devices, the session S may be configured of at least one flow F. Referring to FIG. In addition, the at least one flow may be composed of at least one packet (P), respectively.
본 발명의 기술적 사상에 의하면, 상기 네트워크 보안 시스템(100)은 소정의 네트워크상의 일 지점을 경유하는 패킷들을 수집할 수 있다. 이는 상기 패킷 추출모듈(160)에 의해 수행될 수 있다.According to the technical spirit of the present invention, the
그리고 수집되는 패킷들의 패킷 속성(예컨대, 5튜플 등)에 기초하여 상기 네트워크 보안 시스템(100)은 플로우를 생성할 수 있다. 플로우의 생성방법에 대해서는 상술한 바와 같다. 이러한 플로우의 생성은 플로우 생성모듈(121)에 의해 수행될 수 있다. 각각의 플로우는 하나의 패킷만으로 구성될 수도 있고, 복수의 패킷들로 구성될 수도 있다. 또한 플로우별로 플로우 사이즈가 다를 수도 있다.The
한편, 이처럼 플로우가 생성되면 상기 세션 생성모듈(122)은 세션을 생성할 수 있다. On the other hand, when the flow is generated in this way, the
세션을 생성하기 위해 상기 세션 생성모듈(122)은 저장장치(140)에 저장된 플로우 정보를 확인할 수 있다. 동일한 세션에 포함되는 플로우들은 공통되는 특성을 가질 수 있다. 따라서 상기 세션 생성모듈(122)은 상기 저장장치(140)에 저장된 플로우들 중 상기 공통되는 특성을 가진 플로우들을 탐색할 수 있다. 또한 플로우 정보(예컨대, 플로우 정보에 포함되는 S.T, E.T 등의 정보)에 기초하여 각각의 플로우의 시간적 우선순위를 파악할 수 있다. 상기 세션 생성모듈(122)은 각각의 세션 형성 플로우의 플로우 정보에 포함되는 플래그 정보에 기초하여 해당 세션의 최선 플로우 및 최후 플로우를 파악할 수도 있다.In order to generate a session, the
따라서 상기 세션 생성모듈(122)은 특정 세션에 포함되는 적어도 하나의 플로우 즉, 세션 형성 플로우를 추출할 수 있다. 상기 세션 형성 플로우는 하나의 플로우일 수도 있고, 복수의 플로우들을 포함할 수도 있다.Accordingly, the
이처럼 본 발명의 기술적 사상에 따른 네트워크 보안 시스템(100)이 플로우만을 생성하는 것이 아니라, 생성한 플로우에 기초하여 세션을 생성하는 것은 세션의 초기 일부의 데이터에 의해 해당 세션의 중요한 특성들이 모두 파악될 수 있기 때문이다. 따라서 종래의 선행기술들이 수집되는 모든 패킷을 저장하고 검사(예컨대, DPI)하거나, 각각의 플로우별로 일정 개수의 선행패킷을 저장 및 검사하는 것에 비해 보다 적은 수의 보안 검사만으로도 소정의 애플리케이션의 특성 또는 원하는 정보를 검사할 수 있다. 일반적으로 세션의 초기 5개 내외에 패킷을 검사하는 정도면 상기 세션에 포함되는 모든 패킷을 검사하는 것에 비해 검사의 품질에 큰 차이가 없음이 알려져 있다. 물론, 서비스 주체의 판단에 따라 세션의 모든 패킷을 저장할 수도 있다. As such, the
또한, 본 발명의 기술적 사상에 의하면 상기 네트워크 보안 시스템(100)이 네트워크 레코딩 서비스를 제공하는 경우에 종래의 선행기술들에 비해 적은 수의 패킷들만을 저장할 수 있게 되는 효과가 있다. 따라서 스토리지에 대한 이득이 발생할 수 있는 효과가 있다.In addition, according to the technical concept of the present invention, when the
또한, 본 발명의 기술적 사상과 같이 패킷으로부터 플로우를 생성하고, 생성된 플로우를 이용하여 세션까지 생성하는 경우에는 특정 서비스 이용자가 패킷을 서치할 때에도 고속의 패킷 서치가 가능한 효과가 있다. 즉, 상기 네트워크 보안 시스템(100)이 세션의 초기 일부의 선행패킷 (혹은 초기 일부의 페이로드)만을 저장하는 것이 아니라 수집되는 모든 패킷을 저장할 수도 있는데, 이러한 경우에는 세션을 생성함으로써 생성되는 세션정보를 가장 먼저 탐색하여 원하는 패킷에 상응하는 세션을 탐색하고, 탐색된 세션으로부터 원하는 패킷에 상응하는 플로우를 탐색한 후 탐색된 플로우에 기초하여 패킷을 검색함으로써 고속의 다운드릴 서치가 가능한 효과가 발생한다. 왜냐하면 플로우만을 생성하는 경우에는 최악의 경우에 플로우의 개수만큼 서치를 수행한 후에 패킷을 서치할 수 있지만, 세션이 형성된 경우에는 최악의 경우에 세션의 개수만큼만 서치를 수행한 후, 빠른 시간에 해당 패킷에 상응하는 플로우 및 패킷을 탐색할 수 있기 때문이다. 물론, 초기 일부의 선행패킷 (혹은 초기 일부의 페이로드)만을 저장하는 경우에도 이러한 효과는 여전히 존재한다. 또한, 패킷을 서치하고자 하는 서비스 이용자는 세션에 대한 정보는 알고 있을 수 있지만, 플로우에 대한 정보는 알지 못하는 경우도 존재할 수 있다. 따라서 본 발명의 기술적 사상과 같이 세션을 생성하는 경우에는 네트워크 리코딩 서비스에서 효율적이고 고속의 패킷 서칭이 가능해지는 효과가 있다.In addition, in the case of generating a flow from a packet and generating a session using the generated flow as in the technical idea of the present invention, even when a specific service user searches for a packet, a high speed packet search is possible. That is, the
다시 도 1을 참조하면, 상기 세션 생성모듈(122)은 상기 플로우 생성모듈(121)이 생성한 복수의 플로우들에 기초하여 세션을 생성할 수 있다. 즉, 세션정보를 생성할 수 있다. Referring back to FIG. 1, the
상기 세션 정보는 적어도 상기 세션에 포함되는 적어도 하나의 플로우 즉, 세션 형성 플로우들 각각의 인덱스(식별정보)를 포함할 수 있다. 또한, 상기 세션의 특성을 나타내는 다양한 정보들이 상기 세션 정보에 더 포함될 수 있다.The session information may include at least one flow included in the session, that is, an index (identification information) of each session formation flow. In addition, various information representing the characteristics of the session may be further included in the session information.
이러한 세션 정보의 생성을 통해 전술한 바와 같이 고속의 패킷 서칭이 가능할 수 있으며, 또한 세션의 생성을 통해 저장 대상이 되는 일부 패킷을 특정할 수도 있다. As described above, high-speed packet search may be performed through the generation of the session information, and some packets to be stored may be specified through the generation of the session.
도 6를 참조하여 본 발명의 패킷들이 저장되는 개념적인 구조를 설명하면 다음과 같을 수 있다.Referring to FIG. 6, a conceptual structure in which packets of the present invention are stored may be described as follows.
도 6는 본 발명의 일 실시 예에 따른 네트워크 보안 시스템 제공방법에 따른 패킷 서치를 수행하는 개념을 설명하기 위한 도면이다. 6 is a view for explaining a concept of performing a packet search according to a method for providing a network security system according to an embodiment of the present invention.
도 6를 참조하면, 상기 세션 생성모듈(122)은 전술한 바와 같이 소정의 세션을 생성할 수 있다. 세션의 생성을 통해 생성되는 세션 정보에는 도 6에 도시된 바와 같이 적어도 상기 세션에 포함되는 세션 형성 플로우의 식별정보가 포함될 수 있다.Referring to FIG. 6, the
또한, 상기 세션 정보에는 상기 세션의 5-튜플에 대한 정보, 시작시간(S.T) 및 종료시간(E.T), 패킷 카운트(P.C), 세션 사이즈(S.S)등에 대한 정보들이 더 포함될 수 있다.The session information may further include information on 5-tuple of the session, start time (S.T) and end time (E.T), packet count (P.C), session size (S.S), and the like.
상기 네트워크 보안 시스템(100)에 포함된 패킷 서치모듈(140)은 서비스 이용자의 단말기(미도시)로부터 수신되는 패킷 서치 요청에 응답하여, 상기 패킷 서치 요청에 상응하는 세션을 가장 먼저 탐색할 수 있다. 상기 패킷 서치 요청에는 상기 세션정보에 포함된 정보들이 적어도 하나 포함될 수 있음은 물론이다. 예컨대, 송신자 주소, 수신자 주소, 및 시간 정보 등이 상기 패킷 서치요청에 포함될 수 있다.The
그러면 상기 패킷 서치모듈(140)은 상기 세션 정보에 포함된 세션 형성 플로우들 각각의 플로우 정보를 탐색하여 패킷 서치 요청에 상응하는 플로우를 탐색할 수 있다. 그리고 상기 패킷 서치 요청에 상응하는 플로우가 탐색되면, 상기 패킷 서치모듈(140)은 용이하게 상기 패킷 서치 요청에 상응하는 패킷을 탐색할 수 있다. 물론, 구현 예에 따라 상기 네트워크 보안 시스템(100)이 선행패킷만을 저장하는 경우에는 패킷 서치 요청에 상응하는 패킷은 존재하지 않을 수도 있다. 또한 모든 패킷들을 저장하는 경우에는 패킷 서치 요청에 상응하는 패킷은 탐색됨이 보장될 수도 있다.Then, the
결국, 본 발명의 기술적 사상은 패킷으로부터 플로우를 생성하고, 플로우로부터 세션을 생성한 후, 패킷을 서치할 때에는 세션, 플로우, 및 패킷 순으로 다운드릴 고속 서치가 가능해지는 효과가 있다.As a result, the technical idea of the present invention is to generate a flow from a packet, generate a session from the flow, and then search for a packet, thereby enabling high-speed downdrill search in the order of session, flow, and packet.
한편, 본 발명의 기술적 사상에 의하면, 전술한 바와 같이 상기 네트워크 보안 시스템(100)은 네트워크 리코딩 서비스에 이용될 수도 있다. 네트워크 리코딩을 위해서는 종래에는 수집되는 모든 패킷들을 저장해야 했지만, 본 발명의 기술적 사상에 의하면 세션을 형성함으로써 세션의 일부 패킷(예를 들면, 초기 M개의 선행 패킷 또는 초기 K 바이트의 페이로드를 포함하는 패킷)만을 저장함으로써 저장 패킷의 양을 확연히 줄이면서도 중요한 정보들은 저장할 수 있게 된다. 이러한 경우 전체 패킷을 수집/저장하는 것에 비해 스토리지의 절약효과가 존재한다.Meanwhile, according to the spirit of the present invention, as described above, the
또한 본 발명의 기술적 사상에 의하면, 상기 네트워크 보안 시스템(100)은 미리 정해진 종류의 세션에 해당하는 패킷들만 저장할 수도 있다. 예컨대, 상기 네트워크 보안 시스템(100)은 HTTP, TCP 세션 등 미리 정해진 세션에 대해서만 네트워크 레코딩을 수행할 수 있다. 또한 네트워크 서비스 포트(port) 별로 저장 방법을 달리하여 레코딩을 수행할 수 있다. 예를들어 443 포트를 사용하는 패킷에 대해서는 패킷을 전혀 저장하지 않고, 80 포트를 사용하는 패킷에 대해서는 세션 초기 K 바이트만 저장하고, 22 포트를 사용하는 패킷에 대해서는 모든 패킷을 저장하도록 할 수 있다. 또한 특정 IP에 의해 송신되거나 수신되는 패킷에 대해서는 저장하지 않도록 할 수도 있다.In addition, according to the spirit of the present invention, the
이처럼 미리 정해진 세션이나 포트, IP에 대해서만 네트워크 레코딩을 수행하는 기능은 상기 플로우 생성모듈(121)에 의해 수행될 수도 있고, 상기 세션 생성모듈(122)에 의해 생성될 수도 있다. 예컨대, 상기 플로우 생성모듈(121)은 패킷 추출모듈(110)에 의해 수집되는 패킷들 중 미리 정해진 세션에 해당하는 패킷들만을 대상으로 플로우를 생성할 수 있다. 또는 상기 플로우 생성모듈(121)은 모든 패킷들을 대상으로 플로우를 생성한 후, 상기 세션 생성모듈(122)이 생성된 플로우 중 미리 정해진 세션에 해당하지 않는 플로우는 상기 저장장치(140)로부터 삭제할 수도 있다.Such a function of performing network recording only for a predetermined session, port, or IP may be performed by the
상기 미리 정해진 세션에 해당하는지 여부는 패킷들의 포트정보에 기초하여 파악할 수 있다. 즉, 세션의 종류에 따라 포트번호가 바인딩(binding)될 수 있고, 이러한 포트번호에 기초하여 미리 정해진 세션에 해당하는 패킷 또는 플로우인지가 판단될 수 있다. Whether it corresponds to the predetermined session may be determined based on port information of the packets. That is, a port number may be bound according to the type of session, and it may be determined whether a packet or a flow corresponds to a predetermined session based on the port number.
구현 예에 따라서는, 상기 패킷 추출모듈(110)이 미리 정해진 세션에 해당하는 패킷만을 상기 플로우 생성모듈(121)로 전송할 수도 있다.According to an implementation example, the
어떠한 경우든 상기 네트워크 보안 시스템(100)은 미리 정해진 세션에 대해서만 네트워크 레코딩을 수행할 수도 있다.In any case, the
결국, 본 발명의 기술적 사상에 의하면 종래의 네트워크 레코딩에 비해 저장되는 패킷의 절대적인 양이 줄어들 수 있고, 또한 원하는 세션에 대해서만 네트워크 레코딩이 수행될 수도 있다. As a result, according to the spirit of the present invention, the absolute amount of packets stored compared to the conventional network recording can be reduced, and network recording can be performed only for a desired session.
본 발명의 기술적 사상에 따른 네트워크 보안 시스템(100)은 특정 세션에 포함되는 패킷들 전부를 저장하는 것이 아니라, 일부 패킷(예를 들어, K 바이트의 초기 페이로드를 포함하는 패킷 등)만을 저장할 수 있으므로 각 세션별로 저장되는 패킷의 양이 줄어들 수 있는 효과가 있다.The
또한, 본 발명의 기술적 사상에 따른 네트워크 보안 시스템(100)은 모든 세션들에 대해 패킷을 저장하는 것이 아니라, 미리 정해진 종류의 세션만을 저장할 수 있으므로 미리 정해진 종류에 해당하지 않는 세션들에 대해서는 아예 패킷 저장이 이루어지지 않을 수 있는 효과가 있다. In addition, the
이처럼 본 발명의 기술적 사상에 의하면 저장하는 패킷의 절대적인 양을 줄이면서도 보안 검사에 유의미한 패킷들만 선택적으로 저장함으로 고속의 패킷 서치가 가능해지는 효과가 있다. 이와 동시에 전술한 바와 같이 세션 정보, 플로우 정보 순으로의 드릴다운 서치를 통해 고속의 패킷 서치가 가능해지는 효과가 있다.As described above, according to the technical concept of the present invention, it is possible to reduce the absolute amount of packets to be stored and to selectively store only packets that are significant for the security check, thereby enabling high-speed packet search. At the same time, as described above, high-speed packet search is possible through the drill-down search in the order of session information and flow information.
도 7은 본 발명의 일 실시 예에 따른 네트워크 보안 방법을 통한 복수의 패킷저장 모드를 설명하기 위한 도면이다.7 is a diagram illustrating a plurality of packet storage modes through a network security method according to an embodiment of the present invention.
도 7을 참조하면, 직사각형의 가로축은 세션 사이즈를 개념적으로 나타내고 세로축은 세션들을 개념적으로 나타낸다. 따라서 도 7에 도시된 사각형(10)은 수집되는 패킷들을 모두 저장하는 경우의 저장되는 패킷 양을 의미할 수 있으며, 빗금친 영역(20)은 실제로 상기 세션 생성모듈(122)에 의해 저장된 패킷의 양을 나타낼 수 있다.7, the horizontal axis of the rectangle conceptually represents the session size and the vertical axis conceptually represents the sessions. Therefore, the
우선 도 7a는 패킷들을 저장하지 않는 경우를 나타내며, 이러한 경우에는 본 발명의 기술적 사상에 따라 실시간으로 패킷을 검사하는 경우를 나타낼 수 있다. 이때에는 종래의 DPI와 같은 기능을 수행할 수 있다. 하지만 이때에도 본 발명의 기술적 사상에 의하면 세션을 생성하고 생성된 세션의 선행패킷들만을 고속으로 검사할 수 있는 효과가 있다.First, FIG. 7A illustrates a case in which packets are not stored, and in this case, it may represent a case of inspecting a packet in real time according to the technical spirit of the present invention. In this case, the same function as the conventional DPI may be performed. However, even at this time, according to the technical idea of the present invention, there is an effect that a session can be created and only the preceding packets of the generated session can be inspected at high speed.
도 7b는 미리 정해진 종류의 세션에 대해서만 상기 세션의 모든 패킷을 검사하는 경우를 개념적으로 도시하고 있다. 도 7c는 모든 세션에 대해서 초기 N개의 선행패킷들을 저장하는 경우를 개념적으로 도시하고 있다.7B conceptually illustrates a case where all packets of the session are examined only for a predetermined type of session. 7c conceptually illustrates a case of storing initial N preceding packets for all sessions.
도 7d는 미리 정해진 종류에 세션에 대해서 초기 N개의 선행패킷들을 저장하는 경우를 개념적으로 도시하고 있다. 또한, 도 7e는 모든 세션에 대해 모든 패킷들을 저장하는 경우를 개념적으로 도시하고 있다.FIG. 7D conceptually illustrates a case of storing initial N preceding packets for a session in a predetermined type. In addition, FIG. 7E conceptually illustrates a case of storing all packets for all sessions.
이와 같이 상기 네트워크 보안 시스템(100)은 도 7에 도시된 바와 같은 적어도 하나의 패킷저장 모드를 제공하며, 이 중에서 현재의 네트워크에 대해 설정된 설정모드에 따라 상기 네트워크 보안 시스템(100)은 적응적으로 패킷을 저장할 수 있다. 설정모드는 네트워크의 특성 또는 요구되는 보안성의 강도에 따라 적응적으로 선택될 수 있음은 물론이다.As such, the
한편, 앞서 설명한 바와 같이 본 발명의 일 실시예에 따른 네트워크 보안 시스템(100)은 각 세션의 일부 패킷(예를 들면, K 바이트의 초기 페이로드를 포함하는 패킷 등)을 저장함으로써, 저장하는 패킷의 양을 줄이면서도 고속의 패킷 서치를 가능하게 한다. 그런데, 만약 네트워크 공격자가 의미 없는, 즉, 헤더만을 포함하며 아무런 페이로드를 포함하지 않은 패킷(예를 들면, SYN, ACK, FIN 등)을 연속적으로 보낸 이후 네트워크에 위협이 될 수 있는 실제 공격 패킷을 보내는 경우에는 이를 검출할 수 없는 문제가 발생할 수 있게 된다. 따라서, 본 발명의 다른 일 실시예에 따른 네트워크 보안 시스템(100) 은 각 세션의 초기 N개의 선행 패킷을 저장하는 대신, 각 세션마다 일정 크기 K 바이트의 초기 선행 페이로드 혹은 K 바이트의 초기 선행 페이로드를 포함하고 있는 패킷을 세션 정보와 대응시켜 저장할 수도 있는데, 이에 대하여 도 8을 참조하여 설명하기로 한다. 여기서 K는 미리 지정된 자연수일 수 있다.Meanwhile, as described above, the
도 8은 세션을 구성하는 패킷 중 초기 5개의 패킷은 헤더만을 가지는 패킷이며, 6번째 이후의 패킷부터 페이로드를 포함하고 있는 예를 도시하고 있다.FIG. 8 shows an example in which the initial five packets of the packets constituting the session are packets having only a header, and include payloads from the sixth and subsequent packets.
이하에서는 도 8의 세션 S의 임의의 i번째 패킷을 Pi라고 표현하고, 패킷 Pi의 페이로드를 Li라고 표현하고, 페이로드 Li의 크기를 |Li|로 표현하기로 한다.Will be represented as | hereinafter described as an arbitrary i-th packet of the session S in Fig. 8 P i, and the size of the packet P i of the expression is referred to as the payload L i, and the payload L i | L i.
본 발명의 일 실시예에 따른 네트워크 보안 시스템(100)에 포함된 세션 생성모듈(122)은 페이로드를 포함하고 있는 최초의 패킷(혹은 패킷의 페이로드)부터 저장할 수 있다. 또한 상기 세션 생성모듈(122)은 저장되는 패킷의 페이로드의 합이 소정의 K바이트가 될 때까지 패킷(혹은 패킷의 페이로드)을 저장할 수 있다.The
도 8의 예에서 상기 세션 생성모듈(122)은 페이로드를 포함하고 있는 최초의 패킷인 P6 의 페이로드인 L6부터 저장할 수 있다. 또한 도 8의 예에서 |L6|+|L7|+|L8|+|L9|+|L10|+|L11| = K라면, 상기 세션 생성모듈(122)은 P11의 페이로드인 L11까지 저장할 수 있다.In the example of FIG. 8, the
구현 예에 따라 상기 세션 생성모듈(122)은 선행 페이로드만을 저장할 수도 있으나, 해당 선행 페이로드를 포함하고 있는 패킷을 저장할 수도 있다. 즉 도 8의 예에서 상기 세션 생성모듈(122)은 페이로드를 포함하고 있는 최초의 패킷인 P6부터 저장되는 페이로드의 합이 K바이트가 되는 패킷인 P11까지 저장할 수도 있다.According to an implementation example, the
한편, 특정 패킷에 포함된 페이로드 중간 부분까지의 합이 K 바이트인 경우, 구현 예에 따라서는, 합이 K가 되는 해당 패킷의 페이로드의 중간부분까지만을 저장할 수도 있고, 해당 패킷 패킷 전체를 모두 저장할 수도 있다. 즉, 도 8의 예에서, |L6|+|L7|+|L8|+|L9|+|L10|+|L11| > K > |L6|+|L7|+|L8|+|L9|+|L10| 라면, 상기 세션 생성모듈(122)은, 구현 예에 따라, i) 크기의 총 합이 K바이트가 되도록 L6부터 L11의 중간부분까지 저장하거나, ii) L6부터 L11까지 저장하거나, iii) P6부터 P11까지 저장할 수 있다.On the other hand, when the sum to the middle portion of the payload included in a particular packet is K bytes, depending on the embodiment, only the middle portion of the payload of the packet whose sum is K may be stored, or the entire packet packet may be stored. You can also save everything. That is, in the example of FIG. 8, | L 6 | + | L 7 | + | L 8 | + | L 9 | + | L 10 | + | L 11 | >K> | L 6 | + | L 7 | + | L 8 | + | L 9 | + | L 10 | If so, the
또는 구현 예에 따라 상기 세션 생성모듈(122)은 해더만을 포함하는 패킷까지 저장할 수도 있다. 즉, 상기 세션 생성모듈(122)은 각 세션의 최초 패킷부터 저장하기 시작하여 페이로드의 합이 K가 될 때까지 저장할 수 있다. 도 8을 예로 들어 설명하면, 상기 세션 생성모듈(122)은 P1부터 P11까지 저장할 수 있다.Alternatively, according to an implementation example, the
한편, 공격자가 정상적인 패킷을 일부 보낸 후에 네트워크에 위협이 될 수 있는 실제 공격 패킷을 보내는 경우에도 이를 검출할 수 있어야 하므로 본 발명의 다른 일 실시예에서는 세션의 초기 일부 패킷을 스킵하고 다음부터 일정 수의 패킷을 저장할 수도 있는데, 이하에서는 도 9를 참조하여 설명하기로 한다.Meanwhile, since an attacker should be able to detect a real attack packet that may be a threat to the network after sending some normal packets, another embodiment of the present invention skips some initial packets of a session and then a certain number of times from next time. Packet may be stored, which will be described below with reference to FIG. 9.
도 9는 세션의 초기 N개의 패킷을 스킵하고 N+1번째 패킷부터 M개의 패킷을 저장하는 예를 도시하고 있다. 도 9의 예에서, N 및 M은 소정의 자연수일 수 있다.FIG. 9 shows an example of skipping initial N packets of a session and storing M packets from the N + 1 th packet. In the example of FIG. 9, N and M may be any natural number.
세션 S의 임의의 i번째 패킷을 Pi라고 표현하면, 도 9의 실시예에서, 상기 세션 생성모듈(122)은 P1 내지 PN은 스킵하고, P1+1 내지 PN+M까지 저장할 수 있다.Representing any i th packet of session S as P i , in the embodiment of FIG. 9, the
한편, 저장되는 패킷의 개수인 M은 미리 지정된 값일 수도 있으나, 실시예에 따라서는 저장되는 페이로드의 크기 K에 의해 산출되는 값일 수도 있다. 패킷 Pi의 페이로드를 Li라고 표현하고, 페이로드 Li의 크기를 |Li|로 표현하기로 한다면, M은 |Ln+1| + |Ln+2| … + |Ln+m| >= K 바이트인 가장 작은 자연수일 수 있다.Meanwhile, M, the number of packets to be stored, may be a predetermined value, but in some embodiments, M may be a value calculated by the size K of the payload to be stored. If the payload of the packet P i is expressed as L i and the size of the payload L i is expressed as | L i |, then M is | L n + 1 | + | L n + 2 | … + | L n + m | It can be the smallest natural number> = K bytes.
한편, 스킵되는 초기 패킷의 수인 N 역시 미리 지정된 값일 수도 있으나, 실시예에 따라서는 스킵되는 페이로드의 크기 G(G는 소정의 자연수)에 의해 산출되는 값일 수 있다. 즉, N은 M은 |L1| + |L2| … + |Ln| >= G 바이트인 가장 작은 자연수일 수 있다.Meanwhile, although N, the number of skipped initial packets, may also be a predetermined value, in some embodiments, it may be a value calculated by the size G (G is a predetermined natural number) of the skipped payload. N is M is | L 1 | + | L 2 | … + | L n | It can be the smallest natural number> = G bytes.
한편, 상기 네트워크 보안 시스템(100)은 저장되는 선행 페이로드 혹은 선행 페이로드를 포함하고 있는 패킷에 대하여 앞서 설명한 보안 검사 등을 동일한 방식에 의해 수행할 있음은 물론이다.On the other hand, the
도 10는 본 발명의 일 실시 예에 따라 과거의 네트워크 공격을 효과적으로 검사할 수 있는 개념을 설명하기 위한 도면이다.FIG. 10 is a diagram for describing a concept of effectively checking a past network attack according to an embodiment of the present invention.
즉, 시간상의 보안 공백을 줄일 수 있는 개념을 설명하기 위한 도면이다. 우선 도 10a는 종래의 네트워크 보안 시스템(예컨대, DPI)의 동작 개념을 예시적으로 나타내고 있다. 예컨대, 소정의 시점(t1)에서 신규 네트워크 위협이 발생할 수 있다. 이러한 신규 네트워크 위협에 상응하는 네트워크 검사 룰(예컨대, 신규 위협을 나타내는 패킷 시그너쳐 등)은 일정 시간이 지난 후(t2)에 설정될 수 있으며, 이러한 경우 종래의 네트워크 보안 시스템은 상기 시점(t2) 이후에만 상기 신규 네트워크 위협에 대응할 수 있게 된다. 즉, 시점(t1) 및 시점(t2) 사이에 실제로 네트워크 공격이 있었다고 하더라도 이를 인지할 수 없는 문제점이 있다. That is, it is a diagram for explaining a concept of reducing the security gap in time. First, FIG. 10A exemplarily illustrates an operation concept of a conventional network security system (eg, DPI). For example, a new network threat may occur at a predetermined time t1. Network inspection rules (e.g., packet signatures indicating new threats, etc.) corresponding to these new network threats may be set after a certain time (t2), in which case the conventional network security system is after the time point (t2) Only to be able to respond to the new network threat. That is, even though there is a network attack between the time point t1 and the time point t2, there is a problem that cannot be recognized.
물론 종래에도 네트워크 검사 시스템(예컨대, DPI) 및 네트워크 레코딩 시스템을 모두 사용하는 경우에는 시점(t1) 및 시점(t2) 사이에 네트워크 공격을 인지할 수도 있다. 하지만 이러한 경우에도 종래의 네트워크 레코딩은 본 발명의 기술적 사상에 비해 많은 수의 패킷들이 저장되어야 했고 이에 따라 고속으로 과거의 네트워크 공격을 인지하거나 이에 따른 대응을 할 수 없는 문제점이 있었다. Of course, when using both a network inspection system (eg, DPI) and a network recording system, a network attack may be recognized between a time point t1 and a time point t2. However, even in such a case, the conventional network recording had to store a large number of packets compared to the technical concept of the present invention, and thus there was a problem in that it was not possible to recognize or respond to past network attacks at high speed.
이에 비해 도 10b에 도시된 바와 같은 본 발명의 기술적 사상에 따른 네트워크 검사 방법에 의하면 시점(t1) 및 시점(t2) 사이에 네트워크 레코딩이 수행되면서도 적은 수의 패킷들의 저장만으로도 네트워크 레코딩이 수행될 수 있는 효과가 있다. 이를 통해 고속으로 과거의 네트워크에 대해서 소급적인 네트워크 검사가 수행될 수 있고, 이를 통해 공격된 대상에 대한 빠른 조치가 가능해질 수 있는 효과가 있다. 물론, 시점(t2) 이후에는 실시간으로 고속의 네트워크 검사가 가능할 수 있음은 물론이다.On the other hand, according to the network inspection method according to the spirit of the present invention as shown in FIG. 10B, network recording can be performed by only storing a small number of packets while performing network recording between the time point t1 and the time point t2. It has an effect. Through this, retrospective network inspection can be performed on the network in the past at high speed, thereby enabling quick action on the attacked target. Of course, a high speed network inspection may be possible in real time after the time point t2.
한편, 구현 예에 따라서, 상기 네트워크 보안 시스템(100)는 적어도 하나의 프로세서 및 상기 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함할 수 있다. 상기 프로세서는 싱글 코어 CPU혹은 멀티 코어 CPU를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서 및 기타 구성 요소에 의한 메모리로의 액세스는 메모리 컨트롤러에 의해 제어될 수 있다.In some implementations, the
한편, 본 발명의 실시예에 따른 네트워크 보안 방법은 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, the network security method according to an embodiment of the present invention may be implemented in the form of computer readable program instructions and stored in a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.The program instructions recorded on the recording medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in the software art.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.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, floppy disks, and the like. Included are hardware devices specifically configured to store and execute the same magneto-optical media and program instructions such as ROM, RAM, flash memory, and the like. 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.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Examples of program instructions include not only machine code generated by a compiler, but also devices that process information electronically using an interpreter, for example, high-level language code that can be executed by a computer.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.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.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. .
Claims (12)
상기 네트워크 보안 시스템이, 상기 복수의 패킷들 중 적어도 일부를 저장장치에 선택적으로 저장하는 단계;
상기 네트워크 보안 시스템이, 상기 패킷 저장 프로세스를 통해 저장된 저장 패킷 중 적어도 일부에 대한 보안 검사를 수행하는 단계; 및
상기 네트워크 보안 시스템이, 상기 보안 검사의 수행 결과를 포함하는 리포트 문서를 생성하는 단계를 포함하는 네트워크 보안 방법.
Performing, by the network security system, an intrusion prevention process that passes allowed packets and blocks unallowed packets according to a preset applied security ruleset among a plurality of packets received from the network;
Selectively storing, by the network security system, at least some of the plurality of packets in a storage device;
The network security system performing a security check on at least some of the stored packets stored through the packet storing process; And
Generating, by the network security system, a report document containing a result of performing the security check.
상기 보안 검사는,
소정의 주기마다 해당 주기 동안 저장된 저장 패킷을 대상으로 수행하는 주기 단위 검사, 상기 저장장치에 저장된 저장 패킷 전체 혹은 미리 지정된 기간동안 저장된 패킷에 대해 수행하는 업데이트 소급 검사, 사용자에 의해 지정된 소정의 기간 동안 저장된 저장 패킷을 대상으로 사용자가 지정한 룰들로 수행하는 사용자 지정 검사 및 상기 네트워크 보안 시스템이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 임의 기간 검사 중 적어도 하나를 포함하는 네트워크 보안 방법.
The method of claim 1,
The security check,
Periodic inspection for performing storage packets stored for a predetermined period for each predetermined period, retrospective inspection for all the storage packets stored in the storage device or for packets stored for a predetermined period, and for a predetermined period designated by a user. At least one of a user-specified check performed on the stored storage packet with rules designated by the user and an arbitrary period check performed on the stored storage packet for an arbitrary period determined by the network security system.
상기 네트워크 보안 시스템이, 상기 보안 검사의 수행 결과에 기초하여 상기 침입방지 프로세스에 적용될 상기 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경하는 단계를 더 포함하는 네트워크 보안방법.
The method of claim 1,
And changing, by the network security system, the applied security rule set to be applied to the intrusion prevention process from a first security rule set to a second security rule set based on a result of performing the security check.
보안 검사의 수행결과에 기초하여 상기 침입방지 프로세스에 적용될 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경하는 단계는,
상기 보안 검사의 수행결과에 기초하여, 상기 제2보안 룰셋에 포함될 적어도 하나의 제2보안 룰을 결정하는 단계; 및
결정된 적어도 하나의 제2보안 룰을 상기 제1보안 룰셋에 신규로 추가하거나 상기 제1보안 룰셋에 포함된 적어도 하나의 제1보안 룰과 대체하여 상기 제2보안 룰셋을 특정하는 단계를 포함하는 네트워크 보안방법.
The method of claim 3,
The step of changing the applied security ruleset to be applied to the intrusion prevention process from the first security ruleset to the second security ruleset based on the result of the security check,
Determining at least one second security rule to be included in the second security rule set based on a result of performing the security check; And
Specifying the second security rule set by newly adding the determined at least one second security rule to the first security rule set or replacing the at least one first security rule included in the first security rule set. Security method.
결정된 적어도 하나의 제2보안 룰을 상기 제1보안 룰셋에 신규로 추가하거나 상기 제1보안 룰셋에 포함된 적어도 하나의 제1보안 룰과 대체하여 상기 제2보안 룰셋을 특정하는 단계는,
상기 제1보안 룰셋에 포함된 보안 룰들 중 사용된지 가장 오래된 순서대로 대체될 상기 적어도 하나의 제1보안 룰을 결정하는 단계를 포함하는 네트워크 보안방법.
The method of claim 4, wherein
The step of specifying the second security rule set by newly adding the determined at least one second security rule to the first security rule set or replacing the at least one first security rule included in the first security rule set,
Determining the at least one first security rule to be replaced in the oldest order of the security rules included in the first security ruleset.
상기 보안 검사의 수행결과에 따라 상기 적용 보안 룰셋에 포함될 보안 룰의 개수를 변경하는 단계를 더 포함하는 네트워크 보안방법.
The method of claim 3, wherein the network security method,
And changing the number of security rules to be included in the applied security rule set according to a result of performing the security check.
상기 네트워크 보안 시스템이, 상기 복수의 패킷 중 적어도 일부를 저장장치에 선택적으로 저장하는 단계는,
상기 네트워크 보안 시스템이, 상기 복수의 패킷들에 기초하여 상기 복수의 패킷이 형성하는 복수의 플로우를 생성하는 단계;
상기 네트워크 보안 시스템이, 생성된 상기 복수의 플로우에 대한 정보에 기초하여 상기 복수의 플로우 중 동일한 세션을 형성하는 적어도 하나의 세션 형성 플로우를 추출하는 단계; 및
추출된 상기 세션 형성 플로우에 기초하여 상기 복수의 패킷 중 적어도 일부를 특정하는 단계를 포함하는 네트워크 보안방법.
The method of claim 1,
In the network security system, selectively storing at least a portion of the plurality of packets in a storage device,
Generating, by the network security system, a plurality of flows formed by the plurality of packets based on the plurality of packets;
Extracting, by the network security system, at least one session establishment flow that forms the same session among the plurality of flows based on the generated information about the plurality of flows; And
Specifying at least a portion of the plurality of packets based on the extracted session establishment flow.
A computer program installed in a data processing apparatus and recorded on a medium for performing the method according to any one of claims 1 to 7.
상기 복수의 패킷들 중 적어도 일부를 저장장치에 선택적으로 저장하는 패킷 저장모듈;
상기 패킷 저장 프로세스를 통해 저장된 저장 패킷 중 적어도 일부에 대한 보안 검사를 수행하는 제어모듈; 및
상기 보안 검사의 수행 결과를 포함하는 리포트 문서를 생성하는 리포트 모듈을 포함하는 네트워크 보안 시스템.
An intrusion prevention module for performing an intrusion prevention process of passing only the allowed packets according to a preset security rule set among a plurality of packets received from the network;
A packet storage module for selectively storing at least some of the plurality of packets in a storage device;
A control module for performing a security check on at least some of the stored packets stored through the packet storing process; And
And a report module for generating a report document containing a result of performing the security check.
상기 보안 검사는,
소정의 주기마다 해당 주기 동안 저장된 저장 패킷을 대상으로 수행하는 주기 단위 검사, 상기 저장장치에 저장된 저장 패킷 전체 혹은 미리 지정된 기간동안 저장된 패킷에 대해 수행하는 업데이트 소급 검사, 사용자에 의해 지정된 소정의 기간 동안 저장된 저장 패킷을 대상으로 사용자가 지정한 룰들로 수행하는 사용자 지정 검사 및 상기 네트워크 보안 시스템이 결정하는 임의의 기간 동안 저장된 저장 패킷을 대상으로 수행하는 임의 기간 검사 중 적어도 하나를 포함하는 네트워크 보안 시스템.
The method of claim 9,
The security check,
Periodic inspection for performing storage packets stored for a predetermined period for each predetermined period, retrospective inspection for all the storage packets stored in the storage device or for packets stored for a predetermined period, and for a predetermined period designated by a user. At least one of a user-specified check performed on the stored storage packet with rules designated by the user and an arbitrary period check performed on the stored storage packet for an arbitrary period determined by the network security system.
상기 제어모듈은,
상기 보안 검사의 수행 결과에 기초하여 상기 침입방지 프로세스에 적용될 상기 적용 보안 룰셋을 제1보안 룰셋에서 제2보안 룰셋으로 변경하는 네트워크 보안시스템.
The method of claim 9,
The control module,
And changing the applied security rule set to be applied to the intrusion prevention process from a first security rule set to a second security rule set based on a result of performing the security check.
상기 패킷 저장모듈은,
상기 복수의 패킷들에 기초하여 상기 복수의 패킷이 형성하는 복수의 플로우를 생성하고, 생성된 상기 복수의 플로우에 대한 정보에 기초하여 상기 복수의 플로우 중 동일한 세션을 형성하는 적어도 하나의 세션 형성 플로우를 추출하고, 추출된 상기 세션 형성 플로우에 기초하여 상기 복수의 패킷 중 적어도 일부를 특정하는 네트워크 보안시스템.
The method of claim 9,
The packet storage module,
At least one session formation flow that generates a plurality of flows formed by the plurality of packets based on the plurality of packets, and forms the same session among the plurality of flows based on the generated information about the plurality of flows. Extracts and specifies at least a portion of the plurality of packets based on the extracted session establishment flow.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180055292A KR102174462B1 (en) | 2018-05-15 | 2018-05-15 | Method for network security and system performing the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180055292A KR102174462B1 (en) | 2018-05-15 | 2018-05-15 | Method for network security and system performing the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190130766A true KR20190130766A (en) | 2019-11-25 |
KR102174462B1 KR102174462B1 (en) | 2020-11-05 |
Family
ID=68730711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180055292A KR102174462B1 (en) | 2018-05-15 | 2018-05-15 | Method for network security and system performing the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102174462B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918393A (en) * | 2021-09-16 | 2022-01-11 | 盾构及掘进技术国家重点实验室 | Memory detection method for functional safety system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102594717B1 (en) | 2021-04-26 | 2023-10-26 | 주식회사 글로벌제조혁신네트웍 | Priority-centered selection document adoption system based on multiple search keywords and drive method of the Same |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050054414A (en) * | 2003-12-05 | 2005-06-10 | 한국전자통신연구원 | Method for dynamic filtering ip fragment attack fragment |
KR20050081439A (en) * | 2004-02-13 | 2005-08-19 | 엘지엔시스(주) | System of network security and working method thereof |
JP2008126888A (en) | 2006-11-22 | 2008-06-05 | Toyota Motor Corp | Device and method for fitting window glass |
KR20110019891A (en) | 2009-08-21 | 2011-03-02 | 삼성전자주식회사 | Remote date back-up method and remote data back-up system |
KR20160097907A (en) * | 2015-02-10 | 2016-08-18 | 엑사비스 주식회사 | System and providing method for network inspection saving packet |
-
2018
- 2018-05-15 KR KR1020180055292A patent/KR102174462B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050054414A (en) * | 2003-12-05 | 2005-06-10 | 한국전자통신연구원 | Method for dynamic filtering ip fragment attack fragment |
KR20050081439A (en) * | 2004-02-13 | 2005-08-19 | 엘지엔시스(주) | System of network security and working method thereof |
JP2008126888A (en) | 2006-11-22 | 2008-06-05 | Toyota Motor Corp | Device and method for fitting window glass |
KR20110019891A (en) | 2009-08-21 | 2011-03-02 | 삼성전자주식회사 | Remote date back-up method and remote data back-up system |
KR20160097907A (en) * | 2015-02-10 | 2016-08-18 | 엑사비스 주식회사 | System and providing method for network inspection saving packet |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918393A (en) * | 2021-09-16 | 2022-01-11 | 盾构及掘进技术国家重点实验室 | Memory detection method for functional safety system |
CN113918393B (en) * | 2021-09-16 | 2024-04-23 | 盾构及掘进技术国家重点实验室 | Memory detection method for functional safety system |
Also Published As
Publication number | Publication date |
---|---|
KR102174462B1 (en) | 2020-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11824875B2 (en) | Efficient threat context-aware packet filtering for network protection | |
KR102050089B1 (en) | System and method for network security performing adaptive rule-set setting | |
EP2289221B1 (en) | Network intrusion protection | |
US9060019B2 (en) | Out-of band IP traceback using IP packets | |
US7307999B1 (en) | Systems and methods that identify normal traffic during network attacks | |
CN108737447B (en) | User datagram protocol flow filtering method, device, server and storage medium | |
KR20120046891A (en) | Apparatus for sharing security information among network domains and method for the same | |
CN110166480B (en) | Data packet analysis method and device | |
KR101553264B1 (en) | System and method for preventing network intrusion | |
KR102174462B1 (en) | Method for network security and system performing the same | |
KR101684456B1 (en) | System and providing method for network inspection saving packet | |
KR101715107B1 (en) | System and providing method for retroactive network inspection | |
KR102120795B1 (en) | Method for network inspection saving packet adoptively and system performing the same | |
KR102584775B1 (en) | Abnormal behavior learning and detection system using regression security check and method therof | |
KR102023777B1 (en) | Method for network inspection saving packet and system performing the same | |
US20210067525A1 (en) | System and method for network security performing adaptive rule-set setting | |
Cheng et al. | A network-wide view-based detection and mitigation of a sophisticated Interest Flooding Attack | |
EP4080822B1 (en) | Methods and systems for efficient threat context-aware packet filtering for network protection | |
CN104348785A (en) | Method for preventing host PMTU attack in IPv6 network and device and system thereof | |
Alsaedi et al. | Flow-based reconnaissance attacks detection in SDN-based environment | |
KR20240065966A (en) | Method for network inspection storing data efficiently and system performing the same | |
KR20230017590A (en) | Method for blocking DDoS traffic for subscriber network | |
WO2022225951A1 (en) | Methods and systems for efficient threat context-aware packet filtering for network protection | |
Srilakshmi et al. | An improved IP traceback mechanism for network security | |
KR20100068508A (en) | Network control system and method of network control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |