KR20180045509A - Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러 - Google Patents

Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러 Download PDF

Info

Publication number
KR20180045509A
KR20180045509A KR1020160139952A KR20160139952A KR20180045509A KR 20180045509 A KR20180045509 A KR 20180045509A KR 1020160139952 A KR1020160139952 A KR 1020160139952A KR 20160139952 A KR20160139952 A KR 20160139952A KR 20180045509 A KR20180045509 A KR 20180045509A
Authority
KR
South Korea
Prior art keywords
address
arp
controller
host
software defined
Prior art date
Application number
KR1020160139952A
Other languages
English (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 KR1020160139952A priority Critical patent/KR20180045509A/ko
Publication of KR20180045509A publication Critical patent/KR20180045509A/ko

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/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • 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

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

ARP 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러가 개시된다. 개시된 소프트웨어 정의 네트워크는 상기 소프트웨어 정의 네트워크의 데이터 평면에 위치하며, 적어도 하나의 호스트가 연결되는 복수의 스위치; 및 상기 소프트웨어 정의 네트워크의 컨트롤 평면에 위치하며, 상기 복수의 스위치를 제어하는 컨트롤러;를 포함하되, 상기 컨트롤러는, 상기 복수의 스위치 중 어느 하나의 스위치에서 전송된 ARP 메시지를 수신하고, 상기 ARP 메시지로부터 상기 ARP 메시지를 전송한 송신자의 IP 주소를 추출하고, 상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는 경우, 상기 ARP 메시지 내에 포함된 제1 주소 정보와 상기 컨트롤러에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지한다.

Description

ARP 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러{SDN for detecting ARP spoofing attack and controller including the same}
본 발명의 실시예들은 ARP 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크(SDN: Software Defined Network) 및 이에 포함되는 컨트롤러(controller)에 관한 것이다.
인터넷은 우리의 일상에서 이제 불가분의 중요한 역할을 하고 있으며 사물 인터넷이 본격적으로 일상에 적용될 시에는 이 역할은 더욱 커질 것이라 예상한다. 하지만 종래의 네트워크 장비는 미리 정해진 룰에 따라 작동이 되는 시스템으로서, 관리 시 어려움이 있으며, 새로운 기능을 추가 할 시에는 연관된 모든 장비를 업데이트 또는 교체해야 하는 불편함이 존재한다. 그리고, 각종 새로운 악성 공격으로부터도 보안 상의 취약성을 보이고 있다.
따라서, 이를 해결하고자 등장한 것이 소프트웨어 정의 네트워크(SDN: Software Defined Network)이다. 소프트웨어 정의 네트워크는 기존의 네트워크 장비와는 달리 컨트롤 평면(control plane)과 데이터 평면(data plane)이 분리된다.
이 때, 컨트롤 평면에는 컨트롤러가 위치하고, 데이터 평면에는 복수의 스위치가 위치하며, 복수의 스위치는 컨트롤러에 의해 제어되며, 스위치는 주기적으로 자신의 상태를 컨트롤러에게 보고한다. 즉, 컨트롤러는 하부 스위치에 라우팅 메커니즘을 구성하여 전체적으로 네트워크를 관리한다. 따라서, 네트워크 구조가 단순화되어 있고, 네트워크 관리를 유연하게 해주며, 기존 네트워크보다 악성 공격에 대하여 일부 강점이 있다. 하지만, 소프트웨어 정의 네트워크도 보안에 관하여는 완벽한 해결책이 없으며 여전히 취약한 면이 있는 것도 사실이다.
특히, ARP 스푸핑(Address Resolution Protocol Spoofing) 공격 또는 ARP 포이즈닝(Address Resolution Protocol Poisoning) 공격은 ARP(Address Resolution Protocol) 통신의 고질적인 문제점을 이용하여 공격하는 기법이다.
즉, 호스트가 브로드캐스팅을 통해 ARP 요청(Request) 패킷을 송신한다는 점을 이용하여 피해자인 호스트 대신에 공격자인 호스트가 ARP 요청 패킷과 대응되는 ARP 응답(reply) 패킷을 송신하고, 이에 따라 ARP 캐쉬 테이블(cache table)이 공격자의 의도대로 수정된다.
따라서, 피해자는 정상적인 ARP 응답 패킷인지 공격자에 의한 비정상적인 ARP 응답 패킷인지 판단하기 어려우며, 공격자는 이를 이용하여 ARP 스푸핑 공격을 시도한다. 이에 따라, 공격자는 세션 하이재킹(Session hijacking), 서비스 거부 공격(Dos Attack), 중간자 공격(Man-in-the-middle Attack) 등을 시도할 수 있게 된다.
상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 ARP 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크(SDN: Software Defined Network) 및 이에 포함되는 컨트롤러(controller)를 제공하고자 한다.
본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.
상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 소프트웨어 정의 네트워크에 있어서, 상기 소프트웨어 정의 네트워크의 데이터 평면에 위치하며, 적어도 하나의 호스트가 연결되는 복수의 스위치; 및 상기 소프트웨어 정의 네트워크의 컨트롤 평면에 위치하며, 상기 복수의 스위치를 제어하는 컨트롤러;를 포함하되, 상기 컨트롤러는, 상기 복수의 스위치 중 어느 하나의 스위치에서 전송된 ARP 메시지를 수신하고, 상기 ARP 메시지로부터 상기 ARP 메시지를 전송한 송신자의 IP 주소를 추출하고, 상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는 경우, 상기 ARP 메시지 내에 포함된 제1 주소 정보와 상기 컨트롤러에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지하는 것을 특징으로 하는 소프트웨어 정의 네트워크가 제공된다.
상기 제1 주소 정보는 상기 송신자의 IP 주소 및 상기 송신자가 연결된 스위치의 포트 번호로 구성된 제1 주소 쌍을 포함하고, 상기 제2 주소 정보는 상기 복수의 스위치와 연결되는 호스트들의 IP 주소 및 상기 호스트들이 연결된 스위치의 포트 번호로 구성되는 제2 주소 쌍들을 포함할 수 있다.
상기 컨트롤러는 상기 제2 주소 쌍들 중 상기 제1 주소 쌍과 대응되는 제2 주소 쌍이 존재하지 않는 경우 상기 제1 주소 쌍을 포함하는 ARP 메시지를 전송한 송신자를 상기 ARP 스푸핑 공격을 수행한 호스트로 판단할 수 있다.
상기 ARP 스푸핑 공격이 감지되는 경우, 상기 컨트롤러는 상기 ARP 스푸핑 공격을 수행한 호스트로부터 수신된 패킷을 폐기하도록 하는 커맨드 메시지를 상기 복수의 스위치로 전송할 수 있다.
또한, 본 발명의 다른 실시예에 따르면, 소프트웨어 정의 네트워크의 컨트롤 평면에 위치하는 컨트롤러에 있어서, 상기 소프트웨어 정의 네트워크의 데이터 평면에 위치하는 복수의 스위치 중 어느 하나의 스위치에서 전송된 ARP 메시지를 수신하는 수신부; 상기 ARP 메시지로부터 상기 ARP 메시지를 전송한 송신자의 IP 주소를 추출하는 추출부; 상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는지 여부를 확인하는 확인부; 및 상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는 경우, 상기 ARP 메시지 내에 포함된 제1 주소 정보와 상기 컨트롤러에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지하는 감지부;를 포함하는 것을 특징으로 하는 컨트롤러가 제공된다.
본 발명에 따른 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러는 ARP 스푸핑 공격을 효과적으로 감지할 수 있는 장점이 있다.
도 1은 소프트웨어 정의 네트워크(SDN: Software Defined Network)의 기본 구조를 도시한 도면이다.
도 2는 소프트웨어 정의 네트워크에 사용되는 OpenFlow의 구조를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크(SDN: Software Defined Network)의 개략적인 구조를 도시한 도면이다.
도 4는 ARP 스푸핑 공격의 개념을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 컨트롤러의 개략적인 구성을 도시한 도면이다.
도 6은 본 발명의 일 실시예에서 따라서 ARP 스푸핑 공격을 감지하기 위한 개념을 설명하기 위한 도면이다.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
이하, 본 발명의 대상이 되는 소프트웨어 정의 네트워크에 대해 간략하게 설명하기로 한다.
도 1은 소프트웨어 정의 네트워크(SDN: Software Defined Network)의 기본 구조를 도시한 도면이고, 도 2는 소프트웨어 정의 네트워크에 사용되는 OpenFlow의 구조를 도시한 도면이다.
도 1을 참조하면, 소프트웨어 정의 네트워크는 크게 데이터 평면(data plane)과 대응되는 인프라스트럭처 계층(infrastructure layer)과, 컨트롤 평면(control plane)과 대응되는 컨트롤 계층(control layer)과, 애플리케이션 계층(application layer)으로 나뉜다. 데이터 계층은 소프트웨어 정의 네트워크의 특정 인터페이스를 통해 제어를 받는 계층으로서, 데이터 흐름의 전송을 담당한다. 컨트롤 계층은 데이터의 흐름을 제어하는 계층으로서 애플리케이션과 네트워크 서비스를 통하여 데이터 흐름을 라우팅 할 것인지, 전달을 할 것인지, 거절할 것인지를 결정한다. 또한 데이터 계층의 동작들을 정리하여 API(Application Programming Interface) 형태로 애플리케이션 계층에 전달한다. 마지막으로 애플리케이션 계층은 제어 계층에서 제공한 API들을 이용하여 네트워크의 다양한 기능들을 수행 할 수 있도록 한다.
한편, 전통적인 네트워크에서 라우터, 스위치와 같은 네트워크 장비는 트래픽 제어와 규칙을 담당한다. 그러므로 네트워크의 라우팅 정보는 스위치와 라우터에서 저장한다. 이와 같은 네트워크 구조는 네트워크가 변화할 때마다 관리자가 관련 인터넷 설비를 배치해야 한다는 문제가 있고, 데이터 센터나 그룹 네트워크 환경은 잦은 네트워크 변화로 자원을 낭비한다.
OpenFlow은 위와 같은 전통적인 네트워크의 단점을 보완하는 컨트롤러와 네트워크 장치간의 인터페이스 규격으로 사용되고 있는 기술이다. 도 2를 참조하면, OpenFlow는 제어 평면과 데이터 평면을 분리하여 네트워크를 운용할 수 있게 함으로써 네트워크 트래픽을 제어할 수 있는 기능과 전달할 수 있는 기능을 분리하며 소프트웨어를 제작하여 네트워크를 제어할 수 있도록 해준다. OpenFlow 프로토콜을 사용하면, 제어 및 데이터 평면을 하드웨어가 아닌 소프트웨어로도 구현할 수 있으며, 이 소프트웨어를 범용 서버에 설치하여 신속하게 새로운 기능을 구현할 수 있다.
OpenFlow는 프로토콜 계층 1~4까지의 헤더 정보를 하나로 조합하여 패킷(프레임)의 동작을 지정할 수 있다. 제어 평면의 프로그램을 수정하면 계층 4까지의 범위에서 사용자가 자유롭게 새로운 프로토콜을 만들 수 있고, 특정 서비스나 애플리케이션에 최적화된 네트워크를 사용자가 구현할 수도 있다. 즉, OpenFlow는 패킷을 제어하는 기능과 전달하는 기능을 분리하고 프로그래밍을 통해 네트워크를 제어하는 기술이다.
상기에서 설명된 내용을 참조하여 본 발명의 일 실시예에 따른 ARP 스푸핑 공격을 효과적으로 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러를 상세하게 설명한다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크(SDN: Software Defined Network)의 개략적인 구조를 도시한 도면이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크(300)는, 컨트롤러(310), 복수의 스위치(320) 및 복수의 호스트(330)를 포함한다. 이 때, 도 3에서는 설명의 편의를 위해 하나의 스위치(320)만을 도시하였다.
컨트롤러(310)는 OpenFlow 인터페이스를 따르는 OF 컨트롤러일 수 있고, 컨트롤 평면에 위치하며, 네트워크의 모든 제어 명령, 데이터 트래픽의 전달을 수행하며, 전체 네트워크를 직접적으로 제어한다.
복수의 스위치(320) 각각은 OpenFlow 인터페이스를 따르는 OF 스위치일 수 있고, 데이터 평면에 위치하며, 컨트롤러(310)에 의해 동작이 제어되며, 복수의 스위치(320) 각각은 주기적으로 자신의 상태를 컨트롤러에게 보고한다. 또한, 스위치(320) 각각에는 복수의 호스트(330)가 연결된다.
즉, 컨트롤러(310)는 복수의 스위치(320) 각각에 명령을 전송하고, 각각의 스위치(320)는 수신된 명령에 따라 패킷을 목적지로 전송하거나 수정, 폐기하는 등의 처리를 한다. 일례로, OpenFlow 프로토콜을 이용하여, 컨트롤러(310)는 패킷의 포워딩 방법이나 VLAN 우선순위 값 등을 스위치(320)에 전달하여 수행되도록 하며, 스위치(320)는 장애정보와 사전에 등록된 플로우 엔트리가 없는 패킷에 대한 정보를 컨트롤러에 문의하고 그 결정을 받아 처리한다.
특히, 컨트롤러(310)는 경로 계산을 주 역할로 수행하는 것으로서, 패킷을 전송할 때 몇 가지 매개 변수를 기반으로 경로를 결정한다. 사용하는 매개 변수로는 최단경로(SPF)나 회선 속도 외에 사용자가 지정한 경로의 가중치나 부하 분산 조건 등이 있다. 컨트롤러(310)가 계산한 경로 정보는 TLS(Transport Layer Security) 또는 일반 TCP 연결을 통해 스위치(320)에 보내지며 플로우 테이블에 저장된다. 이후 스위치(320)는 패킷을 수신할 때마다 플로우 테이블을 확인하고 그 프레임을 지정된 경로로 전송한다.
이하, 도 3 내지 도 5를 참조하여 소프트웨어 정의 네트워크(300)에서 수행되는 ARP 통신 및 ARP 스푸핑 공격을 설명하기로 한다.
먼저, ARP은 IP 주소를 MAC 주소로 변환하기 위해 사용되는 프로토콜이다. 즉, 실제 ARP 통신을 위하여, 사용자가 사용하는 IP 주소와 물리적인 MAC 주소와의 매핑 과정이 필요하며, 이 때 상대방 측의 IP 주소에 대한 MAC 주소를 파악하는 데에 ARP가 사용된다. ARP 통신의 과정은 다음과 같다.
단계 A에서, Host-h2와 통신하기 위해 Host-h1은 ARP 요청 패킷을 브로드캐스팅한다.
단계 B에서, ARP 요청 패킷을 받은 Host-h2는 ARP 요청 패킷에서 자신의 MAC 주소를 요청하고 있음을 확인하고, 자신의 MAC 정보를 포함하는 ARP 응답 패킷을 송신한다.
단계 C에서, Host-h1는 Host-h2가 보내준 ARP 응답 패킷 내의 MAC 정보를 확인한 후 통신을 시작한다. 이 때, Host-h2의 IP 정보와 MAC 정보를 테이블로 만들어 캐쉬(Cache)에 저장한다.
단계 D에서, Host-h1는 이후에 Host-h2와 통신할 경우, ARP 과정을 거치지 않고 캐쉬 테이블을 참조하여 통신을 수행한다.
그러나, 상기에서 언급한 바와 같이, ARP은 인증을 요구하는 프로토콜이 아니기 때문에, 공격자는 간단한 ARP 응답 패킷을 각 호스트에 송신함으로써 자신의 MAC 주소로 ARP 캐쉬를 업데이트시킬 수 있고 쉽게 모든 패킷들을 가로챌 수 있다. 또한, 피해자는 응답자가 보낸 MAC 주소가 진짜 응답자가 보낸 MAC 주소인지 중간에 공격자가 도청하여 변조를 한 것인지의 여부를 알 수가 없어, 자신이 원하는 응답을 받지 못하게 되며 특별한 도구를 사용하지 않는 이상 자신이 공격 당하고 있다는 사실을 확인하기가 힘들다. 이에 대한 개념은 도 4에 도시되어 있다.
이와 같은 ARP 스푸핑 공격을 방지하지 위해, 소프트웨어 정의 네트워크(300) 내의 컨트롤러(310)는 도 5에 도시된 바와 같이 수신부(311), 추출부(312), 확인부(313), 감지부(314) 및 송신부(315)를 포함한다. 이 때, 소프트웨어 정의 네트워크(300)의 초기화 동안 신뢰할 수 있는 호스트 목록이 구성되어 있다고 가정한다.
또한, 도 6은 본 발명의 일 실시예에 따른 ARP 스푸핑 공격을 감지하기 위한 개념을 설명하기 위한 도면이다.
이하, 도 5 및 도 6을 참조하여 ARP 스푸핑 공격을 감지 및 방지하기 위한 소프트웨어 정의 네트워크(300) 및 컨트롤러(310)의 동작을 상세하게 설명한다.
먼저, 수신부(311)는 복수의 스위치(320) 각각에서 전송된 패킷-인 메시지(PACKET-IN MESSAGE)를 수집한다.
다음으로, 복수의 스위치(320) 중 어느 하나의 스위치에서 전송된 패킷-인 메시지가 ARP 메시지를 포함하는 경우, 추출부(312)는 ARP 메시지로부터 ARP 메시지를 전송한 송신자의 IP 주소를 추출한다.
계속하여, 확인부(313)는 추출된 IP 주소를 가지는 호스트가 하나의 스위치(320)를 통해 소프트웨어 정의 네트워크(300)에 접속되어 있는지 여부를 확인한다.
그리고, 감지부(314)는 ARP 메시지 내에 포함된 제1 주소 정보와 컨트롤러(310)에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지한다.
보다 상세하게, 제1 주소 정보는 송신자의 IP 주소 및 송신자가 연결된 스위치(320)의 포트 번호로 구성된 제1 주소 쌍(pair switch-port)을 포함한다. 또한, 제2 주소 정보는 복수의 스위치(320)와 연결되는 호스트들의 IP 주소 및 호스트들이 연결된 스위치(320)의 포트 번호로 구성되는 제2 주소 쌍들을 포함한다. 이 때, 스위치(320)의 포트 번호는 호스트의 접속 지점(Attachment Point)일 수 있다.
그리고, 감지부(314)는 제2 주소 쌍들 중 제1 주소 쌍과 대응되는 제2 주소 쌍이 존재하지 않는 경우 제1 주소 쌍을 포함하는 ARP 메시지를 전송한 송신자를 ARP 스푸핑 공격을 수행한 호스트로 판단한다. 이 경우, 송신부(315)는 ARP 스푸핑 공격을 수행한 호스트로부터 수신된 패킷을 폐기하도록 하는 커맨드 메시지(일례로, FLOW_MOD 메시지)를 복수의 스위치(320)로 전송한다.
반대로, 제2 주소 쌍들 중 제1 주소 쌍과 대응되는 제2 주소 쌍이 존재하며, 양자가 동일한 경우, 감지부(314)는 ARP 스푸핑 공격을 수행되지 않는 것으로 판단한다. 이 경우 프로세스 파이프라인을 계속 진행하기 위해, 컨트롤러(310)는 PACKET_IN 메시지를 전달한다.
요컨대, 본 발명의 일 실시예에 따른 소프트웨어 정의 네트워크(300) 및 이에 포함되는 컨트롤러(310)는 ARP 스푸핑 공격을 효과적으로 감지할 수 있는 장점이 있다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (5)

  1. 소프트웨어 정의 네트워크에 있어서,
    상기 소프트웨어 정의 네트워크의 데이터 평면에 위치하며, 적어도 하나의 호스트가 연결되는 복수의 스위치; 및
    상기 소프트웨어 정의 네트워크의 컨트롤 평면에 위치하며, 상기 복수의 스위치를 제어하는 컨트롤러;를 포함하되,
    상기 컨트롤러는,
    상기 복수의 스위치 중 어느 하나의 스위치에서 전송된 ARP 메시지를 수신하고, 상기 ARP 메시지로부터 상기 ARP 메시지를 전송한 송신자의 IP 주소를 추출하고,
    상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는 경우, 상기 ARP 메시지 내에 포함된 제1 주소 정보와 상기 컨트롤러에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지하는 것을 특징으로 하는 소프트웨어 정의 네트워크.
  2. 제1항에 있어서,
    상기 제1 주소 정보는 상기 송신자의 IP 주소 및 상기 송신자가 연결된 스위치의 포트 번호로 구성된 제1 주소 쌍을 포함하고,
    상기 제2 주소 정보는 상기 복수의 스위치와 연결되는 호스트들의 IP 주소 및 상기 호스트들이 연결된 스위치의 포트 번호로 구성되는 제2 주소 쌍들을 포함하는 것을 특징으로 하는 소프트웨어 정의 네트워크.
  3. 제2항에 있어서,
    상기 컨트롤러는 상기 제2 주소 쌍들 중 상기 제1 주소 쌍과 대응되는 제2 주소 쌍이 존재하지 않는 경우 상기 제1 주소 쌍을 포함하는 ARP 메시지를 전송한 송신자를 상기 ARP 스푸핑 공격을 수행한 호스트로 판단하는 것을 특징으로 하는 소프트웨어 정의 네트워크.
  4. 제3항에 있어서,
    상기 ARP 스푸핑 공격이 감지되는 경우, 상기 컨트롤러는 상기 ARP 스푸핑 공격을 수행한 호스트로부터 수신된 패킷을 폐기하도록 하는 커맨드 메시지를 상기 복수의 스위치로 전송하는 것을 특징으로 하는 소프트웨어 정의 네트워크.
  5. 소프트웨어 정의 네트워크의 컨트롤 평면에 위치하는 컨트롤러에 있어서,
    상기 소프트웨어 정의 네트워크의 데이터 평면에 위치하는 복수의 스위치 중 어느 하나의 스위치에서 전송된 ARP 메시지를 수신하는 수신부;
    상기 ARP 메시지로부터 상기 ARP 메시지를 전송한 송신자의 IP 주소를 추출하는 추출부;
    상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는지 여부를 확인하는 확인부; 및
    상기 추출된 IP 주소를 가지는 호스트가 상기 소프트웨어 정의 네트워크에 접속되어 있는 경우, 상기 ARP 메시지 내에 포함된 제1 주소 정보와 상기 컨트롤러에 저장되어 있는 제2 주소 정보가 동일한지 여부를 판단하여 ARP 스푸핑 공격이 수행되었는지 여부를 감지하는 감지부;를 포함하는 것을 특징으로 하는 컨트롤러.
KR1020160139952A 2016-10-26 2016-10-26 Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러 KR20180045509A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160139952A KR20180045509A (ko) 2016-10-26 2016-10-26 Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160139952A KR20180045509A (ko) 2016-10-26 2016-10-26 Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러

Publications (1)

Publication Number Publication Date
KR20180045509A true KR20180045509A (ko) 2018-05-04

Family

ID=62199753

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160139952A KR20180045509A (ko) 2016-10-26 2016-10-26 Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러

Country Status (1)

Country Link
KR (1) KR20180045509A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200059741A (ko) * 2018-11-21 2020-05-29 주식회사 가야데이터 스토리지 이중화 장치 및 그 장치의 구축방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200059741A (ko) * 2018-11-21 2020-05-29 주식회사 가야데이터 스토리지 이중화 장치 및 그 장치의 구축방법

Similar Documents

Publication Publication Date Title
KR101900154B1 (ko) DDoS 공격이 탐지가 가능한 소프트웨어 정의 네트워크 및 이에 포함되는 스위치
US10084751B2 (en) Load balancing among a cluster of firewall security devices
Dayal et al. Research trends in security and DDoS in SDN
US10931711B2 (en) System of defending against HTTP DDoS attack based on SDN and method thereof
US8879388B2 (en) Method and system for intrusion detection and prevention based on packet type recognition in a network
US9055006B2 (en) Techniques for traffic diversion in software defined networks for mitigating denial of service attacks
CN1938982B (zh) 通过认证因特网控制消息协议分组来防止网络攻击的方法和装置
CN113132342B (zh) 方法、网络装置、隧道入口点装置及存储介质
KR20180041953A (ko) 인공지능을 이용하여 DDoS 공격을 탐지하는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러
US20140143854A1 (en) Load balancing among a cluster of firewall security devices
JP2007235341A (ja) 対異常通信防御を行うための装置とネットワークシステム
US8320249B2 (en) Method and system for controlling network access on a per-flow basis
CN112822103B (zh) 一种信息上报方法和信息处理方法及设备
WO2016177131A1 (zh) 防止dos攻击方法、装置和系统
Nehra et al. FICUR: Employing SDN programmability to secure ARP
KR101710385B1 (ko) Arp 패킷을 관리하는 방법, 장치 및 컴퓨터 프로그램
Wang et al. Efficient and low‐cost defense against distributed denial‐of‐service attacks in SDN‐based networks
Shoeb et al. Resource management of switches and Controller during saturation time to avoid DDoS in SDN
Abdou et al. A framework and comparative analysis of control plane security of SDN and conventional networks
JP2008306610A (ja) 不正侵入・不正ソフトウェア調査システム、および通信振分装置
KR20180045509A (ko) Arp 스푸핑 공격을 감지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러
KR20170109949A (ko) 동적 네트워크 환경에서의 네트워크 보안 강화 방법 및 장치
US20060225141A1 (en) Unauthorized access searching method and device
KR101914831B1 (ko) 호스트 추적 서비스에 대한 공격을 방지할 수 있는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러
US20100166011A1 (en) Method, apparatus and system for realizing dynamic correlation of control plane traffic rate

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application