KR20110029340A - Protection system against ddos - Google Patents

Protection system against ddos Download PDF

Info

Publication number
KR20110029340A
KR20110029340A KR1020090086973A KR20090086973A KR20110029340A KR 20110029340 A KR20110029340 A KR 20110029340A KR 1020090086973 A KR1020090086973 A KR 1020090086973A KR 20090086973 A KR20090086973 A KR 20090086973A KR 20110029340 A KR20110029340 A KR 20110029340A
Authority
KR
South Korea
Prior art keywords
user
list
client
ddos
access
Prior art date
Application number
KR1020090086973A
Other languages
Korean (ko)
Other versions
KR101072981B1 (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 KR1020090086973A priority Critical patent/KR101072981B1/en
Publication of KR20110029340A publication Critical patent/KR20110029340A/en
Application granted granted Critical
Publication of KR101072981B1 publication Critical patent/KR101072981B1/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/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • 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/121Timestamp

Abstract

PURPOSE: A protection system against DDoS(Distributed Denial of Service) attack is provided to access a service client through a simple authentication process by establishing an unregistered client as a gray zone. CONSTITUTION: A connection control server(200) extracts the list including a user's IP information, when a client having a specific user IP accesses the server. The connection control server decides the connection state of the client. The authentication server(300) receives a user IP which is not capable of being classified, and not included the first and the second list from the connection control server. The certification server requests the input of the authentication key capable of confirming a normal user. If the authentication key is normally inputted, the certification server permits a connection.

Description

분산 서비스 거부 공격의 방어 시스템{Protection system against DDoS}Protection system against DDoS attacks {Protection system against DDoS}

본 발명은 분산 서비스 거부 공격(DDoS)의 방어 시스템에 관한 것으로, 더욱 상세하게는 클라이언트를 정상 사용자 그룹과 비정상 사용자 그룹으로 등록한 후에 비정상 사용자 그룹에 해당하는 클라이언트만 사전에 접속을 차단하고, 각 그룹에 등록되지 않은 클라이언트를 그레이 존(Gray Zone)으로 하여 인증 절차를 거친 후 접속되도록 함으로써 DDoS 공격에 대응할 수 있는 분산 서비스 거부 공격(DDoS)의 방어 시스템에 관한 것이다. The present invention relates to a defense system for distributed denial of service attacks (DDoS), and more specifically, after registering a client as a normal user group and an abnormal user group, only a client corresponding to the abnormal user group blocks access in advance, and each group The present invention relates to a defense system for distributed denial of service (DDoS) attacks that can cope with DDoS attacks by allowing a client that is not registered to a gray zone to be connected after being authenticated.

분산 서비스 거부(DDoS) 공격은 좀비를 이용하여 호스트 컴퓨터, 라우터, 서버, 네트워크 등의 합법적인 사용을 방해 또는 저해하기 위해 공격자 또는 공격자들에 의한 명백한 공격이다. 이러한 서비스 거부 공격은 타겟 네트워크 자체 내에서 시작될 수 있지만, 대부분은 인터넷을 통해 타겟에 연결된 외부 시스템 및 네트워크로부터 시작된다. Distributed Denial of Service (DDoS) attacks are obvious attacks by attackers or attackers to use zombie to hinder or hinder legitimate use of host computers, routers, servers, networks, and the like. Such denial of service attacks can be initiated within the target network itself, but most are originated from external systems and networks connected to the target via the Internet.

오늘날 인터넷에 연결된 장치, 시스템 및 네트워크는 오늘날 급속히 확장되 고 있는 DDoS 공격으로부터의 실질적인 위협에 직면해 있다. 이러한 공격은 의도한 타겟에 손상을 줄 뿐만 아니라 인터넷 자체의 안정성을 위협한다. Today's Internet-connected devices, systems, and networks face real threats from today's rapidly expanding DDoS attacks. These attacks not only damage the intended targets, but also threaten the stability of the Internet itself.

초기 DoS 공격 기술은 단일 소스로부터 단일 목적지로 패킷을 발생하여 전송하는 단순한 도구를 사용하였다. 종종 이러한 공격은 수작업으로 구성되었으며, 이는 공격의 횟수 및 효율성을 제한하였고, 예를 들어 소스 주소 패킷 필터링(source address packet filtering)에 의해 용이하게 방어될 수 있었다. Early DoS attack techniques used simple tools to generate and send packets from a single source to a single destination. Often these attacks were configured manually, which limited the number and efficiency of the attacks and could be easily defended by, for example, source address packet filtering.

그렇지만, 최근에는 소위 분산 DoS(DDoS) 공격이라고 하는 하나 이상의 타겟에 대해 자동으로 다중 소스 공격을 실행하는 툴킷이 개발되었다. 이들 툴킷은 해커 웹사이트로부터 다운로드하여 용이하게 제공받을 수 있으며, 비숙련된 인터넷 사용자조차도 DDoS 공격을 설정할 수 있을 정도로 사용하기 간편하다.Recently, however, toolkits have been developed that automatically execute multi-source attacks against one or more targets, known as distributed DoS (DDoS) attacks. These toolkits can be easily downloaded from hacker websites and are so easy to use that even an inexperienced Internet user can set up a DDoS attack.

단일 타겟에 대한 다중 소스 공격은 현재 인터넷 연결된 장치, 시스템 및 네트워크에 대해 자행되는 가장 흔한 형태의 DDoS 공격이다. 이러한 공격은 충분한 수의 타협된 호스트들이 거의 동시에 타겟을 향해 쓸모없는 패킷을 전송하기 위해 집결된다는 점에서 인터넷과 타겟 사이의 커다란 자원 비대칭성(huge resource asymmetry)을 이용한다. 결합된 트래픽의 크기는 종종 타겟 시스템 또는 네트워크로 하여금 그의 인터넷 연결을 파괴(crash) 및/또는 플러딩(flood)하기에 충분하며, 그에 따라 적어도 공격의 지속기간 동안은 타겟을 인터넷으로부터 효과적으로 제거하게 된다. 이러한 유형의 공격을 종종 패킷 플러딩 DDoS 공격(packet flooding DDoS attack)이라고 한다.Multisource attacks against single targets are the most common form of DDoS attacks currently against Internet-connected devices, systems, and networks. This attack takes advantage of the large resource asymmetry between the Internet and the target in that a sufficient number of compromised hosts are gathered to send useless packets towards the target at about the same time. The amount of combined traffic is often sufficient to cause the target system or network to crash and / or flood its Internet connection, thus effectively removing the target from the Internet, at least for the duration of the attack. . This type of attack is often referred to as a packet flooding DDoS attack.

단일 소스 DoS 공격에 있어서, 패킷이 실제 소스 주소를 포함한 경우 공격의 소스를 추적하는 것과 그 소스로부터 수신되고 있는 패킷을 폐기하기 위해 예를 들어 패킷 필터링을 사용하는 것이 가능하였지만, DDoS 공격은 타겟을 향해 쓸모없는 패킷을 전송하는 좀비의 수가 수만 개, 심지어는 수십만 개에 이를 수 있다는 점과, 좀비의 식별자를 마스킹하는 주소 스푸핑(address spoofing)도 종종 사용된다는 점에서 보다 악의적이다. In single-source DoS attacks, it was possible to use packet filtering, for example, to track the source of an attack and discard packets that are being received from that source if the packet contains a real source address. It is more malicious in that the number of zombies sending useless packets can reach tens of thousands, even hundreds of thousands, and address spoofing is often used to mask the zombies' identifiers.

쓸모없는 패킷의 소스가 식별될 수 있는 경우조차도, 이것은 타겟이 그 자신을 방어하는 것에 도움이 되지 않을 수 있는데, 그 이유는 수신된 패킷이 소위 리플렉터형 또는 간접형 DDoS 공격(reflector or indirect DDoS attack)에서 일어나는 것과 같이 타겟을 향해 패킷을 전송하도록 재촉받는 합법적인 소스로부터 온 것일 수 있기 때문이다. 이들 소스로부터의 패킷을 차단시키는 것은 또한 합법적인 사용자로부터의 패킷을 차단하기도 한다.Even if the source of an obsolete packet can be identified, this may not help the target defend itself, because the received packet is a so-called reflector or indirect DDoS attack. It may be from a legitimate source that is prompted to send a packet towards the target, as in. Blocking packets from these sources also blocks packets from legitimate users.

공격의 분산 특성으로 인해, 타겟 및 그 근방에서의 패킷 필터링은 통상 공격 패킷은 물론 정상(합법적인) 패킷도 누락시키는데, 그 이유는 패킷 필터기(packet filterer)가 이들을 구별할 수 없어 적어도 타겟에서의 서비스 손상을 가져오기 때문이다. Due to the distributed nature of the attack, packet filtering in the target and its vicinity usually misses the attack packet as well as the normal (legitimate) packet, because the packet filterer cannot distinguish them and at least on the target. This is because the service gets corrupted.

그 결과, 타겟에서의 DDoS의 검출은 일반적으로 효과적이지 않는데, 이는 그 검출이 언제나 너무 늦어서 타겟 시스템은 이미 서비스가 중단된 상태이며 또 실제 공격 오더는 하는 공격자 ( Commander Center , 이하 CC ) 는 기 확보하거나 또는 좀비판매사이트를 통해서 일정기간 좀비를 렌트한 공격 대행 시스템 ( 이하 좀비 시스템 )을 통해서 공격함으로 실제 공격을 오더한 CC를 확보하는 것이 쉽지 않으 며 특히 다계층의 CC 로 구현되는 경우는 더욱더 최종 CC 를 확보하고 공격자를 색출하는 것이 지난하여 DDoS 공격에 대한 효과적인 방어에 용이치가 않다.As a result, the detection of DDoS at the target is generally ineffective, since the detection is always too late so that the target system is already out of service and the attacker (Commander Center, CC) who does the actual attack order is secured. In addition, it is not easy to secure a CC that orders the actual attack by attacking through an attack agent system (hereinafter referred to as a zombie system) that rents a zombie for a period of time through a zombie sales site. Acquiring a CC and searching for attackers has not been easy in the past for effective defense against DDoS attacks.

종종, 타겟 네트워크의 인터넷 서비스 제공자(ISP) 네트워크는 DDoS 공격이 검출되면 타겟 네트워크를 향해오는 모든 패킷을 누락시키며( Black Hole Routing), 그에 따라 타겟 네트워크에서의 서비스를 효과적으로 정지시켜 여하튼 자신을 DDoS 공격으로부터 방어하려는 타겟 네트워크의 노력을 수포로 돌아가게 한다.Often, the ISP's Internet Service Provider (ISP) network drops all packets destined for the target network (Black Hole Routing) when a DDoS attack is detected, thus effectively shutting down the service on the target network, which in turn causes itself to attack the DDoS. The target network's efforts to defend against it go hand in hand.

모든 이러한 시스템은 인터넷 내의 지점 또는 지점들을 지나가는 패킷들을 모니터링하고, 결집된 패킷 스트림 거동의 어떤 측면을 분석하여 DDoS 공격을 검출하는 방법으로서 그 거동이 정상적인 거동으로부터 상당히 벗어나고 있는지 여부를 결정하려고 시도한다. All such systems attempt to determine whether the behavior is significantly deviating from normal behavior as a way to detect DDoS attacks by monitoring packets passing through points or points in the Internet and analyzing certain aspects of aggregated packet stream behavior.

주된 문제점은 무엇이 정상적인 거동을 구성하는지를 파악하는 것이다. 주어진 목적지 주소로 가고 있는 예상된 수의 패킷 또는 사용자 데이터그램 프로토콜(User Datagram Protocol, UDP) 패킷 대 전송 제어 프로토콜(Transmission Control Protocol, TCP) 패킷의 비등의 절대 척도(absolute measure)는 새 웹사이트가 인기를 끌고 있거나 새로운 애플리케이션이 배포되고 있는 등의 합법적인 이유로 인해 트래픽 패턴이 급격히 변할 수 있기 때문에 제한된 값을 갖는다. The main problem is figuring out what constitutes normal behavior. The absolute measure of boiling of the expected number of packets or User Datagram Protocol (UDP) packet-to-Transmission Control Protocol (TCP) packets going to a given destination address is determined by the new website. It has a limited value because traffic patterns can change dramatically due to legitimate reasons, such as being popular or new applications being deployed.

TCP SYN 메시지 대 ACK 메시지의 비를 기록하는 등의 다른 기술은 어떤 DoS 공격을 식별할 수 있지만, 공격자는 이러한 독특한 파라미터를 사용하여 검출 툴을 신속하게 우회할 수 있다.Other techniques, such as logging the ratio of TCP SYN messages to ACK messages, can identify some DoS attacks, but attackers can use these unique parameters to quickly bypass detection tools.

어디서 어떻게 DDoS 공격이 검출되는지에 관계없이, 타겟으로 향해가는 모든 패킷을 단순히 폐기하는 것 이외에, 현재 제안된 DDoS 공격에 대해 방어하는 방법들은 적어도 타겟 및/또는 그의 ISP가 인그레스 패킷 필터링(ingress packet filtering)을 수행하는 것을 포함한다. 이것은 패킷의 소스 주소가 그 착신 타겟 시스템 링크에 적절한 것인지를 ISP가 확인하는 것을 포함한다. Regardless of where and how DDoS attacks are detected, in addition to simply discarding all packets destined for the target, currently proposed methods for defending against DDoS attacks include at least the ingress packet filtering by the target and / or its ISP. performing filtering). This involves the ISP confirming that the source address of the packet is appropriate for its destination target system link.

