1 |
1
SDN 퍼징장치가 SDN(Software Defined Network)에 대하여 실행하는 SDN 퍼징방법에 있어서,시드 메시지(seed messages)로부터 적어도 하나의 테스트 집합(test sets)을 생성하는 과정; 상기 테스트 집합 각각에 포함된 메시지 중 일부를 변형하여 변형 메시지(mutated messages)를 생성하고, 상기 변형 메시지를 상기 SDN의 제어기(controller)에 입력하며, 상기 SDN을 감시(watch)하는 과정; 및상기 제어기에 대한 코드 커버리지(code coverage)를 피드백(feedback)받아서, 상기 코드 커버리지를 기반으로 상기 테스트 집합을 진화(evolve)시키는 과정을 포함하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
2 |
2
제1항에 있어서,오픈플로 메시지(Openflow messages)를 포함하는 상기 시드 메시지를 획득하는 과정; 및상기 SDN으로부터 미출현 메시지(unseen messages) 및 보안 위협(security threats)을 검출(detection)하는 과정을 더 포함하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
3 |
3
제1항에 있어서,상기 변형 메시지는,상기 메시지 내의 비트(bits), 바이트(bytes) 및/또는 필드(fields)가 무작위로 선택되어 변형된 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
4 |
4
제2항에 있어서,상기 진화시키는 과정은,상기 코드 커버리지의 증가를 유도한(inducing) 테스트 집합에 대하여, 상기 테스트 집합에 포함된 변형(mutated) 메시지와 상기 미출현 메시지의 일부를 결합하여 제1 진화 테스트 집합을 생성하고, 상기 제1 진화 테스트 집합을 상기 SDN에 대한 퍼징에 이용하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
5 |
5
제4항에 있어서,상기 진화시키는 과정은,상기 코드 커버리지의 증가를 유도한 테스트 집합에 대하여, 상기 테스트 집합에 포함된 변형되지 않은(non-mutated) 메시지와 상기 제1 진화 테스트 집합에 포함되고 남은 미출현 메시지를 결합하여 제2 진화 테스트 집합을 생성하고, 상기 제2 진화 테스트 집합을 상기 SDN에 대한 퍼징에 이용하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
6 |
6
제1항에 있어서, 상기 코드 커버리지의 증가를 유도하지 못한 테스트 집합에 대하여, 기 설정된 횟수 이내에서 상기 테스트 집합을 상기 SDN에 대한 퍼징에 재이용하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
7 |
7
제2항에 있어서, 상기 검출하는 과정은,상기 검출된 보안 위협의 종류를 판정하고, 상기 SDN에 존재하는 취약점 및 상기 보안 위협을 유발시킨 테스트 메시지에 대한 정보를 제공하는 것을 특징으로 하는, 컴퓨터 상에 구현되는 SDN 퍼징방법
|
8 |
8
SDN(Software Defined Network)에 대한 퍼징(fuzzing)장치에 있어서,오픈플로 메시지(Openflow messages)를 포함하는 시드 메시지(seed messages)를 획득하는 입력부; 및상기 시드 메시지로부터 적어도 하나의 테스트 집합(test sets)을 생성하고, 상기 SDN의 제어기(controller)에 대한 코드 커버리지(code coverage)를 피드백(feedback)받아서, 상기 테스트 집합 및 상기 코드 커버리지를 기반으로 상기 SDN에 대한 퍼징을 실행하여 상기 SDN에 대한 보안 위협(security threats)을 탐지하는 퍼징실행부를 포함하는 것을 특징으로 하는 SDN 퍼징장치
|
9 |
9
제7항에 있어서, 상기 보안 위협은, 제어평면(control plane)의 제어기와 데이터평면(data plane)의 스위치(switches) 및 호스트(hosts)를 포함하는 SDN에 대하여, 상기 제어기의 동작 종료, 상기 제어평면에서의 CPU(Control Processor Unit) 사용량 과다, 상기 양성 스위치 연결의 끊김((benign switch disconnection) 및/또는 상기 호스트 간 통신의 끊김(inter-host communication disconnection) 중 적어도 하나를 포함하는 것을 특징으로 하는 SDN 퍼징장치
|
10 |
10
제7항에 있어서,상기 시드 메시지는,상기 퍼징을 실행하기 전에 수집되거나, 사전에 수집된 오픈플로 메시지가 저장된 저장장치로부터 획득되는 것을 특징으로 하는 SDN 퍼징장치
|
11 |
11
제8항에 있어서, 상기 시드 메시지는,상기 제어기가 대기(stand-by) 상태에서 상기 스위치로부터 상기 제어기 측으로 전송되는 메시지, 상기 제어평면이나 상기 데이터평면에 직접적으로 명령이 하달된 후, 상기 제어평면과 상기 데이터평면 간에 교환되는 메시지, 및/또는 상기 오픈플로우 메시지의 필드(fields) 및 필드값(field value)의 제약 조건을 만족하는 범위 내에서 상기 오픈플로우의 문법에 맞도록 무작위로 생성된 메시지의 전부 또는 일부를 포함하는 것을 특징으로 하는 SDN 퍼징장치
|
12 |
12
제1항 내지 제7항 중 어느 한 항에 따른 SDN 퍼징방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램
|