KR101466944B1 - Method for controlling application data and network device thereof - Google Patents

Method for controlling application data and network device thereof Download PDF

Info

Publication number
KR101466944B1
KR101466944B1 KR1020130009129A KR20130009129A KR101466944B1 KR 101466944 B1 KR101466944 B1 KR 101466944B1 KR 1020130009129 A KR1020130009129 A KR 1020130009129A KR 20130009129 A KR20130009129 A KR 20130009129A KR 101466944 B1 KR101466944 B1 KR 101466944B1
Authority
KR
South Korea
Prior art keywords
application data
application
information
received
operating system
Prior art date
Application number
KR1020130009129A
Other languages
Korean (ko)
Other versions
KR20140096525A (en
Inventor
하성진
Original Assignee
주식회사 시큐아이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 시큐아이 filed Critical 주식회사 시큐아이
Priority to KR1020130009129A priority Critical patent/KR101466944B1/en
Publication of KR20140096525A publication Critical patent/KR20140096525A/en
Application granted granted Critical
Publication of KR101466944B1 publication Critical patent/KR101466944B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본발명은, 네트워크 디바이스 상에서 어플리케이션 데이터를 제어하는 방법 등에 관한 것으로서, 임의의 클라이언트 장치로부터 수신한 접속 요청 메시지 및 어플리케이션 데이터를 이용하여 운영체제 및 어플리케이션을 식별하고, 제어 정보에 적용하여 어플리케이션 데이터를 제어하여 모바일 기기 상에서 무제한적으로 사용되는 어플리케이션의 사용 및 접속 요청을 선별적으로 제어할 수 있다.The present invention relates to a method of controlling application data on a network device and the like. The operating system and application are identified using an access request message and application data received from an arbitrary client apparatus, It is possible to selectively control the use of unlimited applications and access requests on mobile devices.

Description

어플리케이션 데이터를 제어하는 방법 및 이를 위한 네트워크 디바이스{METHOD FOR CONTROLLING APPLICATION DATA AND NETWORK DEVICE THEREOF}[0001] METHOD FOR CONTROLLING APPLICATION DATA AND NETWORK DEVICE [0002] BACKGROUND OF THE INVENTION [0003]

본발명은, 어플리케이션 데이터를 제어하는 방법 및 이를 위한 네트워크 디바이스에 관한 것으로서, 특히 어플리케이션 및 운영체제를 모두 식별하여 어플리케이션 실행과 관련한 접속 등을 제어할 수 있는 방법 등에 관한 것이다.The present invention relates to a method of controlling application data and a network device therefor, and more particularly, to a method of identifying an application and an operating system to control connection and the like related to application execution.

인터넷의 발달로 인해 네트워크 보안 기술의 수요가 생겨났고, 1990년대 말부터 여러 보안 회사들은 네트워크 보안을 위해 방화벽, 가상사설망(VPN), 침입탐지 시스템(IDS), 침입방지 시스템(IPS), 안티바이러스, 안티스 팸, 메일보안 및 웹보안 등 다양한 보안솔루션을 제공하여 왔다.Since the late 1990s, several security companies have been using network security technologies such as firewalls, virtual private networks (VPNs), intrusion detection systems (IDS), intrusion prevention systems (IPS) , Anti-spam, email security, and web security.

또한, 네트워크 기반의 서비스를 제공하는 네트워크 기반 어플리케이션도 점차 그 종류가 다양해지고 대중화되고 있다. 이에 따라, 네트워크 기반의 어플리케이션을 네트워크 상에서 식별하여 제어하는 기술도 함께 발전하고 있다. 또한, 기존 방화벽 또는 UTM(Unified Threat Management) 장비에서 IP 주소 및 포트 정보를 기반으로 패킷을 허용하거나 차단하는 수준을 뛰어넘는 패킷의 데이터를 기반으로 어플리케이션을 제어할 수 있도록 제어 범위가 확대되고 있다.In addition, network-based applications that provide network-based services are becoming increasingly popular and popular. Accordingly, techniques for identifying and controlling network-based applications on a network are also developing. In addition, control is being extended to control applications based on data in packets that exceed the level of allowing or blocking packets based on IP address and port information in existing firewalls or Unified Threat Management (UTM) devices.

한편, 모바일 기기의 발달 및 대중화에 의해 네트워크 기반 어플리케이션을 사용하는 환경이 컴퓨터상의 Windows, Linux, MacOS, UNIX 와 같은 운영체제로부터 휴대폰 및 스마트폰에 탑재된 안드로이드(Android), iOS와 같은 운영체제로 확대되고 있다. 따라서 기존 UTM 장비와 같은 보안 장비에서 어플리케이션만을 식별하고 제어하는 방법을 가지고는 어플리케이션의 허용/차단 여부만을 판단하므로 허용된 어플리케이션이 인가되지 아니한 모바일 디바이스 상에서 사용되는 것에 대해서까지 제어하는 것은 한계가 있다.Meanwhile, due to the development and popularization of mobile devices, environments where network-based applications are used are expanded from operating systems such as Windows, Linux, MacOS, and UNIX on computers to operating systems such as Android and iOS have. Therefore, there is a limitation in controlling only the application used in the unauthorized mobile device, since it is determined whether the application is allowed / blocked only by identifying and controlling the application in the security device such as the existing UTM device.

본발명은 네트워크 기반의 어플리케이션이 인가된 디바이스에서 션별적으로 사용되도록 제어하는 방법을 제공하도록 한다.The present invention provides a method for controlling a network-based application to be used separately in an authorized device.

본발명은 네트워크 기반의 어플리케이션에 의해 발생된 데이터 패킷을 분석하여 어플리케이션 및 운영체제를 판별하여 해당 데이터 패킷을 제어하도록 한다.The present invention analyzes a data packet generated by a network-based application and determines an application and an operating system to control the corresponding data packet.

본발명의 일 실시예에 따른 네트워크 디바이스 상에서 어플리케이션 데이터를 제어하는 방법은, 임의의 클라이언트 장치로부터 접속 요청에 관한 메시지를 수신하는 단계; 상기 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 클라이언트 장치에 탑재된 운영체제를 식별하는 단계; 상기 임의의 클라이언트 장치로부터 어플리케이션 데이터를 수신하는 단계; 상기 수신한 어플리케이션 데이터를 이용하여 어플리케이션을 식별하는 단계; 및 상기 식별한 운영체제 정보 및 어플리케이션 정보를 상기 네트워크 장치에 기 저장된 제어 정보에 적용하여 상기 임의의 클라이언트 장치와 송수신되는 어플리케이션 데이터를 제어하는 단계를 포함한다.A method of controlling application data on a network device according to an embodiment of the present invention includes: receiving a message relating to a connection request from an arbitrary client device; Identifying an operating system installed in the arbitrary client apparatus based on the received connection request message; Receiving application data from any of the client devices; Identifying an application using the received application data; And applying the identified operating system information and application information to the control information pre-stored in the network device to control application data transmitted and received with the arbitrary client device.

본발명의 일 실시예에 따른 어플리케이션 데이터를 제어하는 네트워크 디바이스는, 임의의 클라이언트 장치로부터 접속 요청에 관한 메시지 및 어플리케이션 데이터를 수신하는 통신부; 상기 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 클라이언트 장치에 탑재된 운영체제를 식별하는 운영체제 식별부; 상기 수신한 어플리케이션 데이터를 이용하여 어플리케이션을 식별하는 어플리케이션 식별부; 어플리케이션 데이터를 제어하기 위한 제어 정보를 저장하는 저장부 및 상기 식별한 운영체제 정보 및 어플리케이션 정보를 상기 제어 정보에 적용하여 상기 임의의 클라이언트 장치와 송수신되는 어플리케이션 데이터를 제어하는 제어부를 포함한다.
A network device for controlling application data according to an embodiment of the present invention includes: a communication unit for receiving a message and application data related to a connection request from an arbitrary client apparatus; An operating system identification unit for identifying an operating system mounted on the arbitrary client apparatus based on a message related to the received connection request; An application identification unit for identifying an application using the received application data; A storage unit for storing control information for controlling application data, and a control unit for controlling application data transmitted and received by the arbitrary client apparatus by applying the identified operating system information and application information to the control information.

본발명에 따르면 데이터 패킷을 전송한 기기의 운영체제뿐만 아니라 어플리케이션도 식별하여 정교한 보안 처리가 가능하도록 한다.According to the present invention, not only an operating system of a device that transmitted a data packet but also an application can be identified to enable sophisticated security processing.

도 1은 본발명의 일 실시예에 따른 어플리케이션 데이터 제어 방법을 위한 시스템 구성도이다.
도 2a 내지 도 2c는 본발명의 일 실시예에 따른 어플리케이션 데이터 제어 방법에 있어서 사용되는 메시지 또는 데이터의 포맷을 나타낸다.
도 3은 본발명의 일 실시예에 따른 어플리케이션 데이터를 제어하는 네트워크 디바이스의 구성에 대한 블록도이다.
도 4는 본발명의 일 실시예에 따른 어플리케이션 데이터 제어 방법을 위한 순서도를 나타낸다.
1 is a system configuration diagram for an application data control method according to an embodiment of the present invention.
2A to 2C show a format of a message or data used in an application data control method according to an embodiment of the present invention.
3 is a block diagram of a configuration of a network device for controlling application data according to an embodiment of the present invention.
4 is a flowchart illustrating a method of controlling application data according to an exemplary embodiment of the present invention.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the detailed description of known functions and configurations incorporated herein will be omitted when it may unnecessarily obscure the subject matter of the present invention.

도 1은 본발명의 일 실시예에 따른 어플리케이션 데이터 제어 방법을 위한 시스템 구성도이다. 도 1을 참조하면, 적어도 하나의 클라이언트 장치(클라이언트 장치1, 클라이언트 장치2, 클라이언트 장치3)는 호스트(100)에 세션 연결을 위한 접속 요청을 전송하고, 해당하는 접속 요청에 관한 메시지는 네트워크 디바이스(200)를 통하여 통과 또는 차단될 수 있다. 본발명의 일 실시예에 따른 네트워크 디바이스(200)는 호스트(100)에 도달하는 접속 요청 메시지와 관련하여 해당 메시지가 발생한 기기의 운영체제를 식별할 수 있다. 또한, 네트워크 디바이스(200)는, 클라이언트 장치에서 실행되는 임의의 어플리케이션의 동작과 관련한 어플리케이션 데이터를 수신하고, 어플리케이션 데이터의 포맷 또는 규칙을 이용하여 어플리케이션도 식별할 수 있다. 네트워크 디바이스(200)는 식별한 운영체제 및 어플리케이션을 기반으로 해당 메시지를 차단하거나 통과시킬 수 있다. 1 is a system configuration diagram for an application data control method according to an embodiment of the present invention. Referring to FIG. 1, at least one client device (client device 1, client device 2, client device 3) transmits a connection request for session connection to the host 100, (Not shown). The network device 200 according to an embodiment of the present invention can identify the operating system of the device in which the corresponding message is generated with respect to the connection request message arriving at the host 100. [ In addition, the network device 200 can receive application data related to the operation of any application executed in the client device, and can also identify the application using the format or rule of the application data. The network device 200 may block or pass the corresponding message based on the identified operating system and application.

예컨대, 인스턴트 메시지를 송수신하기 위한 메신저 어플리케이션이 클라이언트1에 설치되어 있는 경우를 가정한다. 클라이언트1은 메신저 어플리케이션을 이용하여 호스트(100)에 접속 요청을 시도할 수 있다. 호스트(100)는 접속 요청 메시지 내의 SYN 패킷을 수신하고, 해당 패킷으로부터 클라이언트1에 탑재된 운영체제를 식별할 수 있다. SYN 패킷은 IP 헤더 정보 및 TCP 헤더 정보에 OS 마다 상이한 값을 갖는 정보를 포함할 수 있다. 도 2a는 IP 헤더의 포맷의 예시하고 도 2b는 TCP 헤더의 포맷을 예시한다. 도 2a를 참조하면, IP 헤더에 TOS(Type of Service), IHL(Internet Header Length), Identification, TTL(Time to live) 및 IP Flags 정보를 포함할 수 있다. TOS 는 서비스 유형을 나타내고, IHL 은 IP 헤더의 길이를 나타내고, Identification 은 fragmented packet 의 조합 번호를 나타내고, TTL은 datagram 이 유지되는 시간 또는 홉수를 나타내며, IP Flags 는 패킷의 fragement 유무에 대한 설정값을 나타낸다. 운영체제 별로 이러한 옵션에 대해 고유의 값을 설정할 수 있다. 운영체제가 다르더라도 해당 옵션에 대해 동일한 값을 설정할 수 있다. 예컨대, Windows7 및 Windows2000 운영체제에서는 SYN 패킷의 IP 헤더에 TTL이 128로서 설정될 수 있고, Linux kernel 2.4에서는 64로 설정될 수 있다. 본발명에 따른 네트워크 디바이스(200)는 SYN 패킷에 포함된 IP 헤더 정보를 이용하여 운영체제를 식별할 수 있다. For example, it is assumed that a messenger application for sending and receiving an instant message is installed in the client 1. [ The client 1 may attempt to make a connection request to the host 100 using the messenger application. The host 100 can receive the SYN packet in the connection request message and identify the operating system mounted on the client 1 from the packet. The SYN packet may include information having a different value for each OS in the IP header information and the TCP header information. Figure 2A illustrates the format of the IP header, and Figure 2B illustrates the format of the TCP header. Referring to FIG. 2A, the IP header may include a type of service (TOS), an Internet header length (IHL), an identification, a time to live (TTL), and IP flags. TTL represents the service type, IHL represents the length of the IP header, Identification represents the combination number of the fragmented packet, TTL represents the time or the number of times the datagram is maintained, and IP Flags represents the setting value for the presence / . You can set unique values for these options by operating system. Even if the operating system is different, you can set the same value for that option. For example, in the Windows 7 and Windows 2000 operating systems, the TTL may be set to 128 in the IP header of the SYN packet, and may be set to 64 in the Linux kernel 2.4. The network device 200 according to the present invention can identify the operating system using the IP header information included in the SYN packet.

한편, 도 2b를 참조하면 TCP 헤더에는 Window(Window Size), MSS(Maximum Segment Size), Timestamp, WS(Window Scale Factor), SACK(Selective Acknowledgement), NOP(NO Operation) 및 EOL(End Option List)를 포함할 수 있다. Window(Window Size)는 수신 측에서 받을 수 있는 윈도우의 사이즈, 즉, 데이터 사이즈를 나타내고, MSS(Maximum Segment Size)는 전송되는 TCP 데이터 세그먼트의 최대 사이즈를 나타내고, Timestamp는 데이터 세그먼트를 구별하기 위한 옵션이고, WS(Window Scale Factor)는 window size 를 스켈링하기 위한 옵션이고, SACK(Selective Acknowledgement)는 손실된 패킷에 대해서 선택적으로 재전송하기 위한 옵션이다. 예컨대, Windows7 의 경우 Window Size 가 8192로 설정되고, MSS는 1460, Windows scale 은 2로, SACK 은 permitted set으로 설정되며, NOT count는 3번으로 설정될 수 있다. 2B, the TCP header includes a window size, an MSS (Maximum Segment Size), a Timestamp, a Window Scale Factor (WS), a Selective Acknowledgment (SACK), a NO Operation (NOP) . ≪ / RTI > The Window (Window Size) represents the size of the window that can be received at the receiving side, that is, the data size. MSS (Maximum Segment Size) represents the maximum size of the TCP data segment to be transmitted. Timestamp is an option WS (Window Scale Factor) is an option for scaling window size, and SACK (Selective Acknowledgment) is an option for selective retransmission of lost packets. For example, in the case of Windows 7, the Window Size is set to 8192, the MSS is set to 1460, the Windows scale is set to 2, the SACK is set to permitted set, and the NOT count can be set to 3 times.

운영체제에 따라 일부 헤더 정보가 동일할 수 있으므로, 본발명에서는 운영체제를 식별할 수 있는 SYN 패킷의 가능한 모든 정보를 추출하여 운영체제를 최종적으로 판단할 수도 있다. Since some header information may be the same depending on the operating system, the present invention can finally determine the operating system by extracting all possible information of the SYN packet that can identify the operating system.

또한, 본발명에 따른 네트워크 디바이스(200)는 SYN 패킷을 수신한 후, SYN 패킷에 대한 응답 메시지(ack)를 클라이언트1에 전송할 수 있다. 클라이언트1은 ack에 대해 응답 메시지를 전송함으로써, 클라이언트1 및 호스트(100) 간의 세션이 연결될 수 있다. In addition, the network device 200 according to the present invention can transmit a response message (ack) to the client 1 after receiving the SYN packet. By transmitting a response message to the ack, the client 1 can connect the session between the client 1 and the host 100. [

다음에, 클라이언트1에서는 메신저 어플리케이션이 실행될 수 있고, 연결된 세션을 이용하여 호스트(100)와 통신하기 위한 어플리케이션 데이터를 전송할 수 있다. 본발명의 "어플리케이션 데이터"는 클라이언트1 내지 클라이언트3에 설치된 어플리케이션의 실행과 관련하여 발생하는 임의의 메시지를 포함할 수 있다. 본발명에서는 어플리케이션 데이터를 이용하여 어플리케이션을 식별한다. 구체적으로 TCP 또는 UDP 프로토콜에 의한 데이터 패킷의 페이로드에는 어플리케이션 별로 메시지에 일정한 포맷(형식) 또는 규칙이 존재할 수 있다. 예컨대, 도 2c 는 메신저 어플리케이션에서 전송된 메시지, 즉, 어플리케이션 데이터에 포함되는 정보의 일부를 예시한다. 도 2c 를 참조하면, MSN 어플리케이션에서는 호스트(100)에 접속 요청 메시지를 보낼 때 메시지에 “MSN 3 N 164” 라는 응답 포맷을 포함한 메시지를 전송할 수 있다. 다른 예로, Nate ON 이라는 어플리케이션에 의해 발생하는 어플리케이션 데이터는 “MESG 7 TYPING 1”라는 포맷을 포함하고, Yahoo 어플리케이션은 “YMSG 0011”라는 포맷을 포함할 수 있다. 본발명의 네트워크 디바이스(200)는 어플리케이션 데이터의 포맷 또는 규칙을 참조하여 어플리케이션을 식별할 수 있다. 만일 어플리케이션 데이터의 포맷이 새로운 포맷인 경우에는 해당 어플리케이션을 식별하지 못한 상태이므로 이에 대해서는 정책에 다라 차단/제한할 수 있다.Next, in the client 1, the messenger application can be executed and application data for communicating with the host 100 using the connected session can be transmitted. The "application data" of the present invention may include any message generated in connection with execution of an application installed in the clients 1 to 3. In the present invention, applications are identified using application data. Specifically, a payload of a data packet by the TCP or UDP protocol may have a certain format (format) or rule in the message for each application. For example, FIG. 2C illustrates a part of the information included in the message transmitted from the messenger application, that is, the application data. Referring to FIG. 2C, in the MSN application, when sending a connection request message to the host 100, a message including a response format of " MSN 3 N 164 " may be transmitted to the message. As another example, application data generated by an application called Nate ON may include a format called " MESG 7 TYPING 1 ", and a Yahoo application may include a format called " YMSG 0011 ". The network device 200 of the present invention can identify an application by referring to a format or rule of application data. If the format of the application data is a new format, the application can not be identified, so it can be blocked / restricted according to the policy.

네트워크 디바이스(200)가 클라이언트1의 운영체제 및 어플리케이션을 식별하면, 이후에 수신되는 어플리케이션 데이터의 송수신에 대해 허용 여부를 결정하여 어플리케이션 데이터를 제어할 수 있다. 이 때, 네트워크 디바이스(200)는 기 저장된 제어 정보를 이용할 수 있다. 제어 정보는 허용 가능한 메시지에 대한 일련의 정보의 집합을 포함할 수 있다. 예컨대, 제어 정보는, 출발지 IP 주소 및 포트 정보와 같은 출발지 정보, 도착지 IP 주소 및 포트 정보와 같은 도착지 정보, 운영체제 정보, 프로토콜 정보 또는 어플리케이션 정보의 집합이 테이블로 구성될 수 있다. 네트워크 디바이스(200)는 메시지가 제어 정보에 포함된 리스트에 포함되어 있는 경우 해당 어플리케이션 데이터에 대해 응답 메시지를 전송하여 이를 허용할 수 있다. 반대로, 어플리케이션 데이터가 제어 정보 내에 매칭되지 아니한 경우에는 어플리케이션 데이터를 차단할 수 있다. 예컨대, 출발지 정보, 도착지 정보, 포트정보 및 OS 정보가 제어 정보에 매칭되더라도 제어 정보에 존재하지 아니한 어플리케이션인 경우에는 이에 대해 차단할 수 있다. 이외에 네트워크 디바이스(200)에서 수행되는 어플리케이션 데이터의 제어 방법은 보안 장비에서 수행되는 통신 허용, 탐지 및 차단과 같은 공지의 방법이 수행될 수 있다. When the network device 200 identifies the operating system and the application of the client 1, the network device 200 can control the application data by determining whether or not to permit subsequent transmission and reception of the application data. At this time, the network device 200 can use the previously stored control information. The control information may comprise a set of information about an acceptable message. For example, the control information may include a destination information such as a source IP address and port information, destination information such as destination IP address and port information, operating system information, protocol information, or a set of application information. When the message is included in the list included in the control information, the network device 200 can transmit a response message to the application data and allow the response message. Conversely, if the application data is not matched within the control information, the application data can be blocked. For example, if the source information, the destination information, the port information, and the OS information are matched to the control information but are not present in the control information, the application can be blocked. In addition, the control method of the application data performed in the network device 200 may be performed by a known method such as communication allowance, detection and blocking performed in the security device.

이러한 방법에 의해, 본발명에서는 허용되는 어플리케이션에 관한 데이터라 하더라도 인가되지 아니한 클라이언트 장치1에서 어플리케이션 데이터가 수신된 경우에는 이를 차단시킬 수 있고, 네트워크 디바이스(200)는 클라이언트1에 대해 거부 메시지 등을 전송함으로써 어플리케이션 데이터를 차단할 수 있다. According to this method, in the present invention, even if the data on the permitted application is not received, the application device can block the application data when it is not received from the client device 1, and the network device 200 can transmit a reject message Application data can be blocked by transmitting.

한편, 본발명의 네트워크 디바이스(200)는 네트워크를 통하여 데이터를 송수신할 수 있는 임의의 장치로서, 본발명에서처럼 어플리케이션 데이터에 대해 제어 처리를 하는 것과 같이 보안 처리도 수행할 수 있는 UTM(Unified Treat Managemnt) 장비와 같이 통합적인 보안 관리를 수행할 수 있는 임의의 장치일 수 있다. 본발명의 네트워크 디바이스는 도 1에서 예시하는 바와 같이, 호스트(100)와 독립적으로 구성될 수 있지만, 실시예에 따라 호스트(100)에 포함되어 동작할 수 있으며 이 경우 본발명의 범위는 호스트(100) 및 네트워크 디바이스(200)에 모두 적용될 수 있다.
Meanwhile, the network device 200 of the present invention is an arbitrary device capable of transmitting and receiving data through a network. As in the present invention, the network device 200 is a UTM (Unified Treat Managemnt) capable of performing security processing, ) Equipment, or any other device capable of performing integrated security management. The network device of the present invention may be configured independently of the host 100 as illustrated in FIG. 1, but may be included in and operate on the host 100 according to an embodiment. In this case, 100 and the network device 200, respectively.

도 3은 본발명의 일 실시예에 따른 어플리케이션 데이터를 제어하는 네트워크 디바이스의 구성에 대한 블록도이다. 도 3을 참조하면, 본발명의 일 실시예에 따른 네트워크 디바이스(200)는 임의의 클라이언트 장치로부터 접속 요청에 관한 메시지 및 어플리케이션 데이터를 수신하는 통신부(210), 상기 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 기기에 탑재된 운영체제를 식별하는 운영체제 식별부(220), 상기 임의의 기기와 세션을 연결한 후 수신된 어플리케이션 데이터를 이용하여 어플리케이션을 식별하는 어플리케이션 식별부(230), 상기 네트워크 디바이스에서 설정된 제어 정보를 저장하는 저장부(240) 및 상기 식별한 운영체제 정보 및 어플리케이션 정보를 상기 제어 정보에 적용하여 상기 임의의 기기와 송수신되는 어플리케이션 데이터를 제어하는 제어부(250)를 포함할 수 있다.3 is a block diagram of a configuration of a network device for controlling application data according to an embodiment of the present invention. 3, a network device 200 according to an exemplary embodiment of the present invention includes a communication unit 210 for receiving a connection request message and application data from an arbitrary client apparatus, a message related to the connection request An application identification unit 230 that identifies an application using application data received after connecting a session with the arbitrary device, A storage unit 240 for storing control information set in the device, and a control unit 250 for controlling the application data transmitted / received to / from the arbitrary device by applying the identified operating system information and application information to the control information .

통신부(210)는 임의의 디바이스, 즉, 도 1의 클라이언트 장치들로부터 전송되는 메시지 또는 데이터를 수신하거나 이들에게 메시지를 전송할 수 있다. 클라이언트 장치들로부터 수신한 메시지는 예컨대, 최초의 접속 요청 시에 사용되는 세션 연결 요청 메시지일 수 있다. 또한, 세션 연결 요청 메시지의 수신 및 이에 대한 응답에 의해 세션이 연결된 이후에는 통신부(210)는 어플리케이션 데이터를 수신할 수 있다. 통신부(210)는 예컨대 메시지의 송수신을 위한 네트워크 인터페이스 카드(Network Interface Card) 로 구성될 수 있다.The communication unit 210 may receive messages or data transmitted from any device, i.e., the client devices of FIG. 1, or may transmit messages to them. The message received from the client devices may be, for example, a session connection request message used at the initial connection request. In addition, the communication unit 210 can receive the application data after the session is connected by receiving and responding to the session connection request message. The communication unit 210 may include a network interface card for transmitting and receiving messages, for example.

운영체제 식별부(220)는 통신부(210)에서 수신한 세션 연결 요청 메시지에 포함된 SYN 패킷으로부터 디바이스의 운영체제를 식별할 수 있다. 상술한 바와 같이, SYN 패킷에 포함된 IP 헤더 및 TCP 헤더 정보로부터 운영체제가 식별되는 모든 정보를 추출할 수 있고 이들을 조합하여 운영체제를 식별할 수 있다. The operating system identification unit 220 can identify the operating system of the device from the SYN packet included in the session connection request message received by the communication unit 210. As described above, it is possible to extract all information identifying the operating system from the IP header and the TCP header information included in the SYN packet, and combine them to identify the operating system.

어플리케이션 식별부(230)는 SYN 패킷의 수신 및 응답에 따라 클라이언트 장치 및 호스트 간에 세션이 연결된 후 수신되는 어플리케이션 데이터를 통하여 어플리케이션을 식별할 수 있다. 즉, 상술한 바와 같이, 어플리케이션을 식별하기 위해서는 어플리케이션 별로 사용되는 메시지의 형식 또는 규칙을 이용하여 해당 규칙이 어플리케이션 데이터의 페이로드에 포함되어있는 지를 판단할 수 있다. The application identification unit 230 can identify the application through the application data received after the session is connected between the client apparatus and the host according to the reception and response of the SYN packet. That is, as described above, in order to identify the application, it is possible to determine whether the corresponding rule is included in the payload of the application data by using the format or rule of the message used for each application.

저장부(240)는 본발명의 일 실시예에 따라 어플리케이션 데이터를 제어하기 위한 제어 정보를 저장할 수 있다. 제어 정보는 네트워크 장비에서 허용되는 복수의 데이터에 대한 출발지 정보, 도착지 정보, 운영체제 정보 또는 어플리케이션 정보의 집합이 테이블로서 구성될 수 있고, 해당 정보는 설정 및 변경 가능하다. 또한, 저장부(240)는, 운영체제 및 어플리케이션을 식별하는데 참조하기 위한 정보를 포함할 수 있다. 예컨대, 운영체제 별로 사용하는 SYN 패킷의 정보 또는 어플리케이션마다 사용하는 메시지 포맷 등일 수 있다.The storage unit 240 may store control information for controlling application data according to an embodiment of the present invention. The control information may be configured as a table of source information, destination information, operating system information, or a set of application information for a plurality of data allowed in the network equipment, and the information may be set and changed. In addition, the storage unit 240 may include information for referencing to identify the operating system and the application. For example, it may be information of a SYN packet used for each operating system or a message format used for each application.

제어부(250)는, 운영체제 식별부(220) 및 어플리케이션 식별부(230)에 의해 식별된 운영체제 및 어플리케이션 정보를 이용하여 어플리케이션 데이터의 제어 처리를 수행할 수 있다. 예컨대, 제어부(250)는, 기 저장된 제어 정보 중 일부에 상기 수신한 어플리케이션 데이터가 매칭된 경우에는 어플리케이션 데이터에 대해 응답 메시지를 통신부(210)가 전송하여 어플리케이션 데이터를 허용하도록 제어할 수 있고, 매칭되지 아니한 경우에는 이를 차단, 제한하기 위한 메시지를 전송하도록 제어할 수 있다.
The control unit 250 can perform control processing of application data using the operating system and application information identified by the operating system identifying unit 220 and the application identifying unit 230. [ For example, when the received application data is matched to a part of the previously stored control information, the control unit 250 may control the communication unit 210 to transmit a response message to the application data to allow the application data, If not, a message can be sent to block or restrict the message.

도 4는 본발명의 일 실시예에 따른 어플리케이션 데이터 제어 방법을 위한 순서도를 나타낸다.4 is a flowchart illustrating a method of controlling application data according to an exemplary embodiment of the present invention.

단계(S11)에서 클라이언트 장치로부터 접속 요청에 관한 메시지를 수신한다. 접속 요청에 관한 메시지는 세션 연결 요청 메시지로서 SYN 패킷을 포함할 수 있다. 한편, 본명세서에서는 클라이언트 장치에서 먼저 접속 요청 메시지를 전송하는 경우, 즉, 수동적 운영체제 식별(Passive OS fingerprinting)에 대해 설명하지만 이에 한정되지 않는다. 예컨대, 능동적 운영체제 식별에 따라 네트워크 디바이스에서 클라이언트 장치에 먼저 접속 요청 메시지를 전송하고, 이에 따른 응답 메시지를 수신하면 이를 이용하여 운영체제를 식별할 수 있다.In step S11, a message relating to the connection request is received from the client apparatus. The message regarding the connection request may include a SYN packet as a session connection request message. Meanwhile, in the present specification, passive OS fingerprinting is described in the case of transmitting a connection request message to the client device first, but the present invention is not limited thereto. For example, according to the active operating system identification, the network device first transmits an access request message to the client device, and when receiving the response message, the operating system can be identified using the response message.

단계(S12)에서 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 클라이언트 장치에 탑재된 운영체제를 식별한다. 접속 요청에 관한 메시지에 포함된 SYN 패킷 정보로서 운영체제가 식별 가능한 정보를 추출하여 운영체제 정보가 결정될 수 있다. And identifies an operating system mounted on the arbitrary client apparatus based on the message related to the connection request received in step S12. Operating system information can be determined by extracting information identifiable by the operating system as SYN packet information included in the message relating to the connection request.

운영체제가 식별되면 접속요청에 관한 메시지에 대해 응답 메시지를 주고받고 이에 따라 클라이언트 장치 및 호스트 간에 세션이 연결된다 (S13).When the operating system is identified, a response message is sent to a message related to the connection request, and a session is established between the client device and the host (S13).

단계(S14)에서 연결된 세션을 이용하여 임의의 클라이언트 장치로부터 어플리케이션 데이터를 수신하고 이를 이용하여 어플리케이션을 식별한다. 어플리케이션 데이터는 상기 임의의 클라이언트 장치 상에서 동작하는 어플리케이션의 실행과 관련하여 발생한 메시지로서 각 어플리케이션 별로 규칙적으로 사용하는 메시지 포맷을 포함할 수 있다. In step S14, application data is received from any client device using the connected session, and the application is identified using the received application data. The application data may include a message format used regularly for each application as a message generated in connection with execution of an application operating on the arbitrary client apparatus.

단계(S15)에서 운영체제 정보 및 어플리케이션 정보를 상기 네트워크 장치에 기 저장된 제어 정보에 적용하여 상기 임의의 클라이언트 장치와 송수신되는 어플리케이션 데이터를 제어한다. 어플리케이션 데이터의 제어 방법은 실시예에 따라 공지의 방법이 이용될 수 있다. In step S15, operating system information and application information are applied to the control information previously stored in the network device to control application data transmitted / received to / from the arbitrary client device. The control method of the application data may be a known method according to the embodiment.

이상, 도 4를 참조하며 본발명의 일 실시예에 따른 어플리케이션 데이터의 제어 방법에 대해 설명하였다. 본발명에 따른 어플리케이션 데이터 제어 방법은 전자적 기록 코드로 컴퓨터 판독 가능한 기록 매체에 기록되어 컴퓨터 또는 네트워크 디바이스 등에서 실행될 수 있으며, 본발명의 범위는 그 실행되는 임의의 장치에 대해서도 적용될 수 있다.
The method of controlling application data according to an embodiment of the present invention has been described above with reference to FIG. The method for controlling application data according to the present invention can be recorded in a computer-readable recording medium with an electronic recording code and executed in a computer or a network device or the like, and the scope of the present invention can be applied to any device in which it is executed.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 설명하였다. 그러나, 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것으로, 본 발명의 범위가 상기의 실시예에 한정되는 것은 아니며, 여러 가지 다른 형태로 변형이 가능함은 물론이다.
The preferred embodiments of the present invention have been described above. It is to be understood, however, that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and alternative arrangements included within the spirit and scope of the appended claims. Of course.

Claims (10)

네트워크 디바이스 상에서 어플리케이션 데이터를 제어하는 방법에 있어서,
임의의 클라이언트 장치로부터 접속 요청에 관한 메시지를 수신하는 단계;
상기 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 클라이언트 장치에 탑재된 운영체제를 식별하는 단계;
상기 임의의 클라이언트 장치로부터 어플리케이션 데이터를 수신하는 단계;
상기 수신한 어플리케이션 데이터를 이용하여 어플리케이션을 식별하는 단계; 및
상기 식별한 운영체제 정보 및 어플리케이션 정보를 상기 네트워크 디바이스에 기 저장된 제어 정보에 적용하여 상기 임의의 클라이언트 장치와 송수신되는 어플리케이션 데이터를 제어하는 단계를 포함하는 방법.
A method for controlling application data on a network device,
Receiving a message relating to a connection request from any client device;
Identifying an operating system installed in the arbitrary client apparatus based on the received connection request message;
Receiving application data from any of the client devices;
Identifying an application using the received application data; And
Applying the identified operating system information and application information to the control information pre-stored in the network device, and controlling application data transmitted and received with the arbitrary client device.
제1항에 있어서,
상기 접속 요청에 관한 메시지는 세션 연결 요청 메시지를 포함하고,
상기 수신한 어플리케이션 데이터는 상기 임의의 클라이언트 장치 상에서 동작하는 어플리케이션의 실행과 관련하여 발생한 메시지를 포함하는 방법.
The method according to claim 1,
Wherein the message relating to the connection request includes a session connection request message,
Wherein the received application data includes a message generated in connection with execution of an application running on any of the client devices.
제1항에 있어서,
상기 운영체제를 식별하는 단계는,
상기 접속 요청에 관한 메시지에 포함된 SYN 패킷에 포함된 적어도 하나의 정보를 이용하는 방법.
The method according to claim 1,
Wherein identifying the operating system comprises:
And using at least one information included in a SYN packet included in the connection request message.
제1항에 있어서,
상기 어플리케이션을 식별하는 단계는,
어플리케이션 별로 사용되는 메시지의 형식 또는 규칙을 이용하여 어플리케이션을 식별하는 방법.
The method according to claim 1,
Wherein identifying the application comprises:
A method of identifying an application using the format or rules of a message used by the application.
제1항에 있어서,
상기 기 저장된 제어 정보는 상기 네트워크 장비에서 허용되는 복수의 데이터에 대한 출발지 정보, 도착지 정보, 운영체제 정보 또는 어플리케이션 정보의 집합으로 구성되는 방법.
The method according to claim 1,
Wherein the pre-stored control information comprises a set of source information, destination information, operating system information, or application information for a plurality of data allowed in the network equipment.
제1항에 있어서,
상기 어플리케이션 데이터의 제어는, 상기 기 저장된 제어 정보 중 일부에 상기 수신한 어플리케이션 데이터가 매칭된 경우 상기 어플리케이션 데이터를 허용하고, 상기 수신한 어플리케이션 데이터가 매칭되지 아니한 경우 상기 어플리케이션 데이터를 차단하는 방법.
The method according to claim 1,
Wherein the control of the application data permits the application data when the received application data is matched to a part of the previously stored control information and blocks the application data when the received application data is not matched.
어플리케이션 데이터를 제어하는 네트워크 디바이스에 있어서,
임의의 클라이언트 장치로부터 접속 요청에 관한 메시지 및 어플리케이션 데이터를 수신하는 통신부;
상기 수신한 접속 요청에 관한 메시지를 기반으로 상기 임의의 클라이언트 장치에 탑재된 운영체제를 식별하는 운영체제 식별부;
상기 수신한 어플리케이션 데이터를 이용하여 어플리케이션을 식별하는 어플리케이션 식별부;
어플리케이션 데이터를 제어하기 위한 제어 정보를 저장하는 저장부 및
상기 식별한 운영체제 정보 및 어플리케이션 정보를 상기 제어 정보에 적용하여 상기 임의의 클라이언트 장치와 송수신되는 어플리케이션 데이터를 제어하는 제어부를 포함하는, 네트워크 디바이스.
A network device for controlling application data,
A communication unit for receiving a message relating to a connection request and application data from an arbitrary client apparatus;
An operating system identification unit for identifying an operating system mounted on the arbitrary client apparatus based on a message related to the received connection request;
An application identification unit for identifying an application using the received application data;
A storage unit for storing control information for controlling application data;
And a control unit for applying the identified operating system information and application information to the control information and controlling application data transmitted / received to / from the arbitrary client apparatus.
제7항에 있어서,
상기 접속 요청에 관한 메시지는 세션 연결 요청 메시지를 포함하고,
상기 수신한 어플리케이션 데이터는 상기 임의의 클라이언트 장치 상에서 동작하는 어플리케이션의 실행과 관련하여 발생한 메시지를 포함하는, 네트워크 디바이스.
8. The method of claim 7,
Wherein the message relating to the connection request includes a session connection request message,
Wherein the received application data includes a message generated in connection with execution of an application operating on any of the client devices.
제7항에 있어서,
상기 제어부는, 상기 기 저장된 제어 정보 중 일부에 상기 수신한 어플리케이션 데이터가 매칭된 경우 상기 어플리케이션 데이터를 허용하고, 상기 수신한 어플리케이션 데이터가 매칭되지 아니한 경우 상기 어플리케이션 데이터를 차단하는, 네트워크 디바이스.
8. The method of claim 7,
Wherein the control unit permits the application data when the received application data matches a part of the previously stored control information and blocks the application data when the received application data does not match.
제7항에 있어서,
상기 저장부는, 기 저장된 제어 정보로서, 상기 네트워크 디바이스에서 허용되는 복수의 데이터에 대한 출발지 정보, 도착지 정보, 운영체제 정보 또는 어플리케이션 정보의 집합을 포함하는 것을 특징으로 하는, 네트워크 디바이스.
8. The method of claim 7,
Wherein the storage unit is a pre-stored control information, and includes a set of source information, destination information, operating system information, or application information for a plurality of data allowed in the network device.
KR1020130009129A 2013-01-28 2013-01-28 Method for controlling application data and network device thereof KR101466944B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130009129A KR101466944B1 (en) 2013-01-28 2013-01-28 Method for controlling application data and network device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130009129A KR101466944B1 (en) 2013-01-28 2013-01-28 Method for controlling application data and network device thereof

Publications (2)

Publication Number Publication Date
KR20140096525A KR20140096525A (en) 2014-08-06
KR101466944B1 true KR101466944B1 (en) 2014-12-03

Family

ID=51744356

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130009129A KR101466944B1 (en) 2013-01-28 2013-01-28 Method for controlling application data and network device thereof

Country Status (1)

Country Link
KR (1) KR101466944B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060083918A (en) * 2005-01-18 2006-07-21 마이크로소프트 코포레이션 Application object as primitive of operating system
KR20120021054A (en) * 2010-08-31 2012-03-08 삼성전자주식회사 Method and apparatus for providing application service and thereof system
KR20120089000A (en) * 2011-02-01 2012-08-09 삼성전자주식회사 Apparatus and method for providing application auto install function in digital device
KR101172885B1 (en) * 2008-12-18 2012-08-10 한국전자통신연구원 Apparatus and method for providing device profile using device identifier

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060083918A (en) * 2005-01-18 2006-07-21 마이크로소프트 코포레이션 Application object as primitive of operating system
KR101172885B1 (en) * 2008-12-18 2012-08-10 한국전자통신연구원 Apparatus and method for providing device profile using device identifier
KR20120021054A (en) * 2010-08-31 2012-03-08 삼성전자주식회사 Method and apparatus for providing application service and thereof system
KR20120089000A (en) * 2011-02-01 2012-08-09 삼성전자주식회사 Apparatus and method for providing application auto install function in digital device

Also Published As

Publication number Publication date
KR20140096525A (en) 2014-08-06

Similar Documents

Publication Publication Date Title
US10305904B2 (en) Facilitating secure network traffic by an application delivery controller
US11683401B2 (en) Correlating packets in communications networks
US9954873B2 (en) Mobile device-based intrusion prevention system
CN107852359B (en) Security system, communication control method, and computer program
US8990573B2 (en) System and method for using variable security tag location in network communications
JP4195480B2 (en) An apparatus and method for managing and controlling the communication of a computer terminal connected to a network.
US20160173452A1 (en) Multi-connection system and method for service using internet protocol
EP2991292A1 (en) Network collaborative defense method, device and system
MX2008012786A (en) Session persistence on a wireless network.
US20140304817A1 (en) APPARATUS AND METHOD FOR DETECTING SLOW READ DoS ATTACK
US10397225B2 (en) System and method for network access control
US10348687B2 (en) Method and apparatus for using software defined networking and network function virtualization to secure residential networks
US8984619B2 (en) Methods, systems, and computer readable media for adaptive assignment of an active security association instance in a redundant gateway configuration
WO2019096104A1 (en) Attack prevention
CN111641545B (en) Tunnel detection method and device, equipment and storage medium
KR101971995B1 (en) Method for decryping secure sockets layer for security
JP4014599B2 (en) Source address spoofed packet detection device, source address spoofed packet detection method, source address spoofed packet detection program
KR101466944B1 (en) Method for controlling application data and network device thereof
US20170322862A1 (en) Information processing apparatus, method, and medium
KR100539760B1 (en) System and method for inducing installing agent using internet access control
US10616094B2 (en) Redirecting flow control packets
EP2204953A1 (en) Method, apparatus and system for realizing dynamic correlation of control plane traffic rate
KR101490227B1 (en) Method and apparatus for controlling traffic
US20230074985A1 (en) Communication Device, Communication Management System, Communication Management Method, and Non-Transitory Computer Readable Storage Medium
US10469377B2 (en) Service insertion forwarding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181106

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191107

Year of fee payment: 6