DDoS 공격에 대해 방어하는 다른 방법으로는 원격 ISP 조차도 특정의 소스 주소를 갖는 패킷이 올지도 모를 가능한 링크를 식별할 수 있도록 패킷의 라우팅 정보를 증대시키는 것이 있다. Another way to defend against DDoS attacks is to augment the packet's routing information so that even remote ISPs can identify links that may be coming from a packet with a particular source address.

충분한 패킷이 주어진 경우 수신자가 그 패킷들이 택한 경로를 재구성할 수 있는 정보를 포함하도록 그의 의도한 용도 외에 인터넷 프로토콜(Internet Protocol, IP) 헤더에 기존의 필드를 사용하는 것이 수신자가 공격 패킷을 필터링하여 제거할 수 있는 방법이다. 그렇지만, 이 방법은 대량의 잘못된 정보를 타겟(수신자)으로 전달하기 위해 여전히 공격자에 의해 악용될 수 있으므로 제한된 효율성을 갖는다.Given enough packets, the use of existing fields in the Internet Protocol (IP) header in addition to its intended use to include information that the recipient can reconfigure the path taken by those packets would allow the recipient to filter the attack packets. It can be removed. However, this method has limited efficiency because it can still be exploited by an attacker to deliver large amounts of false information to the target (recipient).

따라서, 어떻게 DDoS 공격을 식별하고 그 공격이 있을 때 어떻게 그의 효과를 차단 또는 감소시키는지의 문제가 남는다. 인터넷 내의 어떤 선택된 지점(또는 지점들)에서 DDoS 공격을 검출하는 기존의 방법들은 시간에 따라 아주 가변적이고 인터넷의 기술이 진보함에 따라 발전하여 사라지게 될 수 있는 파라미터에 기초하고 있다. 따라서, 필요한 것은 기술의 변화에 불변이고 또 많은 DDoS 공격을 검출 할 가능성이 높을 정도로 충분히 일반적인 파라미터에 기초한 방법이다.Thus, the question remains of how to identify a DDoS attack and how to block or reduce its effectiveness when there is an attack. Existing methods for detecting DDoS attacks at any selected point (or points) in the Internet are highly variable over time and are based on parameters that can evolve and disappear as the Internet's technology advances. Therefore, what is needed is a method based on general enough parameters that is invariant to changes in technology and highly likely to detect many DDoS attacks.

DDoS 공격 검출 시스템을 인터넷 내에 설치하기 위한 조치들에도 불구하고, 대부분의 DDoS 검출 및 방어 시스템은 그의 네트워크, 시스템 및 장치를 이러한 공격으로부터 보호하고자 하는 엔드 호스트(수신자, 가능한 타겟)에 의해 운영되는 인터넷의 경계에 위치한다. 플러딩 패킷 공격의 특성이 주어진 경우, 필터링 시스템 자체가 무력화되지 않는 한 높은 처리 용량을 가져야만 하는 방어 시스템은 공격을 방어하기 위해 패킷 필터링에 주로 의존한다. Despite the measures to install a DDoS attack detection system in the Internet, most DDoS detection and defense systems operate on the Internet operated by end hosts (recipients, possible targets) who want to protect their networks, systems and devices from such attacks. It is located at the boundary of. Given the nature of flooding packet attacks, defense systems that must have high processing capacity unless the filtering system itself is neutralized rely primarily on packet filtering to defend against the attack.

현재, 경쟁하는 ISP들이 DDoS 공격에 대해 방어하기 위해 그의 네트워크를 업그레이드할 동기가 거의 없지만, 이것은 전 세계적으로 입법적 압력이 가해짐에 따라 변할 수 있다. 따라서, 수신자가 보다 지능적으로 수신된 패킷을 필터링하고 인터넷의 다른 연결된 시스템 및 네트워크에 대해 이 프로세스를 지원하도록 하는 동기를 생성할 수 있는 방법이 필요하다.Currently, competing ISPs have little incentive to upgrade their networks to defend against DDoS attacks, but this can change as legislative pressures around the world apply. Therefore, there is a need for a method that allows the receiver to more intelligently filter received packets and create a motivation to support this process for other connected systems and networks on the Internet.

따라서, 본 발명의 목적은 네트워크를 통해 접속되는 클라이언트를 정상 사용자 그룹과 비정상 사용자 그룹으로 등록한 후에 비정상 사용자 그룹에 해당하는 클라이언트는 사전에 접속을 차단하고, 각 그룹에 등록되지 않은 클라이언트를 그레이 존(Gray Zone)으로 하여 간결한 인증 절차를 거쳐 접속되도록 함으로써 좀비로 인하여 유발된 DDoS 공격에 대응할 수 있고 효과적으로 좀비를 관제할 수 있는 근본적이고 원천적인 방어 능력을 제공하는 것이다. Accordingly, an object of the present invention is to register a client connected through a network as a normal user group and an abnormal user group, and then the client corresponding to the abnormal user group blocks access in advance, and the gray zone ( The Gray Zone allows users to connect through a simple authentication process, providing a fundamental and fundamental defense to cope with DDoS attacks caused by zombies and to effectively control zombies.

상술한 본 발명의 목적을 달성하기 위한 본 발명에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템은, 접속 IP를 정상사용 IP와, 공격자 IP 및 분류 불가 IP를 포함한 3가지의 그룹으로 분류하여 대응하는 분산 서비스 거부 공격(DDoS)의 방어 시스템에 있어서, 상기 정상사용 IP에 해당하여 접속 허용이 가능한 사용자 IP 그룹에 대한 제1 리스트, 상기 공격자 IP에 해당하여 접속 차단된 사용자 IP 그룹에 대한 제2 리스트를 관리하고, 소정의 사용자 IP를 갖는 클라이언트 접속시, 상기 접속된 사용자 IP가 해당되는 리스트를 추출하여 접속 여부를 결정하는 접속 제어 서버와, 상기 접속 제어 서버에서 상기 제1, 2 리스트에 해당되지 않는 분류 불가의 클라이언트의 사용자 IP가 전달되면, 정상 사용자를 구분할 수 있는 인증키의 입력을 요청하고, 상기 인증키의 정상 입력시 접속을 허용하는 인증 서버로 구성된 것을 특징으로 한다.In order to achieve the object of the present invention described above, the defense system for distributed denial of service attacks (DDoS) according to the present invention is classified into three groups including a normal IP, an attacker IP, and an unclassifiable IP. In the defense system of the distributed denial of service attack (DDoS), the first list of the user IP group that can be allowed to access in response to the normal use IP, the second list for the user IP group blocked access corresponding to the attacker IP A connection control server which manages a list and determines whether to connect by extracting a list corresponding to the connected user IP when a client having a predetermined user IP is connected, and the connection control server corresponds to the first and second lists. If a user IP of a non- classifiable client is transmitted, a request for input of an authentication key for distinguishing a normal user is performed. Characterized in that it consists of an authentication server that allows access when the phase input.

이때, 상기 제1 리스트와 제2 리스트는 데이터베이스화하여 데이터베이스에서 관리되고, 상기 접속 제어 서버와 인증 서버는 상기 데이터베이스와 각각 연결되는 것을 특징으로 한다.In this case, the first list and the second list are database-managed and managed in a database, and the access control server and the authentication server are connected to the database, respectively.

그리고, 상기 접속 제어 서버는, 상기 접속된 클라이언트의 사용자 IP가 제1 리스트에 해당되면 정상 사용자로 판단하여 접속을 허용하고, 상기 접속된 클라이언트의 사용자 IP가 제2 리스트에 해당되면 비정상 사용자로 판단하여 접속을 차단 하며, 상기 접속된 클라이언트의 사용자 IP가 제1, 2 리스트에 해당되지 않으면 그레이 존(Gray Zone)으로 판단하여 인증 서버에 전달하는 것을 특징으로 한다.The access control server determines to be a normal user when the user IP of the connected client corresponds to the first list and permits access, and determines to be an abnormal user when the user IP of the connected client corresponds to the second list. If the user IP of the connected client does not correspond to the first and second lists, the access point is determined as a gray zone and transmitted to the authentication server.

한편, 상기 인증 서버의 인증키는 숫자, 난수, 문자, 특수 기호 중 적어도 하나 이상의 조합으로 이루어진 그래픽 퍼즐인 것을 특징으로 한다.On the other hand, the authentication key of the authentication server is characterized in that the graphic puzzle consisting of at least one combination of numbers, random numbers, letters, special symbols.

또한, 상기 인증 서버는, 상기 인증키를 정상 입력하는 클라이언트의 사용자 IP를 제1 리스트에 포함시키고, 상기 인증키를 입력하지 않은 클라이언트의 사용자 IP를 제2 리스트에 포함시키도록 하는 것을 특징으로 한다.The authentication server may include the user IP of the client that normally inputs the authentication key in the first list, and include the user IP of the client that does not input the authentication key in the second list. .

그리고, 상기 접속 제어 서버는 분산 서비스 거부 공격(DDoS) 이전에 정상 접속한 사용자 IP들을 제1 리스트로 하고, 평상시 보유한 비정상 사용자 IP들을 제2 리스트로 하여 지속적으로 업데이트 하는 것을 특징으로 한다.The access control server may continuously update user IPs normally connected before a distributed denial of service attack as a first list and abnormal user IPs normally held as a second list.

상기 접속 제어 서버는 상기 제1 리스트와 제2 리스트에 등록된 사용자 IP가 일정 시간 동안 접속이 차단 또는 허용되도록 타임스탬프를 적용한 후에 정해진 시간이 경과되면 자동으로 각 리스트에서 제거되도록 하는 것을 특징으로 한다.The access control server is characterized in that the user IP registered in the first list and the second list is automatically removed from each list when a predetermined time has elapsed after applying a timestamp so that access is blocked or allowed for a predetermined time. .

한편, 상기 접속 제어 서버는 상기 접속된 클라이언트의 사용자 IP가 상기 제2 리스트에 해당하면 상기 클라이언트에게 경고메시지를 팝업창을 이용하여 표시하도록 하는 것을 특징으로 한다.On the other hand, the access control server is characterized in that to display a warning message to the client using a pop-up window when the user IP of the connected client corresponds to the second list.

또한, 상기 접속 제어 서는 상기 접속된 클라이언트의 사용자 IP가 상기 제2 리스트에 해당하면 상기 클라이언트에게 웹페이지를 이용하여 치료 방법을 제시하고, 치료 후에 ‘차단리스트 해제요청’버튼을 클릭할 것을 경고메시지를 통해 제시하는 것을 특징으로 한다.In addition, if the user IP of the connected client corresponds to the second list, the access control provider presents a treatment method to the client using a web page, and warns the user to click a 'block list release request' button after the treatment. Characterized by the present through.

상기 인증 서버는, 클라이언트, 접속 제어 서버와 정보를 교환하는 통신부와, 상기 인증키를 생성하는 퍼즐 생성부와, 상기 접속 제어 서버에서 전달되는 사용자 IP의 클라이언트에게 인증키를 전송하는 퍼즐 전송부, 상기 클라이언트에서 키입력 데이터가 통신부를 통해 전송되면 상기 키입력 데이터와 인증키가 일치하는지를 판단하는 키입력 판단부와, 상기 키입력 판단부에서 클라이언트가 입력한 키입력 데이터와 인증키가 일치하면 정상 사용자로 판단하여 접속을 허용하고, 키입력 데이터가 입력되지 않으면 비정상 사용자로 판단하여 접속을 차단하는 접속 제어부를 포함하는 것을 특징으로 한다.The authentication server includes a communication unit for exchanging information with a client and a connection control server, a puzzle generation unit for generating the authentication key, a puzzle transmission unit for transmitting the authentication key to a client of a user IP transmitted from the connection control server; The key input determination unit determines whether the key input data and the authentication key match when the key input data is transmitted from the client, and when the key input data input by the client in the key input determination unit matches the authentication key, the key is normal. And a connection control unit for allowing access by judging as a user and blocking access by judging as an abnormal user if key input data is not input.

이때, 상기 퍼즐 생성부는, 상기 클라이언트의 URL에 포함되어 있는 정보를 사용하여 지원 언어를 확인하고, 클라이언트별 지원 언어에 따라 서로 다른 언어의 그래픽 퍼즐을 생성하는 것을 특징으로 한다.At this time, the puzzle generation unit, using the information included in the URL of the client to check the support language, characterized in that for generating a graphic puzzle of different languages according to the support language for each client.

한편, 상기 접속 제어 서버 또는 인증 서버에는 상기 인증 서버에서 접속을 허용한 사용자 IP를 제1 리스트에 추가하고, 접속을 차단한 사용자 IP를 제2 리스트에 추가하도록 하는 업데이트부를 포함하는 것을 특징으로 한다.On the other hand, the access control server or the authentication server is characterized in that it comprises an update unit for adding the user IP allowed to access from the authentication server to the first list, and adds the user IP blocked the access to the second list. .

상기와 같은 분산 서비스 거부 공격(DDoS)의 방어 시스템에 따르면, 네트워크를 통해 접속되는 클라이언트를 정상 사용자인 화이트 리스트와 비정상 사용자인 블랙 리스트로 등록한 후에 블랙 리스트에 해당하는 클라이언트만 사전에 접속을 차단하고, 각 리스트에 등록되지 않은 클라이언트인 신규접속 IP를 공격자와 정상 사용자를 구분하지 않고 그레이 존(Gray Zone)으로 분류하여 접속 초기에 간단한 인증 절차를 거쳐 접속되도록 하여 정상 사용자 PC와 좀비 PC를 분리함으로써 변화 무쌍한 공격의 패턴의 변화와 상관없이 DDoS 공격을 가장 원천적이고 분명하게 차단할 수 있는 효과가 있다. According to the defense system of the distributed denial-of-service attack (DDoS), after registering a client connected through the network as a white list as a normal user and a black list as an abnormal user, only the clients corresponding to the black list are blocked in advance. By classifying new access IPs which are clients not registered in each list into gray zones without distinguishing between attackers and normal users, users can be connected through a simple authentication process at the beginning of the connection. Regardless of the pattern of the violent attack, there is an effect that can block the DDoS attack most fundamentally and clearly.

또한, 본 발명은 트래픽분석, 접속 제어와 인증을 담당하는 각 서버와의 연동을 통해 행동 기반으로 화이트 리스트 또는 블랙리스트에 해당하는 클라이언트를 찾아낼 수 있고, 다양하게 변형하는 공격 방법에 대하여 일관되게 대응할 수 있는 인증시스템을 통하여 정상 사용자와 좀비 PC를 분류함으로써 고도의 관리 기술이 요구되지 않더라도 네트워크 등에서 수신된 비정상 트래픽을 지능적으로 차단 또는 필터링할 수 있고, 효과적으로 치유를 유도할 수 있는 효과도 있다. In addition, the present invention can find a client corresponding to a white list or a black list on the basis of behavior through linkage with each server in charge of traffic analysis, access control, and authentication, and consistently with respect to various attack methods. By classifying normal users and zombie PCs through a corresponding authentication system, it is possible to intelligently block or filter abnormal traffic received from a network, even if advanced management skills are not required, and to effectively induce healing.

한편, 본 발명은 피공격 대상 서버의 URL에 포함된 정보를 사용하여 피공격 대상 서버의 지원 언어를 확인하여 그에 따른 그래픽 퍼즐을 생성하여 전송함으로써 국내외 사용자에 대한 개별 언어 인증으로 외국에서의 프로그램을 통한 공격 접근을 원천 봉쇄 또는 제어할 수 있고, 국내 운영중인 외국어 사이트를 별도 관리할 수 있어 DDoS 공격시에도 해외 접속자의 불편을 최소화할 수 있는 효과도 있다.On the other hand, the present invention by using the information contained in the URL of the target server to check the supported language of the target server to create a graphic puzzle according to the transmission of the program in a foreign country by the individual language authentication for domestic and foreign users It is possible to block or control the access through the source, and to manage foreign language sites operated in Korea separately, thereby minimizing the inconvenience of foreign visitors even during DDoS attacks.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발 명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numerals are used for like elements in describing each drawing.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like, and are also implemented in the form of a carrier wave (for example, transmission over the Internet). It also includes. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템의 전체 구성이 도시된 블록도이고, 도 2는 본 발명의 실시예에 따른 인증 서버의 내부 구성을 도시한 블록도이다. 1 is a block diagram showing the overall configuration of a defense system for distributed denial of service attacks (DDoS) according to an embodiment of the present invention, Figure 2 is a block diagram showing the internal configuration of the authentication server according to an embodiment of the present invention to be.

도 1을 참조하면, 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템은, 네트워크를 통해 접속되는 다수의 클라이언트(110)와, 접속 제어 서버(200)와, 인증 서버(300) 및 데이터베이스(400)를 포함하고 있지만, 본 발명의 적용이 이에 한정되는 것은 아니고 트래픽 분석 서버나 안내 서버와 같이 웹상에서 접속 가능한 서버 컴퓨터를 포함할 수 있다.Referring to FIG. 1, a defense system for a distributed denial of service attack (DDoS) according to an embodiment of the present invention includes a plurality of clients 110, an access control server 200, and an authentication server 300 connected through a network. And a database 400, the application of the present invention is not limited thereto, and may include a server computer that can be accessed on the web, such as a traffic analysis server or a guidance server.

또한, 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템은 네트워크(100)를 포함하고 있으며, 상기 네트워크(100)는 각종 장치 및 컴퓨터들 사이에 통신 링크를 제공하는데 사용된 매체로서 전선, 무선 통신 링크, 또는 광섬유 케이블과 같은 각종 접속 수단을 포함할 수 있다. In addition, the defense system for distributed denial of service attacks (DDoS) according to an embodiment of the present invention includes a network 100, the network 100 is a medium used to provide a communication link between various devices and computers And various connection means such as wires, wireless communication links, or fiber optic cables.

여기서, 상기 클라이언트(110)는 개인용 컴퓨터 또는 네트워크 컴퓨터로서, 각각 고유의 사용자 IP를 가지고 네트워크(100)를 통해 네트워크상의 각종 웹페이지에 접속한다.Here, the client 110 is a personal computer or a network computer, each of which has a unique user IP and accesses various web pages on the network through the network 100.

상기 접속 제어 서버(200)는 접속 허용이 가능한 사용자 IP 그룹에 대한 제1 리스트(410)와 접속 차단된 사용자 IP 그룹에 대한 제2 리스트(420)를 관리하여, 소정의 사용자 IP를 갖는 클라이언트(110) 접속시, 상기 접속된 클라이언트(110)의 사용자 IP와 리스트를 비교하여 접속 허용 여부를 결정한다.The access control server 200 manages a first list 410 for a user IP group that can be allowed to access and a second list 420 for a user IP group that is blocked from access, thereby managing a client having a predetermined user IP ( 110) In the connection, it is determined whether to allow the connection by comparing the user IP and the list of the connected client 110.

즉, 상기 접속 제어 서버(200)는 접속된 클라이언트(110)의 사용자 IP가 제1 리스트(410)에 해당되면 정상 사용자로 판단하여 접속을 허용하고, 접속된 클라이언트(110)의 사용자 IP가 제2 리스트(420)에 해당되면 비정상 사용자로 판단하여 접속을 차단하며, 접속된 클라이언트(110)의 사용자 IP가 제1, 2 리스트(410, 420)에 모두 해당되지 않으면 그레이 존(Gray Zone)으로 판단하여 인증 서버(300)에 알린다.That is, if the user IP of the connected client 110 corresponds to the first list 410, the access control server 200 determines that the user is a normal user and permits access, and the user IP of the connected client 110 is deleted. 2, if the user 420 of the connected client 110 does not correspond to the first and second lists 410 and 420, the access is determined to be an abnormal user. The determination is made and notified to the authentication server 300.

이를 위해, 상기 접속 제어 서버(200)는 분산 서비스 거부 공격(DDoS) 이전에 정상적으로 접속한 사용자의 IP들을 화이트 리스트(White list)로 등록하고, 이를 제1 리스트(410)로 선정하여 데이터베이스(400)에 저장한다. 그리고, 평상시 보유한 비정상 사용자의 IP들을 블랙 리스트(Black list)로 등록하고, 이를 제2 리스트(420)로 선정하여 데이터베이스(400)에 저장한 후에, 지속적으로 상기 화이트 리스트와 블랙 리스트 정보를 업데이트한다. To this end, the access control server 200 registers the IPs of users normally connected before a distributed denial of service attack (DDoS) as a white list, selects it as a first list 410, and selects the database 400. ). Then, the IPs of the abnormally held users are normally registered as a black list, the second list 420 is selected and stored in the database 400, and the white list and the black list information are continuously updated. .

또한, 접속 제어 서버(200)는 제1 리스트(410)와 제2 리스트(420)에 등록된 각 IP들에 일정 시간 동안 접속을 차단하거나 혹은 허용하는 타임 스탬프를 적용하고, 정해진 시간이 초과하면 자동으로 리스트에서 제거되도록 한다.In addition, the access control server 200 applies a time stamp to block or allow access for a predetermined time to each of the IPs registered in the first list 410 and the second list 420, and when the predetermined time is exceeded. To be automatically removed from the list.

따라서, 일정 시간이 경과하여 제1 리스트(410)에 해당하는 클라이언트가 제1 리스트에서 제거되면, 그 클라이언트가 다시 인증 절차를 거쳐 접속을 시도함으로써, 제1 리스트(410)에 해당되는 클라이언트도 주기적으로 정상 사용자인지를 확인할 수 있게 된다. Therefore, when a client corresponding to the first list 410 is removed from the first list after a certain time, the client corresponding to the first list 410 also periodically tries to access the client through the authentication procedure again. You can check whether you are a normal user.

또한, 상기 접속 제어 서버(200)는 접속된 클라이언트의 사용자 IP가 제2 리스트(420)에 해당하면 해당 클라이언트에게 "좀비PC로 추정되오니 백신 치료 후 접 속해 주십시오"와 같은 경고메시지를 팝업창을 이용하여 표시한다. In addition, if the user IP of the connected client corresponds to the second list 420, the access control server 200 uses a pop-up window such as a warning message to the client, such as "Zombie PC. To display.

물론, 상기 접속 제어 서버(200)는 접속된 클라이언트의 사용자 IP가 제2 리스트(420)에 해당하면 해당 클라이언트에게 웹페이지를 이용하여 치유방법을 제시하고, 치료 후에 ‘차단리스트해제요청’버튼을 클릭할 것을 경고메시지를 통해 제시할 수도 있다. Of course, if the user IP of the connected client corresponds to the second list 420, the access control server 200 suggests a healing method to the client by using a web page, and after the treatment, presses the 'block list release request' button. A warning message may be suggested to click.

한편, 상기 인증 서버(300)는, 정상 사용자와 좀비(즉, 공격자)를 분류하기 위한 것으로, 접속 제어 서버(200)에서 제1, 2 리스트(410, 420)에 모두 해당되지 않는 클라이언트의 사용자 IP가 전달되면, 정상 사용자를 구분할 수 있는 인증키의 입력을 요청하고, 상기 인증키의 정상 입력시에만 접속을 허용한다.Meanwhile, the authentication server 300 is for classifying normal users and zombies (that is, attackers), and users of clients who do not correspond to the first and second lists 410 and 420 in the access control server 200. When the IP is delivered, it requests an input of an authentication key for distinguishing a normal user, and allows access only when the authentication key is normally input.

이때, 상기 인증 서버(300)는, 도 2에 도시된 바와 같이, 클라이언트(110), 접속 제어 서버(200) 및 데이터베이스(400)와 정보를 교환하는 통신부(310)와, 상기 접속 제어 서버(200)에 전달되는 사용자 IP의 클라이언트에게 숫자, 난수, 문자, 특수 기호 중 적어도 하나 이상의 조합으로 이루어진 그래픽 퍼즐(325), 즉 인증키를 생성하는 퍼즐 생성부(320)와, 상기 접속 제어 서버(200)에서 전달되는 그레이 존에 해당되는 사용자 IP의 클라이언트에게 그래픽 퍼즐(325)을 전송하는 퍼즐 전송부(330)와, 상기 클라이언트(110)에서 상기 그래픽 퍼즐(325)에 해당하는 키입력 데이터가 통신부(310)를 통해 전송되면 상기 키입력 데이터와 그래픽 퍼즐(325)이 일치하는지를 판단하는 키입력 판단부(340) 및 상기 키입력 판단부(340)에서의 판단 결과 클라이언트가 입력한 키입력 데이터와 그래픽 퍼즐(325)이 일치하면 정상 사용자로 판단하여 접속을 허용하고, 키입력 데이터가 입력되지 않으면 비정상 사용자로 판단하여 접속을 차단하는 접속 제어부(350)를 포함한다.At this time, the authentication server 300, as shown in Figure 2, the communication unit 310 for exchanging information with the client 110, the connection control server 200 and the database 400, and the connection control server ( Graphic puzzle 325 composed of at least one or more combinations of numbers, random numbers, letters, and special symbols to the client of the user IP delivered to the client IP, that is, a puzzle generator 320 for generating an authentication key, and the access control server ( The puzzle transmission unit 330 for transmitting the graphic puzzle 325 to the client of the user IP corresponding to the gray zone transmitted from 200, and the key input data corresponding to the graphic puzzle 325 in the client 110 When it is transmitted through the communication unit 310, the key input determination unit 340 for determining whether the key input data matches the graphic puzzle 325 and the key input data input by the client as a result of the determination by the key input determination unit 340. Wow If the graphic puzzle 325 matches, the access control unit 350 determines that the user is a normal user and permits access.

한편, 상기 접속 제어 서버(200) 또는 인증 서버(300)에는 접속을 허용한 사용자 IP를 제1 리스트(410)에 추가하고, 접속을 차단한 사용자 IP를 제2 리스트에 추가하도록 데이터베이스(400)에 새로운 정보를 전송하는 업데이트부(360)를 포함한다. In the meantime, the access control server 200 or the authentication server 300 adds a user IP allowing access to the first list 410 and adds a user IP which has blocked access to the second list. Update unit 360 for transmitting new information to the.

그리고, 상기 데이터베이스(400)는 화이트 리스트에 해당되는 사용자 IP 그룹에 대한 제1 리스트(410)와, 블랙 리스트에 해당되는 사용자 IP 그룹에 대한 제2 리스트(420)가 저장되고, 상기 접속 제어 서버(200) 또는 인증 서버(300)를 통해 새로운 정보가 지속적으로 추가, 삭제, 수정되게 된다. The database 400 stores a first list 410 for a user IP group corresponding to a white list and a second list 420 for a user IP group corresponding to a black list. New information is continuously added, deleted, or modified through the 200 or the authentication server 300.

이러한 데이터베이스(400)는 제1, 2 리스트(410, 420)가 저장되는 저장소 외에 여러 개의 저장소를 마련해 두고, 각종 운용 및 응용 프로그램, 사용자 정보 등의 다양한 자료를 저장할 수 있다. The database 400 may provide a plurality of repositories in addition to a repository in which the first and second lists 410 and 420 are stored, and may store various data such as various operations, applications, and user information.

이하, 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템의 동작에 대해 설명한다.Hereinafter, an operation of the defense system for distributed denial of service attacks (DDoS) according to an embodiment of the present invention will be described.

도 3은 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템의 흐름도이다. 3 is a flow diagram of a defense system for distributed denial of service attacks (DDoS) in accordance with an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템은, 먼저 DDoS 공격 이전에 정상 접속한 사용자 IP 그룹으로 이루어진 화이트 리스트에 해당되는 제1 리스트(410)와, DDoS 또는 다른 종류의 악성 프로그 램에 감염된 좀비 PC를 보유한 사용자 IP 그룹으로 이루어진 블랙 리스트에 해당되는 제2 리스트(420)가 데이터베이스(400)에 저장되어 있다.Referring to FIG. 3, a defense system for a distributed denial of service attack according to an embodiment of the present invention includes a first list 410 corresponding to a white list consisting of user IP groups normally connected before a DDoS attack. A second list 420 corresponding to a black list of user IP groups having zombie PCs infected with DDoS or other malicious programs is stored in the database 400.

이때, 화이트 리스트에 해당되는 클라이언트1(111)의 접속 시도시, 접속 제어 서버(200)는 클라이언트1(111)의 사용자 IP를 조회하여, 상기 사용자 IP가 제1 리스트(410)에 해당되면 클라이언트1(111)의 접속을 허용한다.(S1, S2, S3)At this time, when attempting to access the client 1 111 corresponding to the white list, the access control server 200 inquires the user IP of the client 1 111, and if the user IP corresponds to the first list 410, the client. Allows the connection of 1 (111) (S1, S2, S3).

반면, 블랙 리스트에 해당되는 클라이언트2(112)의 접속 시도시, 상기 접속 제어 서버(200)는 클라이언트2(112)의 사용자 IP를 조회하여, 상기 사용자 IP가 제2 리스트(420)에 해당되면 클라이언트2(112)의 접속을 차단하고, 좀비PC로 추정되니 백신 치료 후 접속을 재시도할 것을 요청하는 경고 메시지를 팝업창으로 출력한다.(S4, S5, S6)On the other hand, when the client 2 112 corresponding to the black list attempts to connect, the access control server 200 inquires the user IP of the client 2 112 and the user IP corresponds to the second list 420. Blocking the connection of the client 2 (112), and is estimated to be a zombie PC outputs a warning message requesting to retry the connection after the vaccine treatment in a pop-up window. (S4, S5, S6)

한편, 클라이언트3(113)의 접속 시도시, 접속 제어 서버(200)는 클라이언트3(113)의 사용자 IP를 조회하여 상기 사용자 IP가 제1, 2 리스트(410, 420)에 해당되는지를 확인한다. On the other hand, when the client 3 113 attempts to connect, the access control server 200 checks the user IP of the client 3 113 and checks whether the user IP corresponds to the first and second lists 410 and 420. .

그 결과, 클라이언트3(113)의 사용자 IP가 제1, 2 리스트(410, 420)에 모두 존재하지 않으면 그레이 존에 해당된다고 판단하고, 클라이언트3(113)의 사용자 IP를 인증 서버(300)로 전달한다.(S7, S8, S9)As a result, if the user IP of the client 3 113 does not exist in both of the first and second lists 410 and 420, it is determined to be a gray zone, and the user IP of the client 3 113 is sent to the authentication server 300. (S7, S8, S9)

그러면, 인증 서버(300)는 클라이언트3(113)의 사용자 IP로 숫자, 문자, 특수기호, 난수 중 적어도 1개 이상의 조합으로 이루어진 그래픽 퍼즐(325)을 생성하여 전송한다.(S10, 11)Then, the authentication server 300 generates and transmits a graphic puzzle 325 composed of at least one combination of numbers, letters, special symbols, and random numbers to the user IP of the client 3 113 (S10, 11).

상기 클라이언트3(113)에서 그래픽 퍼즐(325)을 보고 입력한 키입력 데이터 가 전송되면, 인증 서버(300)는 키입력 데이터와 그래픽 퍼즐(325)이 일치하는지를 판단하여 데이터가 일치하면 클라이언트3(113)에게 접속을 허용한다.(S12, S13, S14, S15)When the key input data inputted after viewing the graphic puzzle 325 is transmitted from the client 3 113, the authentication server 300 determines whether the key input data and the graphic puzzle 325 match, and if the data match, the client 3 ( 113 is allowed to connect (S12, S13, S14, S15).

반면, 상기 인증 서버(300)는 키입력 데이터가 전송되었으나 키입력 데이터와 그래픽 퍼즐(325)이 일치하지 않는다면 재인증 절차를 거치고, 클라이언트3(113)에서 키입력 데이터가 전송되지 않으면 비정상 사용자(좀비 PC)로 판단하고, 클라이언트3(113)의 접속을 차단한다.(S16, S17, S18)On the other hand, if the key input data is transmitted but the key input data and the graphic puzzle 325 does not match, the authentication server 300 undergoes a re-authentication procedure. If the key input data is not transmitted from the client 3 113, the abnormal user ( Zombie PC), and disconnects client 3 113 (S16, S17, S18).

또한, 상기 인증 서버(300)는 자신의 업데이트부(360) 또는 접속 제어 서버(200)를 통해 접속이 허용된 클라이언트3(113)의 사용자 IP를 제1 리스트(410)에 추가하거나, 접속이 차단된 클라이언트3(113)의 사용자 IP를 제2 리스트(420)에 추가한다. In addition, the authentication server 300 adds the user IP of the client 3 113 allowed to access through its update unit 360 or the access control server 200 to the first list 410, or access is established. The user IP of the blocked client 3 113 is added to the second list 420.

한편, 상기 제2 리스트(420)에 등록된 클라이언트(110)가 자신의 컴퓨터에 존재하는 악성 프로그램을 제거한 후 접속을 시도하고자 할 경우, 안내 페이지 '차단리스트해제요청’ 버튼을 클릭하여 블랙리스트 차단 해제를 요청하면, 해당 IP가 정상 사용자인지를 확인하고 블랙 리스트인 제2 리스트(420)에서 제외한 후에 인증 서버(300)로 전달된다. On the other hand, if the client 110 registered in the second list 420 removes a malicious program existing in its computer and attempts to access, the blacklist is blocked by clicking the 'Block List Release Request' button on the guide page. When requesting the release, it checks whether the corresponding IP is a normal user, excludes it from the second list 420 that is a black list, and then transfers the authentication server 300.

상기에서는 분산 서비스 거부 공격(DDoS)에 대응하는 기능을 구현하는 실시예를 설명하였으나, 본 발명의 분산 서비스 거부 공격(DDoS)의 방어 시스템은 DDoS 공격에 수행되는 것으로 한정되지 않으며, 바이러스, 웜, 트로이 목마, 및 데이터 처리 시스템 또는 네트워크의 정상적인 동작을 방해하도록 설계된 다른 유형의 해로운 프로그램에도 적용될 수 있다. In the above, an embodiment for implementing a function corresponding to a distributed denial of service attack (DDoS) has been described. However, the defense system of the distributed denial of service attack (DDoS) of the present invention is not limited to being performed in a DDoS attack. It can also be applied to Trojan horses and other types of harmful programs designed to disrupt normal operation of data processing systems or networks.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described with reference to the above embodiments, those skilled in the art will understand that various modifications and changes can be made without departing from the spirit and scope of the invention as set forth in the claims below. Could be.

본 발명은 분산 서비스 거부 공격(DDoS)의 방어 시스템에 관한 것으로서, 특히 네트워크를 통해 접속되는 클라이언트를 정상 사용자인 화이트 리스트와 비정상 사용자인 블랙 리스트로 등록한 후에 블랙 리스트에 해당하는 클라이언트만 사전에 접속을 차단하고, 각 리스트에 등록되지 않은 클라이언트를 그레이 존(Gray Zone)으로 하여 인증 절차를 거쳐 접속되도록 함으로써 DDoS 공격에 대응할 수 있고, 그 외에 시스템 또는 네트워크의 정상적인 동작을 방해하는 악성 프로그램에 감염된 비정상 트래픽을 지능적으로 차단 또는 필터링하고, 효과적으로 치유할 수 있도록 유도할 수 있다. The present invention relates to a defense system for Distributed Denial of Service (DDoS), and in particular, after registering a client connected through a network as a white list as a normal user and a black list as an abnormal user, only a client corresponding to the black list is previously connected. Blocks and allows clients not registered in each list to be authenticated using a gray zone to respond to DDoS attacks, and in addition, abnormal traffic infected with malicious programs that interfere with the normal operation of the system or network. Can be intelligently blocked or filtered and induces effective healing.

도 1은 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템의 전체 구성이 도시된 블록도이고, 1 is a block diagram showing the overall configuration of a defense system for distributed denial of service attacks (DDoS) according to an embodiment of the present invention,

도 2는 본 발명의 실시예에 따른 인증 서버의 내부 구성을 도시한 블록도이고,2 is a block diagram showing an internal configuration of an authentication server according to an embodiment of the present invention;

도 3은 본 발명의 실시예에 따른 분산 서비스 거부 공격(DDoS)의 방어 시스템의 흐름도이다.  3 is a flow diagram of a defense system for distributed denial of service attacks (DDoS) in accordance with an embodiment of the present invention.

*** 도면의 주요부분에 대한 부호의 설명 ****** Explanation of symbols for main parts of drawing ***

100 : 네트워크 110 : 클라이언트100: network 110: client

200 : 접속 제어 서버 300 : 인증 서버200: access control server 300: authentication server

310 : 통신부 320 : 퍼즐 생성부310: communication unit 320: puzzle generation unit

325 : 그래픽 퍼즐 330 : 퍼즐 전송부325: graphic puzzle 330: puzzle transmission unit

340 : 키입력 판단부 350 : 접속 제어부340: key input determination unit 350: connection control unit

360 : 업데이트부 400 : 데이터베이스360: update unit 400: database

410, 420 : 제1, 2 리스트410, 420: first and second list

Claims (12)

접속 IP를 정상사용 IP와, 공격자 IP 및 분류 불가 IP를 포함한 3가지의 그룹으로 분류하여 대응하는 분산 서비스 거부 공격(DDoS)의 방어 시스템에 있어서,In a defense system of a distributed denial of service attack (DDoS), the access IP is classified into three groups including a normal use IP, an attacker IP, and an unclassifiable IP. 상기 정상사용 IP에 해당하여 접속 허용이 가능한 사용자 IP 그룹에 대한 제1 리스트, 상기 공격자 IP에 해당하여 접속 차단된 사용자 IP 그룹에 대한 제2 리스트를 관리하고, 소정의 사용자 IP를 갖는 클라이언트 접속시, 상기 접속된 사용자 IP가 해당되는 리스트를 추출하여 접속 여부를 결정하는 접속 제어 서버와,Managing a first list of user IP groups that are allowed to access in response to the normal use IP, and a second list of user IP groups that are blocked from access in response to the attacker IP, and accessing a client having a predetermined user IP. An access control server extracting a list corresponding to the connected user IP and determining whether to access the same; 상기 접속 제어 서버에서 상기 제1, 2 리스트에 해당되지 않는 분류 불가의 클라이언트의 사용자 IP가 전달되면, 정상 사용자를 구분할 수 있는 인증키의 입력을 요청하고, 상기 인증키의 정상 입력시 접속을 허용하는 인증 서버로 구성된 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.If the user IP of a non-classifiable client that does not correspond to the first and second list is delivered from the access control server, request input of an authentication key for distinguishing a normal user, and allow access when the authentication key is normally input. Distributed Denial of Service (DDoS) defense system, characterized in that consisting of an authentication server. 제1항에 있어서,The method of claim 1, 상기 제1 리스트와 제2 리스트는 데이터베이스화하여 데이터베이스에서 관리되고, 상기 접속 제어 서버와 인증 서버는 상기 데이터베이스와 각각 연결되는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.And the first list and the second list are database-managed and managed in a database, and the access control server and the authentication server are connected to the database, respectively. 제1항에 있어서,The method of claim 1, 상기 접속 제어 서버는, 상기 접속된 클라이언트의 사용자 IP가 제1 리스트 에 해당되면 정상 사용자로 판단하여 접속을 허용하고, 상기 접속된 클라이언트의 사용자 IP가 제2 리스트에 해당되면 비정상 사용자로 판단하여 접속을 차단하며, 상기 접속된 클라이언트의 사용자 IP가 제1, 2 리스트에 해당되지 않으면 그레이 존(Gray Zone)으로 판단하여 인증 서버에 전달하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The access control server determines to be a normal user when the user IP of the connected client corresponds to the first list and permits access, and determines to be an abnormal user when the user IP of the connected client corresponds to the second list. If the user IP of the connected client does not correspond to the first and second list, it is determined as a gray zone and forwarded to the authentication server, characterized in that the defense system for distributed denial of service attacks (DDoS). 제1항에 있어서,The method of claim 1, 상기 인증 서버의 인증키는 숫자, 난수, 문자, 특수 기호 중 적어도 하나 이상의 조합으로 이루어진 그래픽 퍼즐인 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The authentication key of the authentication server is a defense system for distributed denial of service (DDoS), characterized in that the graphic puzzle consisting of a combination of at least one of numbers, random numbers, letters, special symbols. 제1항에 있어서,The method of claim 1, 상기 인증 서버는, 상기 인증키를 정상 입력하는 클라이언트의 사용자 IP를 제1 리스트에 포함시키고, 상기 인증키를 입력하지 않은 클라이언트의 사용자 IP를 제2 리스트에 포함시키도록 하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The authentication server is configured to include the user IP of the client that normally enters the authentication key in the first list, and to include the user IP of the client that does not enter the authentication key in the second list. Defensive attack (DDoS) defense system. 제1항에 있어서,The method of claim 1, 상기 접속 제어 서버는 분산 서비스 거부 공격(DDoS) 이전에 정상 접속한 사용자 IP들을 제1 리스트로 하고, 평상시 보유한 비정상 사용자 IP들을 제2 리스트 로 하여 지속적으로 업데이트 하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The access control server performs a distributed denial of service attack characterized by continuously updating user IPs normally connected before a distributed denial of service attack (DDoS) as a first list, and using abnormally held user IPs as a second list. DDoS) defense system. 제1항에 있어서,The method of claim 1, 상기 접속 제어 서버는 상기 제1 리스트와 제2 리스트에 등록된 사용자 IP가 일정 시간 동안 접속이 차단 또는 허용되도록 타임스탬프를 적용한 후에 정해진 시간이 경과되면 자동으로 각 리스트에서 제거되도록 하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The access control server is configured to automatically remove the user IP registered in the first list and the second list from each list when a predetermined time elapses after applying a time stamp to block or allow access for a predetermined time. Defense against Distributed Denial of Service Attacks (DDoS). 제1항에 있어서,The method of claim 1, 상기 접속 제어 서버는 상기 접속된 클라이언트의 사용자 IP가 상기 제2 리스트에 해당하면 상기 클라이언트에게 경고메시지를 팝업창을 이용하여 표시하도록 하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The access control server defense system for a distributed denial of service attack (DDoS), characterized in that to display a warning message to the client using a pop-up window if the user IP of the connected client corresponds to the second list. 제1항에 있어서,The method of claim 1, 상기 접속 제어 서는 상기 접속된 클라이언트의 사용자 IP가 상기 제2 리스트에 해당하면 상기 클라이언트에게 웹페이지를 이용하여 치료 방법을 제시하고, 치료 후에 ‘차단리스트 해제요청’버튼을 클릭할 것을 경고메시지를 통해 제시하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.If the user IP of the connected client corresponds to the second list, the access control provider presents a treatment method to the client by using a web page, and warns the user to click a 'block list release request' button after the treatment. Distributed defense denial of service (DDoS) defense system characterized in that. 제1항에 있어서,The method of claim 1, 상기 인증 서버는, The authentication server, 클라이언트, 접속 제어 서버와 정보를 교환하는 통신부와, A communication unit for exchanging information with a client and a connection control server, 상기 인증키를 생성하는 퍼즐 생성부와, Puzzle generation unit for generating the authentication key, 상기 접속 제어 서버에서 전달되는 사용자 IP의 클라이언트에게 인증키를 전송하는 퍼즐 전송부, Puzzle transmission unit for transmitting the authentication key to the client of the user IP delivered from the access control server, 상기 클라이언트에서 키입력 데이터가 통신부를 통해 전송되면 상기 키입력 데이터와 인증키가 일치하는지를 판단하는 키입력 판단부와, A key input determination unit determining whether the key input data and the authentication key match when the key input data is transmitted from the client through the communication unit; 상기 키입력 판단부에서 클라이언트가 입력한 키입력 데이터와 인증키가 일치하면 정상 사용자로 판단하여 접속을 허용하고, 키입력 데이터가 입력되지 않으면 비정상 사용자로 판단하여 접속을 차단하는 접속 제어부를 포함하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.And a connection control unit for allowing access by determining that the user is a normal user when the key input data input by the client and the authentication key match with each other, and determining that the user is an abnormal user when the key input data is not input. Distributed Denial of Service Attack (DDoS) defense system, characterized in that. 제10항에 있어서,The method of claim 10, 상기 퍼즐 생성부는, 상기 클라이언트의 URL에 포함되어 있는 정보를 사용하여 지원 언어를 확인하고, 클라이언트별 지원 언어에 따라 서로 다른 언어의 그래픽 퍼즐을 생성하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템.The puzzle generation unit checks a supported language using information included in the URL of the client, and generates a graphic puzzle of a different language according to the supported language for each client. Defense system. 제1항에 있어서,The method of claim 1, 상기 접속 제어 서버 또는 인증 서버에는 상기 인증 서버에서 접속을 허용한 사용자 IP를 제1 리스트에 추가하고, 접속을 차단한 사용자 IP를 제2 리스트에 추가하도록 하는 업데이트부를 포함하는 것을 특징으로 하는 분산 서비스 거부 공격(DDoS)의 방어 시스템. The access control server or the authentication server includes an update unit for adding a user IP allowed to access from the authentication server to the first list and adding the user IP blocked from access to the second list. Defensive attack (DDoS) defense system.
KR1020090086973A 2009-09-15 2009-09-15 Protection system against DDoS KR101072981B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090086973A KR101072981B1 (en) 2009-09-15 2009-09-15 Protection system against DDoS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090086973A KR101072981B1 (en) 2009-09-15 2009-09-15 Protection system against DDoS

Publications (2)

Publication Number Publication Date
KR20110029340A true KR20110029340A (en) 2011-03-23
KR101072981B1 KR101072981B1 (en) 2011-10-12

Family

ID=43935231

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090086973A KR101072981B1 (en) 2009-09-15 2009-09-15 Protection system against DDoS

Country Status (1)

Country Link
KR (1) KR101072981B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012165777A2 (en) * 2011-05-27 2012-12-06 주식회사 시큐클라우드 Method for defending against a hard-to-detect ddos attack
KR101223932B1 (en) * 2011-04-19 2013-02-05 주식회사 코닉글로리 SYSTEM FOR COPING WITH DDoS ATTACK USING REAL USER CERTIFICATION AND METHOD FOR COPING WITH DDOS ATTACK USING THE SAME
KR101375375B1 (en) * 2012-02-24 2014-03-17 주식회사 퓨쳐시스템 Zombie pc detection and protection system based on gathering of zombie pc black list
CN110351291A (en) * 2019-07-17 2019-10-18 海南大学 Ddos attack detection method and device based on multiple dimensioned convolutional neural networks

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101132573B1 (en) * 2011-11-23 2012-04-05 주식회사 윈스테크넷 Defense system of automatic code attack that threaten web server and defense method thereof
KR101434387B1 (en) 2013-01-02 2014-08-26 주식회사 윈스 Blocking Method for the Advanced Distributed Denial of Service Attack

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100858271B1 (en) * 2007-11-27 2008-09-11 주식회사 나우콤 Method and system for defensing distributed denial of service

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101223932B1 (en) * 2011-04-19 2013-02-05 주식회사 코닉글로리 SYSTEM FOR COPING WITH DDoS ATTACK USING REAL USER CERTIFICATION AND METHOD FOR COPING WITH DDOS ATTACK USING THE SAME
WO2012165777A2 (en) * 2011-05-27 2012-12-06 주식회사 시큐클라우드 Method for defending against a hard-to-detect ddos attack
WO2012165777A3 (en) * 2011-05-27 2013-03-28 주식회사 시큐클라우드 Method for defending against a hard-to-detect ddos attack
KR101375375B1 (en) * 2012-02-24 2014-03-17 주식회사 퓨쳐시스템 Zombie pc detection and protection system based on gathering of zombie pc black list
CN110351291A (en) * 2019-07-17 2019-10-18 海南大学 Ddos attack detection method and device based on multiple dimensioned convolutional neural networks
CN110351291B (en) * 2019-07-17 2021-07-13 海南大学 DDoS attack detection method and device based on multi-scale convolutional neural network

Also Published As

Publication number Publication date
KR101072981B1 (en) 2011-10-12

Similar Documents

Publication Publication Date Title
US11405359B2 (en) Network firewall for mitigating against persistent low volume attacks
JP6894003B2 (en) Defense against APT attacks
Portokalidis et al. Sweetbait: Zero-hour worm detection and containment using low-and high-interaction honeypots
Koniaris et al. Analysis and visualization of SSH attacks using honeypots
Ghafir et al. Blacklist-based malicious ip traffic detection
Zarras et al. Automated generation of models for fast and precise detection of HTTP-based malware
Soltani et al. A survey on real world botnets and detection mechanisms
JP2019021294A (en) SYSTEM AND METHOD OF DETERMINING DDoS ATTACKS
JP6086423B2 (en) Unauthorized communication detection method by collating observation information of multiple sensors
Ko et al. Management platform of threats information in IoT environment
KR101072981B1 (en) Protection system against DDoS
Nicholson et al. A taxonomy of technical attribution techniques for cyber attacks
Seo et al. A study on efficient detection of network-based IP spoofing DDoS and malware-infected Systems
Udhani et al. Human vs bots: Detecting human attacks in a honeypot environment
Saad et al. Rule-based detection technique for ICMPv6 anomalous behaviour
Särelä et al. Evaluating intrusion prevention systems with evasions
KR101022508B1 (en) Interception system of denial of service attack and distributed denial of service attack
Davanian et al. MalNet: A binary-centric network-level profiling of IoT malware
Granberg Evaluating the effectiveness of free rule sets for Snort
Blackwell Ramit-Rule-Based Alert Management Information Tool
Marchetti et al. Cyber attacks on financial critical infrastructures
KR101686472B1 (en) Network security apparatus and method of defending an malicious behavior
Aravind et al. Tracing Ip Addresses Behind Vpn/Proxy Servers
Lehtiö C&c-as-a-service: Abusing third-party web services as c&c channels
Fleming et al. Network intrusion and detection: An evaluation of snort

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee