이와 같은 목적을 달성하기 위한 본 발명은 복수개의 단말기와 상기 단말기들과 연결되는 L2스위치(허브)로 이루어지는 내부망이 복수개 형성되고, 동시에 DB(데이터 베이스) 서버와, APP(Application) 서버와 연결되는 L2 스위치(허브)가 구성되며, 상기 허브들과 연결되는 백본스위치와, 상기 백본스위치에 연결되는 인라인 방화벽과, 상기 인라인방화벽에 연결되는 라우터 및 인터넷을 포함하는 네트워크 장치에, 상기 각 내부 망의 허브와, DB서버 및 APP서버가 연결되는 L2 스위치(허브)에 각각 인라인(In-line) 시스템을 구축하여 된 인라인 네트워크 장치에 있어서, 상기 단말기(노드)에서 발생되는 MAC 요청 패킷을 모니터링 하는 단계(S110)와, 상기 MAC 요청 패킷의 출발지 주소 및 MAC 주소를 추출하는 단계(S120)와, 상기 추출된 MAC 요청 패킷의 출발지 주소 및 MAC 주소를 MAC주소, IP주소, OS(운영체계), 사용자, 사용시간 및 동작방법을 저장 및 확인할 수 있는 노드 테이블(TABLE)에 추가하는 단계(S130)와, 상기 추출한 노드에 대한 운영체계(OS) 추측(Guessing)하는 단계(S140)로 이루어져 특정 장비가 가상 경로 설정의 적용 대상이 되는지의 여부를 판단하는 제1 과정(S100); 상기 노드 테이블의 노드에 동작방법을 설정하는 단계(S210)와, 노드 테이블의 노드에 보안정책을 연결하는 단계(S220)와, 상기 동작방법에 의해 설정된 "가상 경로" 노드의 모든 MAC 주소 요청에 대해 가상 경로 시스템의 MAC 주소로 응답하는 단계(S230)로 이루어져 상기 제1 과정(S100)을 통해 특정장비가 가상 경로 설정대상에 적합하다 판단되면 적용 대상 장비의 가상 경로를 설정하는 제2 과정(S200); 상기 가상 경로 시스템으로 유입되는 패킷에서 프로토콜, 목적지 주소 및 목적지 포트 번호 등을 추출하는 단계(S310)와, 목적지 주소, 목적지 포트, 시간대 및 실행 여부를 저장 및 확인할 수 있는 보안정책 테이블을 참조하여 대응 여부를 결정하는 단계(S320)로 이루어져 상기 설정된 가상 경로의 트래픽이 보안 정책에 적합한가를 검사하는 제3 과정(S300); 패킷의 페이로드(payload)를 추출하는 단계(S410)와, 유해/악성 데이터베이스(DB)를 참조하는 단계(S420)와, 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)의 일치 여부를 판단하는 단계(S430)와, 상기 판단단계(S430)에서 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하면 상기 노드 테이블에 동작방법을 변경(차단)하는 단계(S440)와, 상기 판단단계(S430)에서 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하지 아니하면 해당 패킷을 전송하는 단계(S450)와, 해당 행위에 대한 검사 기록 로그를 작성하는 단계(S460)로 이루어져 상기 가상 경로의 트래픽이 유해 트래픽인가를 검사하는 제4 과정(S400); 및 상기 노드 테이블의 동작방법(모드) 참조하여 악성 노드를 구분하는 단계(S510)와, 상기 악성 노드로 거짓된 MAC 주소 응답 패킷을 주기적으로 전송하는 단계(S520)와, 상기 악성 노드의 모든 MAC 주소 요청에 대해 거짓된 MAC 주소로 패킷을 발송하는 단계(S530)로 이루어져 상기 가상 경로의 시스템을 네트워크에서 분리하는 제5 과정(S500)을 포함하여 된 가상의 인라인 네트워크 보안방법을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예들을 보다 상세히 설명한다.
도 2는 본 발명이 적용되는 가상의 인라인 네트워크 보안장치의 구성도이다.
도시된 바와 같이, 본 발명이 적용되는 가상의 인라인 네트워크 보안장치는 종래의 구성과 다르게 일반 단말기와 같은 형태로 장비를 네트워크에 연결한 후 동작한다.
즉, 복수개의 단말기와, 상기 단말기들과 연결되는 L2 스위치(허브)로 이루어지는 내부 망이 복수 개 형성되고, 동시에 DB(데이터베이스) 서버(33)와, APP(Application) 서버(34)와 연결되는 L2 스위치(허브)(32)가 구성되며, 상기 허브들과 연결되는 백본스위치(40)와, 상기 백본스위치(40)에 연결되는 인라인방화벽(50)과, 상기 인라인방화벽(50)에 연결되는 라우터(60) 및 인터넷을 포함하는 네트워크장치에 있어서, 상기 각 내부 망의 허브와, DB서버(33) 및 APP서버(34)가 연결되는 L2 스위치(허브)(32)에 각각 인라인(In-line)(16,26,35) 시스템을 구축하여 구성한 것이다.
이와 같이 구성된 가상 인라인 네트워크 보완장치에 적용되는 본 발명에 있어서, 제1내부망(100)의 제1단말기(11)의 네트워크 통제를 실시하고자 하면, 상기 제1단말기(11)가 패킷을 통신 상대자나 전달자(gateway)의 하드웨어 주소(MAC 주소)를 요청하게 되는데, 이러한 주소 요청을 가상의 인라인(16,26,35) 시스템이 감지하여 자신의 MAC주소로 제1단말기(11)에 응답을 한다.
상기 응답 후에는 제1단말기(1)에서 발생하는 패킷이 가상의 인라인 시스템 에 도달하기 때문에 패킷의 정보 및 데이터를 분석하여 접근제어를 수행하게 된다.
또한, 동일 네트워크상에 있는 단말기들, 즉 제2, 또는 제3단말기가 제1단말기(11)와의 직접 패킷을 전달하는 것을 방지하기 위하여, 네트워크상의 단말기 중에 제1단말기(11)에게 직접 패킷을 전달하고자 하는 특정 단말기(12 또는 13)의 MAC 주소에 요청하는 응답에 대해서도 가상의 인라인 시스템이 자신의 MAC주소로 응답함으로써 제어 대상이 되는 제1단말기(11)와의 통신을 위해 입, 출력되는 모든 패킷은 보안센서를 경유하게 되는 것이다.
도 3은 본 발명에 따른 가상의 인라인 네트워크 보안방법의 제어 흐름도이다.
도시된 바와 같이, 본 발명에 따른 가상의 인라인 네트워크 보안방법은, 특정 장비가 가상 경로 설정의 적용 대상이 되는지의 여부를 판단하는 제1 과정(S100)과, 상기 제1 과정(S100)을 통해 특정장비가 가상 경로 설정대상에 적합하다 판단되면 적용 대상 장비의 가상 경로를 설정하는 제2 과정(S200)과, 상기 설정된 가상 경로의 트래픽이 보안 정책에 적합한가를 검사하는 제3 과정(S300)과, 상기 가상 경로의 트래픽이 유해 트래픽인가를 검사하는 제4 과정(S400)과, 상기 가상 경로의 시스템을 네트워크에서 분리하는 제5 과정(S500)을 포함한다.
상기 제1 과정(S100)에서, 상기 보안 장비는 단말기 장비에서 발생하는 MAC address 요청(Request) 패킷을 분석하여, 출발지 주소와 MAC(Media Access Control) 주소를 추출한다.
상기 출발지 주소와, MAC 주소, 클라이언트의 운영체제(OS) 및 기타 단말기의 상태를 판단하여 가상 경로 대상 시스템인지를 판별한다.
상기 제2 과정(S200)에서, 가상 경로 대상인지가 판별되면 가상 경로를 설정하기 위해 대상 시스템에서 발생하는 MAC 주소 요청에 가상 경로 시스템이 자신의 MAC 주소로 응답한다.
상기 가상 경로 대상이 되는 시스템의 MAC 주소를 다른 단말기가 요청하는 경우에도 가상 경로 시스템이 자신의 MAC 주소로 ARP 패킷을 발송한다.
상기 제3 과정(S300)에서는, 상기 대상 시스템에서 발생되는 패킷의 프로토콜, 목적지 주소, 목적지 포트 등을 검사하여 통과 여부를 판단한다.
상기 제4 과정(S400)에서는, 대상 시스템에서 발생하는 패킷의 데이터 내용을 점검하여 유해 트래픽이 포함되어 있는지를 판별한다.
상기 제5 과정(S500)에서는, 상기 제4 과정(S400)에서 유해 트래픽이 발견된 시스템은 해당 시스템에게 거짓(Fake) MAC 주소 응답 패킷을 주기적으로 발송함으로써 유해 시스템의 통신을 완전히 차단한다.
도 4는 상기 도 3의 제1 과정(S100)을 상세히 나타낸 제어 흐름도이다.
도시된 바와 같이, 상기 제1 과정(S100)은 단말기(이하 '노드'라 함)에서 발생되는 MAC 요청 패킷을 모니터링 하는 단계(S110)와, 상기 MAC 요청 패킷의 출발지 주소 및 MAC 주소를 추출하는 단계(S120)와, 상기 추출된 MAC 요청 패킷의 출발지 주소 및 MAC 주소를 MAC주소, IP주소, OS(운영체계), 사용자, 사용시간 및 동작방법(모드) 등을 저장 및 확인할 수 있는 노드(단말기) 테이블(TABLE)에 추가하는 단계(S130)와, 상기 추출한 노드에 대한 운영체계(OS) 추측(Guessing)하는 단계(S140)로 구성된다.
하기 표 1에는 상기 노드 테이블에 대한 일례가 구성되어 있다.
<표 1>
[노드 테이블]
MAC 주소 |
IP 주소 |
OS |
사용자 |
시간 |
동작방법 |
00:13:D4:04:BD:C0 |
192.168.1.2 |
Linux |
|
|
허용 |
00:0F:EA:6D:71:2A |
192.168.1.1 |
Windows XP |
Kimpd |
|
가상경로 |
00:90:FB:09:0F:17 |
192.168.1.3 |
Windows XP |
|
ANYTIME |
격리 |
따라서 이를 살펴보면,
특정 장비가 가상 경로 설정의 적용 대상이 되는지의 여부를 판단하는 제1 과정(S100)은, 네트워크상에서 MAC 요청 패킷을 모니터링 하여, 상기 MAC 요청 패킷의 출발지 주소와, MAC 주소를 추출하게 된다.
또한, 상기 추출된 MAC 요청(Request) 패킷의 출발지 주소 및 MAC 주소를 노드 테이블(TABLE)에 추가하고, 상기 추출한 노드에 대한 운영체계(OS) 인식할 수 있게 된다.
도 5는 상기 도 3의 제2 과정(S200)을 상세히 나타낸 제어 흐름도이다.
도시된 바와 같이, 상기 제2 과정(S200)은, 상기 노드 테이블의 노드에 동작방법을 설정하는 단계(S210)와, 노드 테이블의 노드에 보안정책을 연결하는 단계(S220)와, 상기 동작방법에 의해 설정된 "가상 경로"노드의 모든 MAC 주소 요청에 대해 가상 경로 시스템의 MAC 주소로 응답하는 단계(S230)로 구성된다.
하기 표 2에는 상기 보완정책 테이블에 대한 일례가 구성되어 있다.
<표 2>
목적지 주소 |
목적지 port |
시간대 |
Action |
192.168.2.1 |
TCP/80 |
ANYTIME |
ALLOW |
10.10.1.1 |
TCP/25 |
ANYTIME |
ALLOW |
10.10.1.1 |
UDP/53 |
ANYTIME |
ALLOW |
따라서 이를 살펴보면,
상기 제1 과정(S100)을 통해 특정장비가 가상 경로 설정대상에 적합하다 판단되면 적용 대상 장비의 가상 경로를 설정하는 제2 과정(S200)은, 상기 노드 테이블의 노드에 동작방법을 설정하고, 상기 노드 테이블의 노드에 보안정책을 연결하며, 상기 동작방법에 의해 설정된 "가상 경로"노드의 모든 MAC 주소 요청에 대해 가상 경로 시스템의 MAC 주소로 응답한다.
도 6은 상기 도 3의 제3 과정(S300)을 상세히 나타낸 제어 흐름도이다.
도시된 바와 같이, 상기 제3 과정(S300)은, 상기 가상 경로 시스템으로 유입되는 패킷에서 프로토콜, 목적지 주소 및 목적지 포트 번호 등을 추출하는 단계(S310)와, 목적지 주소, 목적지 포트, 시간대 및 실행여부 등을 저장 및 확인할 수 있는 보안정책 테이블을 참조하여 대응 여부를 결정하는 단계(S320)로 구성된다.
상기 보안정책 테이블을 참조하여 대응 여부를 결정하는 단계(S320)는, 대응 여부를 판단하는 단계(S321)와, 상기 판단단계(S321)에서 허용일 경우에는 해당 패킷을 포워딩(forwarding)하는 단계(S322)와, 상기 판단단계(S321)에서 거부일 경우 에는 해당 패킷을 폐기하는 단계(S323)를 더 포함한다.
따라서 이를 살펴보면,
설정된 가상 경로의 트래픽이 보안 정책에 적합한가를 검사하는 제3 과정(S300)은, 상기 가상 경로 시스템으로 유입되는 패킷에서 프로토콜, 목적지 주소 및 목적지 포트 번호 등을 추출한 후, 상기 보안정책 테이블을 참조하여 대응 여부를 판단한다.
그리고 상기 판단 결과, 허용일 경우에는 해당 패킷을 포워딩(forwarding)하고, 상기 판단 결과, 거부일 경우에는 해당 패킷을 폐기하게 되는 것이다.
도 7은 상기 도 3의 제4 과정(S400)을 상세히 나타낸 제어 흐름도이다.
도시된 바와 같이, 상기 제4 과정(S400)은 패킷의 페이로드(payload)를 추출하는 단계(S410)와, 유해/악성 데이터베이스(DB)를 참조하는 단계(S420)와, 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)의 일치 여부를 판단하는 단계(S430)와, 상기 판단단계(S430)에서 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하면 노드 테이블에 동작방법을 변경(차단)하는 단계(S440)와, 상기 판단단계(S430)에서 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하지 아니하면 해당 패킷을 전송하는 단계(S450)와, 해당 행위에 대한 감사 기록 로그를 작성하는 단계(S460)로 구성된다.
이의 동작을 살펴보면,
가상 경로의 트래픽이 유해 트래픽인가를 검사하는 제4 과정(S400)은, 패킷 의 페이로드(payload)를 추출하고, 유해/악성 데이터베이스(DB)를 참조한 후, 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)의 일치 여부를 판단한다.
상기 판단 결과, 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하면 노드 테이블에 동작방법을 변경(차단)하고, 상기 판단 결과, 상기 패킷의 페이로드(payload)와 유해/악성 데이터베이스(DB)가 일치하지 아니하면 해당 패킷을 전송하는 것이다. 그리고 이의 해당 행위에 대한 검사 기록 로그를 작성한다.
도 8은 상기 도 3의 제5 과정(S500)을 상세히 나타낸 제어 흐름도이다.
도시된 바와 같이, 제5 과정(S500)은 노드 테이블의 동작방법(모드)을 참조하여 악성 노드를 구분하는 단계(S510)와, 상기 악성 노드로 거짓된 MAC 주소 응답 패킷을 주기적으로 전송하는 단계(S520)와, 상기 악성 노드의 모든 MAC 주소 요청에 대해 거짓된 MAC 주소로 패킷을 발송하는 단계(S530)로 구성된다.
따라서 이의 동작을 살펴보면,
가상 경로의 시스템을 네트워크에서 분리하는 제5 과정(S500)은, 노드 테이블의 동작방법(모드)을 참조하여 악성 노드를 구분하여, 상기 악성 노드로 거짓된 MAC 주소 응답 패킷을 주기적으로 전송한다.
그리고 상기 악성 노드의 모든 MAC 주소 요청에 대해 거짓된 MAC 주소로 패킷을 발송하게 되는 것이다.