KR20110040152A - Method for reverse tracking of attaker packet and system for the same - Google Patents

Method for reverse tracking of attaker packet and system for the same Download PDF

Info

Publication number
KR20110040152A
KR20110040152A KR1020090097313A KR20090097313A KR20110040152A KR 20110040152 A KR20110040152 A KR 20110040152A KR 1020090097313 A KR1020090097313 A KR 1020090097313A KR 20090097313 A KR20090097313 A KR 20090097313A KR 20110040152 A KR20110040152 A KR 20110040152A
Authority
KR
South Korea
Prior art keywords
packet
attacker
router
server
hash
Prior art date
Application number
KR1020090097313A
Other languages
Korean (ko)
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 KR1020090097313A priority Critical patent/KR20110040152A/en
Publication of KR20110040152A publication Critical patent/KR20110040152A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/146Tracing the source of attacks

Landscapes

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

Abstract

PURPOSE: A method for reversely tracking an attacker packet and a system therefore are provided to sense the attacker packet by using a hash function and a bloom filter. CONSTITUTION: A first router(100) receives a hash information list of an attacker packet from a server(300) which reversely track an attack path of the attacker packet in a network. A hash value is extracted by applying a hash function to a reception packet. It is determined whether the information corresponding to the extracted hash value exists in the hash information list. The reception packet is determined to the attacker packet according to the information corresponding to the extracted hash value. The determination result is transmitted to the server.

Description

공격자 패킷 역추적 방법 및 이를 위한 시스템{Method for reverse tracking of attaker packet and System for the same}Method for reverse tracking of attaker packet and System for the same}

본 발명은 인터넷 환경에서 특정 데이터와, 시스템 및 서비스의 해킹에 대하여 이를 추적하기 위한 공격자 패킷 역추적 방법 및 이를 위한 시스템에 관한 것이다.The present invention relates to an attacker packet traceback method for tracking specific data and hacking of systems and services in the Internet environment, and a system therefor.

본 발명은 지식경제부의 IT 성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호:2007-S-022-03, 과제명:All-IP 환경의 지능형 사이버 공격 감시 및 추적 시스템 개발].The present invention is derived from a study conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy. [Task Management Number: 2007-S-022-03, Title: Intelligent Cyber Attack Monitoring and Tracking System in All-IP Environment] Development].

인터넷을 이용한 각종 해킹 및 사이버 범죄가 급증하면서 시스템 및 네트워크를 보호하기 위한 보안 강화 시스템의 한 방편으로 해커의 실제 위치를 추적하는 역추적 시스템이 개발되고 있다.As a variety of hacking and cyber crimes using the Internet are rapidly increasing, a backtracking system that tracks the actual location of hackers is being developed as a security enhancement system to protect the system and network.

상술한 역추적 기술은 IP 패킷의 실제 송신 근원지를 찾는 과정이다.The above traceback technique is a process of finding the actual transmission source of the IP packet.

패킷이 전송되는 과정에서 IP 패킷 헤더에는 발신자의 IP 주소 값을 기록하게 되어 있으나, 공격자는 실제 패킷이 전송되는 근원지 IP를 변경(IP Spoofing)하여 전송할 수 있다.Although the sender's IP address value is recorded in the IP packet header in the process of transmitting the packet, the attacker can change the source IP where the actual packet is transmitted (IP Spoofing) and transmit it.

따라서 수신자의 측면에서 수신된 IP 패킷의 헤더에 기록된 근원지 IP 값만을 가지고는 실제 패킷의 송신지 주소값을 확인하기 어렵게 되어 있다.Therefore, only the source IP value recorded in the header of the IP packet received from the receiver side makes it difficult to identify the source address of the actual packet.

기존의 역추적 기술을 살펴보면, 우선 근원지 시스템에서 패킷의 회신 주소가 부적합한 경우 수신된 패킷을 폐기하는 등의 필터링 과정을 수행할 수 있다. 이 방식은 기존의 대부분의 라우터 및 방화벽 등에 포함되어 있는 기술이지만 모든 개별 패킷에 대해 회귀 주소에 해당하는 리턴 주소 값의 적합성 여부를 매번 판별해야 하기 때문에 해당 라우터 또는 방화벽 시스템의 성능을 저하시킬 수 있다는 단점이 있다.Looking at the existing traceback technology, first, if the reply address of the packet is inappropriate in the originating system, a filtering process such as discarding the received packet may be performed. This is a technique included in most existing routers and firewalls, but it may degrade the performance of the router or firewall system because every return of the return address value corresponding to the regression address must be determined for every individual packet. There are disadvantages.

다른 방법으로 에이전트 이동방식을 이용한 역추적 방법이 있는데, 이 방법은 공격당한 시스템에 에이전트를 설치하여 공격당한 시스템의 로그 정보를 분석해 공격패킷 정보를 획득하는 것이다.Alternatively, there is a traceback method using the agent movement method, which installs an agent on the attacked system and analyzes the log information of the attacked system to obtain attack packet information.

상기 방법은 공격한 시스템이 n개의 경로상의 하나라면 공격당한 시스템에 에이전트를 설치하여 로그 정보를 분석해 공격패킷 정보를 획득하는 과정을 최종 네트워크 침입자의 첫째 경유지 서버까지 반복함으로써 네트워크 침입자의 경유지를 추적할 수 있다. 따라서 이 방법은 공격자의 근원지까지 추적하는데 많은 시간과 자원을 소모하므로 비효율적인 문제가 존재한다. If the attacked system is one of the n paths, the agent is installed on the attacked system to analyze the log information and to obtain attack packet information by repeating the process of obtaining the attack packet information to the first waypoint server of the final network intruder. Can be. Therefore, this method consumes a lot of time and resources to track down the attacker's source, which causes inefficiency.

또 다른 방법으로, 각각의 네트워크의 에지 라우터에서 내부로 접근하는 모든 패킷에 대한 로그 정보를 기록하도록 해서 공격자의 IP 주소 변경에 관계없이 해당 패킷에 대한 역추적을 가능하게 하는 것을 제안하고 있으나, 이 방법 또한 다수의 에지 라우터에 기록된 로그 정보를 모두 분석해야 함으로 역추적 과정에 많은 시간이 소모되는 문제점이 존재한다.As another method, it is proposed that the edge router of each network records log information about all packets accessed internally so that the traceback of the packets is possible regardless of the attacker's IP address change. In addition, since the log information recorded in the plurality of edge routers must be analyzed, there is a problem in that the backtracking process takes a lot of time.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 해쉬 함수와 블룸 필터 방식을 이용하여 망 내에서 발생된 공격자 패킷을 감지하고, 해당 공격자 패킷을 수신한 라우터의 경로를 분석하여 상기 공격자 패킷의 공격 경로를 정확하게 찾아내는 공격자 패킷 역추적 방법 및 이를 위한 시스템에 관한 것이다The present invention is to solve the above problems, by using a hash function and the bloom filter method to detect the attacker packet generated in the network, and analyzes the path of the router receiving the attacker packet to attack the attacker packet The present invention relates to an attacker packet traceback method for accurately finding a path and a system therefor.

상기 목적을 달성하기 위한 본 발명에 따른 공격자 패킷 판정을 위한 제1 라우터의 공격자 패킷 역추적 방법은, 제1 라우터가 망 내의 공격자 패킷의 공격 경로를 역추적하는 서버로부터 공격자 패킷들의 해쉬 정보 목록을 수신하는 단계와; 수신 패킷에 대해 해쉬 함수를 적용하여 해쉬값을 추출하는 단계와; 상기 해쉬 정보 목록 내에서 상기 추출된 해쉬값에 해당하는 정보가 존재하는지 검사하는 단계와; 상기 검사 결과 존재하면, 상기 수신 패킷을 공격자 패킷으로 판정하는 단계와; 상기 판정 결과를 상기 서버로 통지하는 단계;를 포함하여 이루어진다.In order to achieve the above object, an attacker packet backtracking method of a first router for determining an attacker packet according to the present invention includes a hash information list of attacker packets from a server that the first router traces back the attack path of an attacker packet in a network. Receiving; Extracting a hash value by applying a hash function to the received packet; Checking whether information corresponding to the extracted hash value exists in the hash information list; If the result of the check is present, determining the received packet as an attacker packet; And notifying the server of the determination result.

이때, 상기 수신 단계는, 제1 라우터의 해쉬 함수에 대한 정보를 상기 서버로 송신하는 단계와; 상기 서버로부터 상기 제1 라우터의 해쉬 함수와 관련된 공격자 패킷들의 해쉬 정보 목록을 수신하는 단계;를 포함하여 이루어진다.In this case, the receiving step may include transmitting information on a hash function of a first router to the server; And receiving a hash information list of attacker packets related to a hash function of the first router from the server.

또한, 상기 검사 단계는 블룸 필터(Bloom Filter)를 이용하여 상기 해쉬 정보 목록 내에서 상기 추출된 해쉬값에 해당하는 정보가 존재하는지 검사할 수 있다.In addition, the checking step may check whether information corresponding to the extracted hash value exists in the hash information list by using a bloom filter.

또한, 본 발명에 따른 공격자 패킷 역추적 방법은, 상기 서버로부터 상기 망 내의 제2 라우터의 정보를 수신하는 단계와; 상기 판정된 공격자 패킷의 라우팅을 중지하는 단계와; 상기 공격자 패킷을 제2 라우터로 송신하는 단계;를 더 포함하여 이루어진다. 이때, 제2 라우터는 상기 공격자 패킷에 대해 싱크홀(Sinkhole) 처리하고, 상기 서버의 공격자 패킷 공격 경로 분석을 위해 상기 공격자 패킷을 송신한 제1 라우터의 식별자(ID)를 상기 서버로 송신할 수 있다.In addition, the attacker packet traceback method according to the present invention comprises the steps of: receiving information of a second router in the network from the server; Stopping routing of the determined attacker packet; And transmitting the attacker packet to a second router. In this case, the second router may sinkhole the attacker packet, and transmit an identifier (ID) of the first router that transmitted the attacker packet to the server for analyzing an attacker packet attack path of the server. have.

또한, 본 발명에 따른 공격자 패킷의 공격 경로를 역추적하는 서버의 공격자 패킷 역추적 방법은, 상기 서버가 망 내에서 상기 공격자 패킷 검사를 위한 제1 라우터 및 상기 제1 라우터에서 검사된 공격자 패킷 관리를 위한 제2 라우터를 선정하는 단계와; 제1 라우터로 기 구비된 공격자 패킷들의 해쉬 정보 목록을 송신하는 단계와; 제2 라우터를 통해 제1 라우터의 수신 패킷이 공격자 패킷으로 판정된 결과를 수신하는 단계와; 상기 공격자 패킷이 수신된 제1 라우터의 경로를 파악하여 상기 공격자 패킷을 역추적하는 단계;를 포함하여 이루어진다.In addition, the attacker packet backtracking method of the server to trace back the attack path of the attacker packet according to the present invention, the server manages the first router for inspecting the attacker packet in the network and the attacker packet checked in the first router Selecting a second router for the network; Transmitting a hash information list of attacker packets provided to the first router; Receiving a result of determining that the received packet of the first router is an attacker packet through the second router; And tracing back the attacker packet by identifying a path of the first router from which the attacker packet was received.

또한, 본 발명에 따른 공격자 패킷 역추적 시스템은, 수신되는 패킷의 해쉬값을 추출하고, 블룸 필터(Bloom Filter)를 이용하여 기 구비된 공격자 패킷들의 해쉬 정보 목록 내에 상기 추출된 해쉬값에 해당하는 정보가 존재하면, 상기 수신 패킷을 공격자 패킷으로 판정하고, 상기 공격자 패킷을 송신하는 제1 라우터와; 제1 라우터로부터 상기 공격자 패킷을 수신 및 싱크홀(Sinkhole) 처리하고, 제1 라우터의 공격자 패킷 판정 결과를 송신하는 제2 라우터와; 제2 라우터로부터 제1 라우터의 공격자 패킷 판정 결과가 수신되면, 제1 라우터의 경로를 파악하여 상기 공격 자 패킷의 공격 경로를 역추적하는 서버;를 포함하여 이루어진다.In addition, the attacker packet traceback system according to the present invention, extracts the hash value of the received packet, and corresponds to the extracted hash value in the hash information list of the attacker packets provided by using a Bloom Filter (Bloom Filter) A first router, if the information is present, determining the received packet as an attacker packet and transmitting the attacker packet; A second router for receiving and sinking the attacker packet from the first router and transmitting a result of determining the attacker packet of the first router; When the attacker packet determination result of the first router is received from the second router, the server to determine the path of the first router to trace back the attack path of the attacker packet;

본 발명에 따른 공격자 패킷 역추적 방법 및 이를 위한 시스템은, 기존의 로깅기법의 역추적 시스템보다 훨씬 간소화된 방식을 통해 전체 망을 관리/제어할 수 있으므로 공격에 대한 대응이 용이한 효과가 있다. The attacker packet backtracking method and system for the same according to the present invention can manage / control the entire network in a much simpler manner than the backtracking system of the conventional logging method, so that it is easy to respond to an attack.

또한, 최소화된 블룸 필터 값으로 장기간 공격자 패킷에 대한 정보를 저장할 수 있으며, 공격 발생 시 단위 망 내의 라우터에 대한 관리 구조를 제공하기 때문에 보다 효율적인 공격 탐지 및 추적 기능을 제공할 수 있는 효과가 있다.In addition, the information on the attacker packet can be stored for a long time with a minimized bloom filter value, and when an attack occurs, it provides an effective attack detection and tracking function because it provides a management structure for the router in the unit network.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다. 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, in describing in detail the operating principle of the preferred embodiment of the present invention, if it is determined that the detailed description of the related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명에 따른 공격자 패킷 역추적 시스템을 나타낸 도면이다.1 is a diagram illustrating an attacker packet traceback system according to the present invention.

도 1을 참조하면, 본 발명에 따른 시스템(400)은, 수신 패킷에 대한 공격자 패킷 판정을 하는 제1 라우터(100)와, 제1 라우터(100)의 공격자 패킷에 대해 싱크홀(Sinkhoke) 처리하는 제2 라우터(200) 및 상기 공격자 패킷이 발생된 제1 라우 터(100)의 경로를 분석하여 상기 공격자 패킷을 발생한 공격 호스트(500)의 경로를 역추적하는 역추적 서버(300)를 포함하여 구성된다.Referring to FIG. 1, the system 400 according to the present invention may perform a sinkhole processing on an attacker packet of a first router 100 and an attacker packet of an incoming packet. The second router 200 and the tracer server 300 which traces back the path of the attacking host 500 that generated the attacker packet by analyzing the path of the first router 100 where the attacker packet is generated. It is configured by.

제1 라우터(100)는 네트워크 트래픽을 송신 및 수신하는 중간 네트워크 장비에 해당한다.The first router 100 corresponds to intermediate network equipment that transmits and receives network traffic.

제1 라우터(100)는 BGP 프로토콜을 이용하여 전체적인 패킷의 전송 경로 등을 파악하며, 패킷의 IP 헤더에 기록된 수신자 IP 주소를 보고 RIP, OSPF 등의 경로설정 방식을 이용하여 패킷을 전달하는 기능을 제공한다.The first router 100 grasps the transmission path of the entire packet using the BGP protocol, and delivers the packet using a routing method such as RIP or OSPF by looking at the recipient IP address recorded in the IP header of the packet. To provide.

싱크홀 처리를 수행하는 제2 라우터(200)는 역추적 서버(300)에 의해 선정되고, 제1 라우터(100)의 일반적인 라우터의 기능을 수행하면서, 별도로 전체 네트워크에 대한 공격 호스트(400)의 공격이 발생하였을 경우 제1 라우터(100)로부터 공격자 패킷을 전송토록 하여 DDoS 발생시 공격자 패킷에 대한 수집 기능을 제공하면서도 이에 대한 분석 및 필터링 및 역추적 등의 부가적 기능을 수행한다.The second router 200 that performs the sinkhole process is selected by the backtracking server 300, and performs the function of the general router of the first router 100, and separately performs the attack host 400 on the entire network. When an attack occurs, the attacker packet is transmitted from the first router 100 to provide an attacker packet collection function when DDoS occurs, while performing additional functions such as analysis, filtering, and traceback.

역추적 서버(300)는 망 내에 연결된 라우터들 중 공격자 패킷에 대한 싱크홀 처리를 위한 제2 라우터(200)를 선정하고, 일정 규모의 네트워크를 대상으로 공격 호스트(500)의 공격 트래픽에 대한 관리 및 확인 기능을 제공하며 공격 호스트(500)의 공격이 발생 시 해당 공격자 패킷의 실제 전송 경로 등을 판별하는 기능을 제공한다.The traceback server 300 selects a second router 200 for sinkhole processing of attacker packets among routers connected in a network, and manages attack traffic of the attacking host 500 for a predetermined size of network. And it provides a verification function and provides a function to determine the actual transmission path, etc. of the attacker packet when an attack of the attacking host 500 occurs.

상기와 같은 역추적 서버(300)는 공격 호스트(500)에서 발생한 공격자 패킷의 역추적을 위한 설정 요청과, 상기 공격자 패킷에 대한 관리와, 상기 공격자 패킷에 대한 정보 알림, 및 각 라우터(100, 200)들의 정보를 수집함으로써 공격자 패 킷의 역추적에 대한 전반적인 관리 기능을 수행한다.The traceback server 300 as described above may request setting for traceback of the attacker packet generated by the attacking host 500, management of the attacker packet, information notification about the attacker packet, and each router 100, By collecting the information of the 200, it performs the overall management function for the back trace of the attacker packet.

이하, 도 2를 참조하여, 본 발명에 따른 역추적 서버(300)의 구성에 대해 상세히 설명한다.Hereinafter, the configuration of the backtracking server 300 according to the present invention will be described in detail with reference to FIG. 2.

도 2는 본 발명에 따른 역추적 서버를 나타낸 기능 블럭도이다.2 is a functional block diagram illustrating a backtracking server according to the present invention.

도 2를 참조하면, 역추적 서버(300)는, 프로토콜 처리부(310)와, 라우터 관리부(320)와, 공격자 패킷 관리부(330)와, 저장부(340)를 포함하여 구성된다.Referring to FIG. 2, the backtracking server 300 includes a protocol processor 310, a router manager 320, an attacker packet manager 330, and a storage 340.

프로토콜 처리부(310)는 제1 및 제2 라우터(100, 200)와 통신을 위한 프로토콜을 처리하고, 후술될 도 6에서 상세히 설명한다.The protocol processor 310 processes a protocol for communication with the first and second routers 100 and 200 and will be described in detail later with reference to FIG. 6.

라우터 관리부(320)는 네트워크 내에 연결된 모든 라우터들을 검색하고, 상기 검색된 라우터들의 정보 목록을 생성하고, 상기 생성된 라우터들의 정보 목록을 저장부(340)에 저장하고, 상기 모든 라우터들의 대한 관리 및 제어 기능을 한다.The router manager 320 searches for all routers connected in the network, generates an information list of the discovered routers, stores the generated information list of the routers in the storage unit 340, and manages and controls all the routers. Function

이때, 상기 저장부(340)에 상기 라우터들의 정보 목록이 존재하면, 라우터 관리부(320)는 상기 생성된 라우터들의 정보 목록은 상기 저장부(340)에 기 구비된 목록에 업데이트한다.At this time, if the information list of the routers exist in the storage unit 340, the router manager 320 updates the information list of the generated routers to the list provided in the storage unit 340.

또한, 라우터 관리부(320)는 자신이 관리하는 라우터들 안에서 공격자 패킷을 싱크홀 처리하는 제2 라우터(200)를 설정하고, 상기 망 내의 모든 라우터들의 정보를 유지와 갱신 및 관리를 한다.In addition, the router manager 320 sets a second router 200 that sinks an attacker packet in routers managed by the router manager 320, and maintains, updates, and manages information of all routers in the network.

이때, 상기 망 내의 라우터들 중 제2 라우터(200)를 제외한 라우터들은 수신되는 패킷에 대해 공격자 패킷을 판정한다. 이하에서는 설명의 간편함을 위해 상기 망 내의 라우터들 중 제2 라우터(200)를 제외한 라우터들은 제1 라우터(100)로 통칭한다.At this time, routers other than the second router 200 among the routers in the network determine the attacker packet with respect to the received packet. Hereinafter, for convenience of description, routers other than the second router 200 among the routers in the network are collectively referred to as the first router 100.

공격자 패킷 관리부(330)는 프로토콜 처리부(310)를 통해 제2 라우터(200)로부터 제1 라우터(100)에서 발생된 공격자 패킷에 대한 정보를 수신하고, 저장부(340) 내의 공격자 패킷 목록에 상기 수신된 공격자 패킷 정보를 업데이트한다. The attacker packet manager 330 receives the information on the attacker packet generated in the first router 100 from the second router 200 through the protocol processor 310, and adds the packet to the attacker packet list in the storage unit 340. Update the received attacker packet information.

또한, 상기 공격자 패킷이 수신된 제1 라우터(100)의 역 경로가 상기 공격자 패킷을 발생한 공격 호스트(500)의 경로이므로, 공격자 패킷 관리부(330)는 상기 공격자 패킷이 수신된 제1 라우터(100)의 경로가 공격 호스트(500)의 공격 경로로 인식하고, 상기 제1 라우터(100)이 경로를 상기 저장부(340) 내의 공격 경로 목록에 업데이트한다.In addition, since the reverse path of the first router 100 in which the attacker packet is received is the path of the attacking host 500 that generated the attacker packet, the attacker packet manager 330 determines that the first router 100 in which the attacker packet is received. ) Is recognized as the attack path of the attack host 500, and the first router 100 updates the path to the attack path list in the storage unit 340.

저장부(340)는 역추적 서버(300)의 동작 제어를 위한 데이터들이 저장되고, 라우터 정보 목록과, 해쉬 함수 목록과, 공격 패킷 목록과, 공격 경로 목록이 구비된다.The storage unit 340 stores data for controlling the operation of the traceback server 300, and includes a router information list, a hash function list, an attack packet list, and an attack path list.

상기 라우터 정보 목록에는 네트워크 내에서 역추적 서버(300)에 의해 관리되는 모든 라우터의 ID와, 프로토콜 통신을 위한 통신 정보, 해쉬 함수의 정보를 가지고 있다.The router information list includes IDs of all routers managed by the traceback server 300 in the network, communication information for protocol communication, and hash function information.

상기 ID는 라우터들의 관리를 위한 고유번호이며, 상기 통신 정보는 메시지를 송수신 하기 위한 네트워크 정보로써 네트워크 상황에 따라 달라질 수 있다.The ID is a unique number for managing routers, and the communication information is network information for transmitting and receiving a message, and may vary according to network conditions.

상기 해쉬 함수 정보는 라우터가 수행하는 해쉬의 정보로써 라우터와 같은 해쉬값을 추출하기 위해 구비된다.The hash function information is provided to extract a hash value such as a router as information of a hash performed by a router.

상기 해쉬 함수 목록에는 상기 역추적 서버(300)에서 관리하는 모든 라우터들의 해쉬 함수들이 저장된다. 라우터 정보에는 해쉬 함수의 인덱스만 보유하고 있으면, 실제 해쉬 함수 목록에 해쉬 함수들이 존재한다.The hash function list stores hash functions of all routers managed by the traceback server 300. If the router information contains only the index of the hash function, the hash functions exist in the actual hash function list.

상기 공격 패킷 목록은 실제 공격이 이루어진 패킷들의 목록이다. 상기 공격 패킷 목록은 보안 관리자에 의해서, 혹은 Victim의 요청으로 얻게 되는 실제 공격 패킷이다. 상기 보안 관리자는 상기 공격 패킷 목록에서 제2 라우터(200)로 보내는 패킷을 선택할 수 있다.The attack packet list is a list of packets for which an actual attack was made. The attack packet list is the actual attack packet obtained by the security administrator or at the request of Victim. The security manager may select a packet sent to the second router 200 from the attack packet list.

상기 공격 경로 목록은 각 라우터에 적용된 공격 패킷에 대해서 제2 라우터(200)가 받은 공격 패킷들을 보낸 제1 라우터(100)의 ID이다. 상기 제1 라우터(100)의 ID는 공격 호스트(500)의 근원지 혹은 공격 경로를 분석하기 위한 정보이다.The attack path list is an ID of the first router 100 that sends attack packets received by the second router 200 to attack packets applied to each router. The ID of the first router 100 is information for analyzing the origin or attack path of the attacking host 500.

상기 라우터 관리부(320)는 역추적 서버(300)가 처음 구동 시에, 선행되어 수행하는 작업으로 역추적 서버(300)가 관리하는 모든 라우터들의 정보를 획득하고 관리하는 기능을 한다.The router manager 320 functions to acquire and manage information of all routers managed by the traceback server 300 as a task that is performed before the traceback server 300 is first started.

또한, 역추적 서버(300)는 공격 패킷에 대해 해쉬된 값을 제1 라우터(100)에 전송하여, 제1 라우터(100)가 공격 패킷에 대한 처리를 하도록 하기 위하여 각 라우터의 해쉬 정보를 획득하는 작업을 수행한다.In addition, the backtracking server 300 transmits the hashed value of the attack packet to the first router 100 to obtain hash information of each router so that the first router 100 processes the attack packet. To do the job.

상기 공격 패킷 관리부(330)는 공격 트래픽에 대한 역추적을 수행하는 기능을 담당한다. 상기 공격 패킷 관리부(330)는 공격 패킷에 대한 등록을 통해 제1 라우터(100)에서 공격 패킷을 제2 라우터(200)로 보내도록 한다.The attack packet manager 330 is responsible for performing a back trace on the attack traffic. The attack packet manager 330 allows the first router 100 to send the attack packet to the second router 200 through registration of the attack packet.

역추적 서버(300)는 제1 라우터(100)를 대상으로 기 구비된 공격 패킷들의 해쉬 정보 목록을 송신한다.The traceback server 300 transmits a hash information list of attack packets provided to the first router 100.

상기 해쉬 정보 목록 내의 공격 패킷들의 해쉬값은 제1 라우터(100)에 설정된 해쉬 함수에 적합한 해쉬값이다. 이때, 제1 라우터(100)는 블룸 필터(Bloom Filter)를 사용하기 때문에 공격 패킷 등록을 통해 전송받은 해쉬값을 이용해서 해당되는 공격 패킷이 자신을 지나갔는지 판단할 수 있으며, 이로 인해 역추적 서버(300)는 공격 패킷에 대해 공격 경로를 판단할 수 있다.The hash value of the attack packets in the hash information list is a hash value suitable for the hash function set in the first router 100. In this case, since the first router 100 uses a bloom filter, the first router 100 may determine whether the corresponding attack packet has passed through itself by using the hash value received through the attack packet registration, and thus the backtracking server. 300 may determine an attack path with respect to the attack packet.

도 3은 본 발명에 따른 제1 라우터를 나타낸 기능 블럭도이다.3 is a functional block diagram illustrating a first router according to the present invention.

도 3을 참조하면, 제1 라우터(100)는 프로토콜 처리부(110)와, 패킷 처리부(120)와, 블룸 필터 처리부(130)와, 공격 패킷 처리부(140)와, 저장부(150)를 포함하여 구성된다.Referring to FIG. 3, the first router 100 includes a protocol processor 110, a packet processor 120, a bloom filter processor 130, an attack packet processor 140, and a storage 150. It is configured by.

프로토콜 처리부(110)는 제2 라우터(200) 및 역추적 서버(300)와 통신을 위한 프로토콜을 처리하고, 제2 라우터(200) 및 역추적 서버(300)와 통신이 연결되면, 제2 라우터(200) 및 역추적 서버(300)의 네트워크 정보를 저장부(150)에 저장한다.The protocol processor 110 processes a protocol for communication with the second router 200 and the traceback server 300, and when communication is connected with the second router 200 and the traceback server 300, the second router The network information of the 200 and the traceback server 300 is stored in the storage 150.

또한, 프로토콜 처리부(110)는 제1 라우터(100)에 설정된 해쉬 함수에 대한 정보를 역추적 서버(300)로 송신하고, 상기 역추적 서버(300)로부터 상기 제1 라우터(100)에 설정된 해쉬 함수에 적합한 공격자 패킷들의 해쉬 정보 목록을 수신하여 저장부(150)에 저장한다.In addition, the protocol processing unit 110 transmits information on the hash function set in the first router 100 to the backtracking server 300, and the hash set in the first router 100 from the backtracking server 300. The hash information list of attacker packets suitable for the function is received and stored in the storage unit 150.

패킷 처리부(120)는 수신 패킷에 대해 두개의 해쉬 함수를 적용하여 각기 다른 두개의 해쉬값들을 추출한다.The packet processor 120 extracts two different hash values by applying two hash functions to the received packet.

블룸 필터 처리부(130)는 블룸 필터(Bloom Filter)를 이용하여 상기 저장부(150)에 저장된 공격자 패킷들의 해쉬 정보 목록 내에서 상기 추출된 해쉬값들에 해당하는 정보가 존재하는지 검사한다.The bloom filter processor 130 checks whether information corresponding to the extracted hash values exists in a hash information list of attacker packets stored in the storage unit 150 using a bloom filter.

공격 패킷 처리부(140)는 블룸 필터 처리부(130)의 검사 결과, 상기 목록 내에 상기 추출된 해쉬값들에 해당하는 정보가 존재하면, 상기 수신 패킷을 공격자 패킷으로 판정한다.The attack packet processing unit 140 determines that the received packet is an attacker packet if the information corresponding to the extracted hash values exists in the list as a result of the inspection of the bloom filter processing unit 130.

이후, 공격 패킷 처리부(140)는 상기 공격자 패킷으로 판정된 수신 패킷의 라우팅을 중단하고, 프로토콜 처리부(110)를 통해 상기 수신 패킷이 공격자 패킷임을 상기 서버(300)에 통지하고, 상기 판정된 공격자 패킷을 제2 라우터(200)로 송신한다.Thereafter, the attack packet processing unit 140 stops routing of the received packet determined as the attacker packet, and notifies the server 300 that the received packet is an attacker packet through the protocol processing unit 110, and the determined attacker The packet is transmitted to the second router 200.

이때, 상기 판정된 공격자 패킷의 처리에서는 역추적 서버(300)가 상기 공격자 패킷의 역추적에 필요한 작업을 수행하기 위해 상기 패킷 처리부(120)는 자신을 지나가는 IP 패킷을 추출한다. 상기 추출된 패킷의 IP 헤더의 정보 등의 값들을 분석함으로써 이후 역추적을 위한 작업이 진행된다.In this case, in the processing of the determined attacker packet, the packet processing unit 120 extracts an IP packet passing through itself so that the backtracking server 300 performs a task required for backtracking the attacker packet. After analyzing values such as information of the IP header of the extracted packet, the operation for backtracking proceeds.

이하, 도 4를 일 예로 하여, 제1 라우터(100)가 수신 패킷의 해쉬값을 추출하는 과정에 대해 상세히 설명한다.Hereinafter, a process of extracting a hash value of a received packet by the first router 100 will be described in detail with reference to FIG. 4 as an example.

도 4는 본 발명에 따른 제1 라우터가 수신 패킷의 해쉬값을 추출하는 과정을 설명하기 위한 도면이다.4 is a diagram illustrating a process of extracting a hash value of a received packet by a first router according to the present invention.

도 4를 참조하면, 제1 라우터(100)의 패킷 처리부(110)는 상기 수신 패킷을 해쉬하기 전에 IP 헤더의 특정 정보와 페이로드의 일부분을 추출한다. 이렇게 추출된 정보는 24바이트의 정보이며, 이 정보를 두 개의 해쉬 함수를 이용하여 32비트의 두 해쉬값을 추출한다.Referring to FIG. 4, the packet processing unit 110 of the first router 100 extracts specific information of the IP header and a part of the payload before hashing the received packet. The extracted information is 24 bytes of information, and two hash functions are used to extract two 32-bit hash values.

제1 라우터(100)에 적용하는 해쉬 함수의 작동 과정을 자세히 살펴보면 다음과 같다. 암호학적으로 안전한 해쉬 함수는 SHA-256 함수를 사용할 수 있다. 이 경우 임의의 비트에 해당하는 패킷이 입력으로 들어오면, 항상 256비트의 출력값을 갖는 경우이다.Looking at the operation of the hash function applied to the first router 100 in detail as follows. Cryptographically secure hash functions can use the SHA-256 function. In this case, when a packet corresponding to an arbitrary bit enters the input, it always has an output value of 256 bits.

이때, 상기 블룸 필터의 경우 전체적인 크기는 해쉬 함수의 출력 비트의 크기에 영향을 받기 때문에, 일반적으로 저장 용량 및 블룸 필터의 크기를 생각한다면 일반적으로 32비트 정도가 적절하다.In this case, since the overall size of the bloom filter is affected by the size of the output bit of the hash function, 32 bits is generally appropriate considering the storage capacity and the size of the bloom filter.

따라서 본 발명에서는 기존에 암호학적으로 안전하다고 알려진 SHA-256 함수를 이용하면서 도 4와 같이 폴딩(Folding) 방식을 이용하여 최종적으로 32비트 값의 해쉬값을 계산하도록 하였다.Therefore, in the present invention, the hash value of the 32-bit value is finally calculated by using the folding method as shown in FIG. 4 while using the SHA-256 function known to be cryptographically secure.

상기 블룸 필터 처리부(130)는 패킷 처리부(120)에서 추출된 두 해쉬값을 기록하기 위해 블럼 필터를 적용한다. 이후에, 상기 블룸 필터 처리부(130)는 블럼 필터를 검사하여 공격자 패킷이 지나갔음을 판단함으로써 공격 트래픽에 대한 역추적 기능을 수행한다.The bloom filter processor 130 applies a bloom filter to record two hash values extracted by the packet processor 120. Thereafter, the bloom filter processor 130 performs a backtracking function on the attack traffic by inspecting the bloom filter and determining that an attacker packet has passed.

더 구체적으로 설명하면, 프로토콜을 이용하여 역추적 서버(300)로부터 전송 받은 두 해쉬값은 자신의 해쉬 함수로부터 해쉬된 공격 패킷의 해쉬값이다. 상기 값이 자신을 지나갔다면 블룸 필터에 기록이 되어 있을 것이며, 빠르게 확인을 할 수 있다. 해당 패킷이 자신을 지나갔음을 확인하고 그 결과를 역추적 서버(300)에 다시 전송함으로써 역추적 서버(300)가 공격자 패킷의 공격 경로를 확인할 수 있도록 도와주며, 이 작업을 위해 블룸 필터를 사용한다.More specifically, the two hash values received from the traceback server 300 using the protocol are hash values of attack packets hashed from their hash functions. If the value has passed by you, it will be recorded in the Bloom filter, so you can check quickly. By verifying that the packet has passed through it and sending the result back to the traceback server 300, it helps the traceback server 300 to determine the attack path of the attacker packet, and uses the Bloom filter for this task. do.

도 5는 본 발명에 따른 제2 라우터를 나타낸 기능 블럭도이다.5 is a functional block diagram illustrating a second router according to the present invention.

도 5를 참조하면, 제2 라우터(200)는 프로토콜 처리부(210)와, 공격 패킷 처리부(220) 및 저장부(230)를 포함하여 구성된다.Referring to FIG. 5, the second router 200 includes a protocol processor 210, an attack packet processor 220, and a storage 230.

프로토콜 처리부(210)는 제1 라우터(100) 및 역추적 서버(300)와 통신 연결되고, 제1 라우터(100)로부터 수신된 공격자 패킷을 저장부(230)에 저장한다.The protocol processor 210 is communicatively connected to the first router 100 and the traceback server 300 and stores the attacker packet received from the first router 100 in the storage 230.

공격 패킷 처리부(210)는 제1 라우터(100)로부터 수신되는 공격자 패킷에 대해 싱크홀 처리를 하고, 상기 역추적 서버(300)의 공격자 패킷 공격 경로 분석을 위해 상기 공격자 패킷을 송신한 제1 라우터의 식별자(ID)를 상기 역추적 서버(300)로 송신한다.The attack packet processing unit 210 sinks the attacker packet received from the first router 100 and transmits the attacker packet to the attacker packet attack path analysis of the traceback server 300. The identifier (ID) is transmitted to the backtracking server 300.

제2 라우터(200)에서 관리되는 공격자 패킷들은 역추적 서버(300)의 요청에 따라 열람이 가능하며, 보안 관리자에 의해서 분석이 될 수 있다.Attacker packets managed by the second router 200 may be viewed according to the request of the traceback server 300 and may be analyzed by the security manager.

도 6은 본 발명에 따른 역추적 서버와 제1 및 제2 라우터 간의 프로토콜 구조도를 나타낸 것이다.6 shows a protocol structure diagram between the backtracking server and the first and second routers according to the present invention.

도 6을 참조하면, 제1 라우터(100)는 수신 패킷의 해쉬값 및 블룸 필터를 이용하여 상기 수신 패킷이 공격자 패킷인지를 판정하고, 상기 수신 패킷이 공격자 패킷이면, 상기 공격자 패킷을 제2 라우터(200)로 전송하며, 역추적 서버(300)는 제1 및 제2 라우터(100, 200)를 관리하면서 공격에 대한 역추적을 위한 분석을 담당하게 된다.Referring to FIG. 6, the first router 100 determines whether the received packet is an attacker packet using a hash value of the received packet and a bloom filter. If the received packet is an attacker packet, the first router 100 converts the attacker packet to the second router. The server 200 transmits the data to the 200 and the backtracking server 300 manages the first and second routers 100 and 200 to perform the analysis for the backtracking of the attack.

상술한 과정을 위해 역추적 서버(300)와 제1 라우터(100), 제1 라우터(100)와 제2 라우터(200) 및 제2 라우터(200)와 역추적 서버(300) 간의 통신이 필요하며, 이는 도 2와 도3 및 도 5의 프로토콜 처리부(110, 210, 310)에 해당된다.For the above-described process, communication between the backtracking server 300 and the first router 100, the first router 100 and the second router 200, and the second router 200 and the backtracking server 300 is required. This corresponds to the protocol processor 110, 210, 310 of FIGS. 2, 3, and 5.

프로토콜은 역추적 서버(300)가 제1 및 제2 라우터들(100, 200)에게 보내는 설정, 명령 및 알림 등의 메시지와 제1 라우터(100)가 역추적 서버(300) 보내는 공격자 패킷의 이동 경로가 포함되어 있다.The protocol consists of messages such as settings, commands, and notifications sent by the traceback server 300 to the first and second routers 100 and 200 and attacker packets sent by the first router 100 to the traceback server 300. The path is included.

도 6에서 'Start Code'는 프로토콜을 구분하기 위한 값이다. 1 바이트 크기의 고정된 값을 가지며, 다른 프로토콜과의 구분을 위한 값으로 사용된다.In FIG. 6, 'Start Code' is a value for distinguishing a protocol. It has a fixed value of 1 byte and is used as a value to distinguish it from other protocols.

'Message Header'는 송신자의 ID와 목적지의 ID, 전체 메시지의 길이, 그리고 메시지의 CRC 코드를 포함한다.The 'Message Header' includes the ID of the sender, the ID of the destination, the length of the entire message, and the CRC code of the message.

ID는 제1 및 제2 라우터(100, 200) 중 어느 하나의 경우 '1' 부터 시작되는 고유 번호이며, 역추적 서버(300)는 '0'의 ID를 가진다.The ID is a unique number starting from '1' in any of the first and second routers 100 and 200, and the backtracking server 300 has an ID of '0'.

메시지 길이는 'Start Code'부터 시작되는 전체 메시지의 바이트 크기이다. The message length is the byte size of the entire message starting from 'Start Code'.

CRC코드는 'Message Header'의 시작 부분부터 'Message Body'의 끝까지 CRC 코드 부분을 제외한 값의 CRC를 구한 값이다.The CRC code is a value obtained by obtaining the CRC of the value excluding the CRC code part from the beginning of the 'Message Header' to the end of the 'Message Body'.

'Message Body'는 실제 메시지 정보를 담고 있다. 2바이트 크기의 요청 ID를 포함하며, 메시지에 따라 크기가 가변적이다.'Message Body' contains the actual message information. It contains a 2-byte request ID and varies in size depending on the message.

도 7은 블룸 필터를 이용한 제1 라우터의 처리과정을 나타낸 것이다.7 shows a process of a first router using a bloom filter.

도 7을 참조하면, 제1 라우터(100)는 수신되는 패킷의 정보를 추출하여 두 개의 해쉬값을 구한다. 상기 해쉬값들은 블룸 필터에 적용되는 값이며, 상기 블룸 필터에 기록된 값을 이용해서 패킷이 지나갔는지를 판단한다.Referring to FIG. 7, the first router 100 extracts information of a received packet to obtain two hash values. The hash values are values applied to the bloom filter, and it is determined whether the packet has passed by using the value recorded in the bloom filter.

도 8은 공격자 패킷의 역추적 과정을 나타낸 것이다.8 shows a backtracking process of an attacker packet.

도 8을 참조하면, 공격자 패킷의 역추적 과정은 실시간 또는 사후 공격 경로 재구성의 두 가지의 방법이 있다.Referring to FIG. 8, there are two methods of backtracking the attacker packet, real time or post attack path reconstruction.

실시간 역추적 과정은 제1 라우터(100)가 공격으로 판단한 패킷을 제2 라우터(200)로 전송하며, 제1 라우터(100)로부터 공격자 패킷을 수신한 제2 라우터(200)는 역추적 서버(300)에 상기 공격자 패킷의 정보를 알림으로써 이루어진다. The real-time traceback process transmits the packet determined by the first router 100 to the second router 200, and the second router 200 receiving the attacker packet from the first router 100 transmits the traceback server ( 300) by informing the information of the attacker packet.

그리고, 사후 공격 경로 재구성 과정은 역추적 서버(300)가 제1 및 제2 라우터(100, 200)에게 공격자 패킷에 대한 등록을 요청하고, 각 라우터들(100, 200)은 공격 패킷이 자신을 통과했는지 역추적 서버(300)로 알리면서 이루어진다.In addition, the post attack path reconfiguration process requires the traceback server 300 to request the first and second routers 100 and 200 to register the attacker packet, and each router 100 and 200 sends the attack packet to itself. It is made while notifying the backtracking server 300 that it has passed.

실제 공격이 이루어진 상태에서 역추적 서버(300)는 공격자 패킷에 대한 제1 라우터(100)의 해쉬 함수를 적용하여 해쉬값을 추출하고, 상기 추출된 해쉬값을 제1 라우터(100)로 전송한다.In the actual attack state, the backtracking server 300 applies a hash function of the first router 100 to the attacker packet, extracts a hash value, and transmits the extracted hash value to the first router 100. .

상기 역추적 서버(300)로부터 해쉬값을 받은 제1 라우터(100)는 블룸 필터를 이용하여 상기 공격자 패킷이 자신을 통과하였는지를 확인하고, 상기 확인 결과를 제2 라우터(200)를 통해 역추적 서버(300)로 알린다.The first router 100 receiving the hash value from the backtracking server 300 checks whether the attacker packet has passed through itself using a bloom filter, and checks the check result through the second router 200. Notified by 300.

역추적 서버(300)는 공격자 패킷이 통과된 제1 라우터(100)의 경로를 파악하여 상기 공격자 패킷의 공격 경로를 역추적한다.The traceback server 300 detects the path of the first router 100 through which the attacker packet passes, and traces back the attack path of the attacker packet.

한편, 제1 라우터(100)는 역추적 서버(300)로부터 수신된 공격자 패킷 해쉬 정보 목록을 구비하고 있다.Meanwhile, the first router 100 has a list of attacker packet hash information received from the traceback server 300.

상기 공격자 패킷의 해쉬 정보 목록은 같은 패킷이 제1 라우터(100)에 도착했을 때, 제1 라우터(100)는 공격자 패킷을 제2 라우터(200)로 송신하게 되고, 제2 라우터(200)는 공격자 패킷들을 저장하면서, 역추적 서버(300)로 공격자 패킷들에 대한 정보를 알린다. 이로써 실시간으로 역추적 서버(300)에서 관리하는 네트워크 단위에서 공격자 패킷에 대한 추적이 가능한 것이다.In the hash information list of the attacker packet, when the same packet arrives at the first router 100, the first router 100 transmits the attacker packet to the second router 200, and the second router 200 While storing the attacker packets, the traceback server 300 informs the information about the attacker packets. This allows tracking of attacker packets in the network unit managed by the backtracking server 300 in real time.

도 9는 본 발명에 따른 시스템의 공격자 패킷 역추적 과정을 나타낸 신호 처리도이다.9 is a signal processing diagram illustrating an attacker packet traceback process of the system according to the present invention.

도 9를 참조하면, 역추적 서버(300)와 네트워크 내의 제1 및 제2 라우터(100, 200)들은 서로 통신이 연결된 상태이고[S111, S112], 역추적 서버(300)는 현재 네트워크 내에 연결된 라우터들 중에서 제1 라우터(100) 및 제2 라우터(200)를 선정하고, 제1 라우터(100)로 공격자 패킷에 대한 검사를 요청하고[S113], 제2 라우터(200)로 공격자 패킷에 대한 싱크홀 처리 및 공격자 패킷의 관리를 요청한 다[S114].Referring to FIG. 9, the backtracking server 300 and the first and second routers 100 and 200 in the network are in communication with each other [S111, S112], and the backtracking server 300 is currently connected in the network. Among the routers, the first router 100 and the second router 200 are selected, the first router 100 requests the inspection of the attacker packet [S113], and the second router 200 the attacker packet for the Sinkhole processing and attacker packet management is requested [S114].

이때, 역추적 서버(300)는 제1 라우터(100)가 공격자 패킷을 발견 시, 제1 라우터(100)가 상기 발견한 공격자 패킷을 제2 라우터(200)로 송신할 수 있도록, 제1 라우터(100)에 제2 라우터(200)의 네트워크 정보를 송신한다.At this time, when the first router 100 detects an attacker packet, the backtracking server 300 may transmit the attacker packet to the second router 200 by the first router 100. The network information of the second router 200 is transmitted to 100.

역추적 서버(300)는 제1 라우터(100)에게 블룸 필터에 사용되는 해쉬 함수와 관련된 정보를 요청한다[S115].The backtracking server 300 requests information related to the hash function used for the bloom filter from the first router 100 [S115].

제1 라우터(100)는 상기 역추적 서버(300)의 요청에 따라, 현재 블룸 필터에 사용되는 해쉬 함수와 관련된 정보를 파악하고, 상기 파악된 해쉬 함수와 관련된 정보를 역추적 서버(300)로 송신한다[S116].The first router 100, at the request of the backtracking server 300, grasps information related to the hash function currently used for the bloom filter, and transfers the information related to the identified hash function to the backtracking server 300. To transmit [S116].

역추적 서버(300)는 제1 라우터(100)의 블룸 필터에 사용되는 해쉬 함수 관련 정보가 수신되면, 기 구비된 공격자 패킷들의 해쉬 정보들을 상기 수신된 제1 라우터(100)의 해쉬 함수와 관련된 정보로 변환하고, 상기 변환된 공격자 패킷들의 해쉬 정보 목록을 제1 라우터(100)로 송신한다[S117].When the backtracking server 300 receives the hash function related information used for the bloom filter of the first router 100, the backtracking server 300 may include hash information of the provided attacker packets related to the hash function of the received first router 100. And converts the hash information list of the converted attacker packets to the first router 100 [S117].

제1 라우터(100)는 역추적 서버(300)로부터 수신된 공격자 패킷들의 해쉬 정보 목록을 저장하고, 상기 네트워크 내에서 자신을 통과하는 패킷에 대해 두개의 해쉬 함수를 적용하여 두개의 해쉬값을 추출한다[S118]. 이때, 상기 패킷에 적용된 두개의 해쉬 함수는 제1 라우터(100)의 블룸 필터에 사용되는 해쉬 함수들이다.The first router 100 stores a hash information list of attacker packets received from the traceback server 300, and extracts two hash values by applying two hash functions to the packets passing through the network in the network. [S118]. In this case, two hash functions applied to the packet are hash functions used for the bloom filter of the first router 100.

제1 라우터(100)는 상기 블룸 필터를 이용하여 상기 추출된 해쉬값들이 역추적 서버(300)로부터 수신된 목록내에 존재하는지를 검사하고[S119], 상기 해쉬값들이 상기 목록 내에 존재하면[S120], 상기 패킷을 공격자 패킷으로 판정한다[S121].The first router 100 checks whether the extracted hash values exist in the list received from the backtracking server 300 using the bloom filter [S119], and if the hash values exist in the list [S120]. The packet is determined to be an attacker packet [S121].

제1 라우터(100)는 상기 공격자 패킷에 대한 라우팅을 중지하고, 상기 패킷이 공격자 패킷임을 역추적 서버(300)로 통지하고, 상기 공격자 패킷을 제2 라우터(200)로 송신한다[S122].The first router 100 stops routing the attacker packet, notifies the traceback server 300 that the packet is the attacker packet, and transmits the attacker packet to the second router 200 [S122].

제2 라우터(200)는 제1 라우터(100)로부터 공격자 패킷이 수신되면, 상기 공격자 패킷을 싱크홀 처리하고[S123], 역추적 서버(300)가 공격자 패킷의 공격 경로를 분석할 수 있도록, 상기 공격자 패킷을 송신한 제1 라우터(100)의 ID를 상기 역추적 서버(300)로 송신한다[S124].When the attacker packet is received from the first router 100, the second router 200 sinks the attacker packet [S123], and the traceback server 300 may analyze the attack path of the attacker packet. The ID of the first router 100 that has transmitted the attacker packet is transmitted to the traceback server 300 [S124].

역추적 서버(300)는 상기 공격자 패킷이 수신된 제1 라우터(100)의 경로를 파악하여 상기 공격자 패킷을 역추적한다[S125].The traceback server 300 detects the path of the first router 100 where the attacker packet is received and traces back the attacker packet [S125].

본 발명에 의하면, 기존의 로깅기법의 역추적 시스템보다 훨씬 간소화된 방식을 통해 전체 망을 관리/제어할 수 있으므로 공격에 대한 대응이 용이한 효과가 있다. According to the present invention, since the entire network can be managed / controlled in a much simpler manner than the conventional backtracking system of the logging method, it is easy to respond to an attack.

또한, 최소화된 블룸 필터 값으로 장기간 공격자 패킷에 대한 정보를 저장할 수 있으며, 공격 발생 시 단위 망 내의 라우터에 대한 관리 구조를 제공하기 때문에 보다 효율적인 공격 탐지 및 추적 기능을 제공할 수 있는 효과가 있다.In addition, the information on the attacker packet can be stored for a long time with a minimized bloom filter value, and when an attack occurs, it provides an effective attack detection and tracking function because it provides a management structure for the router in the unit network.

이상, 본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. It will be apparent to those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof.

전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하 여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The present invention described above can be embodied as computer-readable codes on a medium on which a program is recorded. The computer readable medium includes all kinds of recording apparatuses in which data which can be read by a computer system is stored. Examples of computer-readable media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which are also implemented in the form of carrier waves (eg, transmission over the Internet). It also includes.

따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.Accordingly, the above detailed description should not be construed as limiting in all aspects and should be considered as illustrative. The scope of the invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the invention are included in the scope of the invention.

상기와 같이 설명된 공격자 패킷 역추적 방법 및 이를 위한 시스템은 상기 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.The attacker packet traceback method described above and the system therefor are not limited to the configuration and method of the embodiments described above, but the embodiments may be all or part of each embodiment so that various modifications may be made. May be optionally combined.

도 1은 본 발명에 따른 공격자 패킷 역추적 시스템을 나타낸 도면이다.1 is a diagram illustrating an attacker packet traceback system according to the present invention.

도 2는 본 발명에 따른 역추적 서버를 나타낸 기능 블럭도이다.2 is a functional block diagram illustrating a backtracking server according to the present invention.

도 3은 본 발명에 따른 제1 라우터를 나타낸 기능 블럭도이다.3 is a functional block diagram illustrating a first router according to the present invention.

도 4는 본 발명에 따른 제1 라우터가 수신 패킷의 해쉬값을 추출하는 과정을 설명하기 위한 도면이다.4 is a diagram illustrating a process of extracting a hash value of a received packet by a first router according to the present invention.

도 5는 본 발명에 따른 제2 라우터를 나타낸 기능 블럭도이다.5 is a functional block diagram illustrating a second router according to the present invention.

도 6은 본 발명에 따른 역추적 서버와 제1 및 제2 라우터 간의 프로토콜 구조도를 나타낸 것이다.6 shows a protocol structure diagram between the backtracking server and the first and second routers according to the present invention.

도 7은 블룸 필터를 이용한 제1 라우터의 처리과정을 나타낸 것이다.7 shows a process of a first router using a bloom filter.

도 8은 공격자 패킷의 역추적 과정을 나타낸 것이다.8 shows a backtracking process of an attacker packet.

도 9는 본 발명에 따른 시스템의 공격자 패킷 역추적 과정을 나타낸 신호 처리도이다.9 is a signal processing diagram illustrating an attacker packet traceback process of the system according to the present invention.

Claims (7)

제1 라우터가 망 내의 공격자 패킷의 공격 경로를 역추적하는 서버로부터 공격자 패킷들의 해쉬 정보 목록을 수신하는 단계;Receiving, by the first router, a hash information list of attacker packets from a server that traces back the attack path of the attacker packet in the network; 수신 패킷에 대해 해쉬 함수를 적용하여 해쉬값을 추출하는 단계;Extracting a hash value by applying a hash function to the received packet; 상기 해쉬 정보 목록 내에서 상기 추출된 해쉬값에 해당하는 정보가 존재하는지 검사하는 단계;Checking whether information corresponding to the extracted hash value exists in the hash information list; 상기 검사 결과 존재하면, 상기 수신 패킷을 공격자 패킷으로 판정하는 단계; 및Determining the received packet as an attacker packet if the check result exists; And 상기 판정 결과를 상기 서버로 통지하는 단계를 포함하는 공격자 패킷의 역추적 방법.Notifying the server of the determination result. 청구항 1에 있어서, The method according to claim 1, 상기 수신 단계는,The receiving step, 제1 라우터의 해쉬 함수에 대한 정보를 상기 서버로 송신하는 단계; 및Transmitting information about a hash function of a first router to the server; And 상기 서버로부터 상기 제1 라우터의 해쉬 함수와 관련된 공격자 패킷들의 해쉬 정보 목록을 수신하는 단계를 포함하는 것을 특징으로 하는 공격자 패킷의 역추적 방법.Receiving a list of hash information of attacker packets associated with a hash function of the first router from the server. 청구항 1에 있어서,The method according to claim 1, 상기 검사 단계는,The inspection step, 블룸 필터(Bloom Filter)를 이용하여 상기 해쉬 정보 목록 내에서 상기 추출된 해쉬값에 해당하는 정보가 존재하는지 검사하는 것을 특징으로 하는 공격자 패킷의 역추적 방법.And a block filter to check whether information corresponding to the extracted hash value exists in the hash information list. 청구항 1에 있어서,The method according to claim 1, 상기 서버로부터 상기 망 내의 제2 라우터의 정보를 수신하는 단계;Receiving information of a second router in the network from the server; 상기 판정된 공격자 패킷의 라우팅을 중지하는 단계; 및Stopping routing of the determined attacker packet; And 상기 공격자 패킷을 제2 라우터로 송신하는 단계를 더 포함하는 것을 특징으로 하는 공격자 패킷의 역추적 방법.And sending the attacker packet to a second router. 청구항 4에 있어서,The method according to claim 4, 상기 제2 라우터는, The second router, 상기 공격자 패킷에 대해 싱크홀(Sinkhole) 처리하고, 상기 서버의 공격자 패킷 공격 경로 분석을 위해 상기 공격자 패킷을 송신한 제1 라우터의 식별자(ID)를 상기 서버로 송신하는 것을 특징으로 하는 공격자 패킷의 역추적 방법.Sinkhole processing of the attacker packet, and transmitting the identifier (ID) of the first router that sent the attacker packet to the server for the attacker packet attack path analysis of the server. Traceback method. 공격자 패킷의 공격 경로를 역추적하는 서버가 망 내에서 상기 공격자 패킷 검사를 위한 제1 라우터 및 상기 제1 라우터에서 검사된 공격자 패킷 관리를 위한 제2 라우터를 선정하는 단계;Selecting, by a server that traces an attack path of an attacker packet, a first router for inspecting the attacker packet and a second router for managing attacker packets checked by the first router in a network; 제1 라우터로 기 구비된 공격자 패킷들의 해쉬 정보 목록을 송신하는 단계; Transmitting a hash information list of attacker packets provided to the first router; 제2 라우터를 통해 제1 라우터의 수신 패킷이 공격자 패킷으로 판정된 결과를 수신하는 단계; 및Receiving, via the second router, a result of determining that the received packet of the first router is an attacker packet; And 상기 공격자 패킷이 수신된 제1 라우터의 경로를 파악하여 상기 공격자 패킷을 역추적하는 단계를 포함하는 공격자 패킷의 역추적 방법.Tracing the path of the first router from which the attacker packet was received and back tracing the attacker packet. 수신되는 패킷의 해쉬값을 추출하고, 블룸 필터(Bloom Filter)를 이용하여 기 구비된 공격자 패킷들의 해쉬 정보 목록 내에 상기 추출된 해쉬값에 해당하는 정보가 존재하면, 상기 수신 패킷을 공격자 패킷으로 판정하고, 상기 공격자 패킷을 송신하는 제1 라우터;Extracting the hash value of the received packet, and if the information corresponding to the extracted hash value exists in the hash information list of the attacker packets provided by using a Bloom Filter, determine the received packet as an attacker packet A first router for transmitting the attacker packet; 제1 라우터로부터 상기 공격자 패킷을 수신 및 싱크홀(Sinkhole) 처리하고, 상기 제1 라우터의 공격자 패킷 판정 결과를 송신하는 제2 라우터; 및A second router receiving and sinking the attacker packet from the first router and transmitting a result of determining the attacker packet of the first router; And 상기 제2 라우터로부터 상기 제1 라우터의 공격자 패킷 판정 결과가 수신되면, 상기 제1 라우터의 경로를 파악하여 상기 공격자 패킷의 공격 경로를 역추적하 는 서버를 구비하는 공격자 패킷 역추적 시스템.And a server configured to determine the path of the first router and trace back the attack path of the attacker packet when the attacker packet determination result of the first router is received from the second router.
KR1020090097313A 2009-10-13 2009-10-13 Method for reverse tracking of attaker packet and system for the same KR20110040152A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090097313A KR20110040152A (en) 2009-10-13 2009-10-13 Method for reverse tracking of attaker packet and system for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090097313A KR20110040152A (en) 2009-10-13 2009-10-13 Method for reverse tracking of attaker packet and system for the same

Publications (1)

Publication Number Publication Date
KR20110040152A true KR20110040152A (en) 2011-04-20

Family

ID=44046564

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090097313A KR20110040152A (en) 2009-10-13 2009-10-13 Method for reverse tracking of attaker packet and system for the same

Country Status (1)

Country Link
KR (1) KR20110040152A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101499666B1 (en) * 2013-08-08 2015-03-06 주식회사 시큐아이 Apparatus and method for detecting network scanning
KR20150105039A (en) * 2014-03-07 2015-09-16 한국전자통신연구원 Method and System for Network Connection-Chain Traceback using Network Flow Data
KR20220109125A (en) * 2021-01-28 2022-08-04 인천대학교 산학협력단 System and Method for Detecting Attacker Packet for IP Traceback Analysing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101499666B1 (en) * 2013-08-08 2015-03-06 주식회사 시큐아이 Apparatus and method for detecting network scanning
KR20150105039A (en) * 2014-03-07 2015-09-16 한국전자통신연구원 Method and System for Network Connection-Chain Traceback using Network Flow Data
US9537887B2 (en) 2014-03-07 2017-01-03 Electronics And Telecommunications Research Institute Method and system for network connection chain traceback using network flow data
KR20220109125A (en) * 2021-01-28 2022-08-04 인천대학교 산학협력단 System and Method for Detecting Attacker Packet for IP Traceback Analysing

Similar Documents

Publication Publication Date Title
US10721243B2 (en) Apparatus, system and method for identifying and mitigating malicious network threats
US8661544B2 (en) Detecting botnets
US8707440B2 (en) System and method for passively identifying encrypted and interactive network sessions
JP5050781B2 (en) Malware detection device, monitoring device, malware detection program, and malware detection method
KR101424490B1 (en) Reverse access detecting system and method based on latency
Deri et al. Effective traffic measurement using ntop
Osanaiye Short Paper: IP spoofing detection for preventing DDoS attack in Cloud Computing
US10693908B2 (en) Apparatus and method for detecting distributed reflection denial of service attack
US20050278779A1 (en) System and method for identifying the source of a denial-of-service attack
US10205641B2 (en) Inspection of traffic via SDN
WO2010031288A1 (en) Botnet inspection method and system
US10263975B2 (en) Information processing device, method, and medium
KR20150090925A (en) Method for detecting bypass access through anonymous network using round trip time variation
KR101045330B1 (en) Method for detecting http botnet based on network
KR20180062838A (en) System and method for network security performing adaptive rule-set setting
Burghouwt et al. Detection of covert botnet command and control channels by causal analysis of traffic flows
KR102149531B1 (en) Method for connection fingerprint generation and traceback based on netflow
KR20110040152A (en) Method for reverse tracking of attaker packet and system for the same
US10187414B2 (en) Differential malware detection using network and endpoint sensors
KR100977827B1 (en) Apparatus and method detecting connection mailcious web server system
KR20150026187A (en) System and Method for dropper distinction
JP4167866B2 (en) Data transmission method, data transmission system, and data transmission apparatus
KR101045556B1 (en) Method for detecting irc botnet based on network
US10462035B2 (en) Using control information to process data associated with an unsupported protocol
JP2022049717A (en) Communication device

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination