KR100926456B1 - 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법 - Google Patents

클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법 Download PDF

Info

Publication number
KR100926456B1
KR100926456B1 KR1020080031757A KR20080031757A KR100926456B1 KR 100926456 B1 KR100926456 B1 KR 100926456B1 KR 1020080031757 A KR1020080031757 A KR 1020080031757A KR 20080031757 A KR20080031757 A KR 20080031757A KR 100926456 B1 KR100926456 B1 KR 100926456B1
Authority
KR
South Korea
Prior art keywords
port
terminal device
attack
packet
trap
Prior art date
Application number
KR1020080031757A
Other languages
English (en)
Other versions
KR20090106197A (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 KR1020080031757A priority Critical patent/KR100926456B1/ko
Publication of KR20090106197A publication Critical patent/KR20090106197A/ko
Application granted granted Critical
Publication of KR100926456B1 publication Critical patent/KR100926456B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • G06F21/126Interacting with the operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security

Abstract

클라이언트 단말장치를 이용한 침입 탐지 장치 및 그 방법과 네트워크 보안 시스템 및 네트워크 보안 방법이 개시된다. 트랩포트 설정부는 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트 중 적어도 하나를 트랩포트로 설정한다. 침입 탐지부는 트랩포트로 유입되는 패킷을 허니팟 시스템 또는 네트워크 보안 시스템으로 전송한다. 본 발명에 따르면 효율적으로 해커의 공격을 탐지하여 클라이언트 단말장치를 보호하고 클라이언트 단말장치에 기반하고 있기 때문에 추가적인 IP 주소와 하드웨어의 낭비를 줄일 수 있다.
침입 탐지 장치, 네트워크 보안 시스템, 트랩포트, 클라이언트 단말장치

Description

클라이언트 단말장치를 이용한 침입 탐지 장치 및 그 방법과 네트워크 보안 시스템 및 네트워크 보안 방법{Apparatus and method for intrusion detection using client terminal, system and method for network security of the same }
본 발명은 침입 탐지 장치 및 그 방법과 네트워크 보안 시스템 및 네트워크 보안 방법에 관한 것으로, 보다 상세하게는 클라이언트 단말장치에 기반하여 공격 정보를 수집하여 공격 패킷의 침입을 탐지하는 침입 탐지 장치 및 그 방법과 네트워크 보안 시스템 및 네트워크 보안 방법에 관한 것이다.
현재까지 공격자에 의한 다양한 형태의 공격들을 탐지하고 차단하기 위한 안티바이러스, 침입탐지시스템, 침입차단시스템을 포함한 많은 보안 시스템들이 개발되어 왔다. 이 시스템들은 대부분 알려진 공격 유형에 관한 정보를 기반으로 공격에 대응하기 때문에 공격 정보 수집은 보안 시스템들의 능력을 좌우하는 중요 요소라 할 수 있다.
허니팟은 일반 사용자들에게 서비스를 제공하기 위한 자원이 아니라 해커를 유인하여 공격자 정보를 수집하기 위한 의도적으로 공격을 허용하는 컴퓨터 자원이다. 허니팟에 접근하는 모든 행위는 해커들의 불법 행위로 간주되기 때문에 허니팟 에서 발생하는 모든 행위와 허니넷에서 발생하는 모든 트래픽은 분석가치가 상당히 높다. 허니팟에 의해 수집된 공격 정보는 새로운 공격을 탐지하고 차단하기 위해 여러 보안 시스템들에서 사용된다. 그러나 인터넷상에는 무수히 많은 컴퓨터들이 존재하기 때문에, 해커가 허니팟을 공격할 가능성은 적다. 해커가 허니팟을 공격할 가능성을 높이기 위해 각각의 허니팟들은 여러 네트워크에 독립적인 서버로 구축되거나, VMWare 혹은 Virtual PC와 같은 가상화 소프트웨어를 통해 구축될 수 있다. 각 가상 컴퓨터는 각각의 IP 주소를 가지고 있으며 다른 가상 컴퓨터에 다른 운영체제를 동작시킬 수 있다. 하지만 운영체제에 따라 가상 서버를 위한 라이선스 비용을 지불해야 하는 단점이 있다. 따라서 많은 공격 정보를 수집하는데 한계가 있다.
허니트랩은 TCP 서비스에 대한 공격을 관찰하기 위한 네트워크 보안 프로그램이다. 기존의 허니팟은 사용하지 않는 IP 주소로의 접근을 비정상적인 것으로 간주하는 것과 달리 허니트랩은 사용하지 않는 포트로의 접근을 비정상적인 행위로 간주한다. 허니트랩은 특정 포트로 유입되는 패킷을 다른 클라이언트 단말장치나 다른 서비스로 전송하는 것은 물론, 모든 트래픽을 기록하는 기능도 제공한다. 따라서, 허니트랩이 많은 컴퓨터에 설치되고 비정상적인 행위로 간주되는 모든 연결들을 허니팟으로 전송할 경우, 해커의 공격 행위에 관한 정보들을 효율적으로 수집할 수 있다. 그러나 허니트랩은 해커들에 의해 쉽게 노출될 수 있다는 문제가 있다. 즉 허니트랩에 의해 리다이렉트된 해커가 허니팟에서 inconfig나 netstat 명령을 수행할 경우, 이 프로그램들은 허니트랩이 설치된 컴퓨터의 정보가 아닌 허니팟 정보를 제공하기 때문에 허니트랩과 허니팟의 존재가 해커에 노출될 수 있다. 게다가 허니트랩은 포트의 전송 속도를 제어할 수 없기 때문에 허니트랩이 설치된 컴퓨터는 해커의 악의적인 행위에 의해 커다란 부하를 가져올 수 있다. 허니트랩은 해커의 정보 수집의 목적을 가진 보안 관련 연구자들에게는 유용하지만 클라이언트에게는 적합한 서비스를 제공하지 못한다.
유인포트 시스템은 해커를 유인하기 위해서 서버에서 현재 사용되고 있지 않은 포트를 유인포트로 사용한다. 유인포트는 허니트랩에서 공격 정보 수집을 위해 사용되는 포트와 기능이 유사하지만, 이 포트로 인해 발생하는 시스템 및 네트워크 부하에 따라 전송 속도를 제어할 수 있다는 장점이 있다. 유인포트 시스템은 해커의 공격 정보를 수집하기 위한 유인포트들의 최대 수신 패킷량을 조절하기 위해 한계값을 설정하고, 한계값에 도달한 경우에 패킷 전송의 지연 시간을 높여 수신되는 패킷량을 한계값 이하로 유지한다. 또한 서버 보안을 위해 이 포트에 접근했던 해커가 서비스 포트에 접근할 경우 허니팟으로 리다이렉트하기 때문에 해커로부터 서비스 프로그램을 보호할 수 있다. 하지만 허니트랩과 마찬가지로 유인포트 시스템은 해커에 의해 쉽게 노출될 수 있으며 서버를 기반으로 하여 동작하기 때문에 유인포트를 생성하는데 많은 제한이 있다. 즉, 서버가 사용 중인 서비스 포트를 유인포트로 사용할 수 없기 때문에 서비스 프로그램을 공격하는 해커의 정보를 수집하는데 한계가 있다. 또한 다수의 서버에 설치되는 유인포트 시스템을 운영환경에 따라 효율적으로 관리하기 위한 방법이 제시되지 않았다.
종래의 허니팟은 포트가 아닌 IP 주소로의 접근을 비정상적인 행위로 간주하 여 공격 정보를 수집하는데 많은 공격 정보를 수집하기 위해 네트워크에 많은 허니팟을 배치할 수 있지만, 이는 추가적인 하드웨어가 필요하고 IP 주소의 낭비되는 문제점이 있다. 종래의 허니트랩은 포트를 기반으로 하지만, 사용 포트 선정이 허니팟과의 매칭에 의해서 선정되는 것이 아니라, 사용자가 수동으로 설정해야 하는 등 클라이언트들이 사용하기에는 적합하지 않은 운용상의 문제점이 있다. 또한 종래의 유인포트 시스템은 사용 포트 선정을 스캔을 통해 0-1023번 포트를 자동으로 설정할 수 있지만, 해커에 의해 쉽게 노출될 수 있으며, 서버를 기반으로 하여 동작하기 때문에 유인포트를 생성하는데 많은 제한이 있다.
본 발명이 이루고자 하는 기술적인 과제는 클라이언트 단말장치를 이용하여 효과적으로 침입을 탐지하는 장치 및 방법과 네트워크 보안 시스템 및 네트워크 보안 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는 클라이언트 단말장치를 이용하여 효과적으로 침입을 탐지하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 침입 탐지 장치는, 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정하는 트랩포트 설정부; 및 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지부;를 구비한다.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 침입 탐지 방법은, 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정하는 트랩포트 설정 단계; 및 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 단계;를 갖는다.
상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 네트워크 보안 시스템은, 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는 입력부; 및 클라이언트 단말장치가 사용하지 않는 포트 중에서 상기 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 장치에 상기 환경 설정 정보를 제공하는 클라이언트 관리부;를 구비한다.
상기의 또 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 네트워크 보안 방법은, 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는 입력 단계; 및 클라이언트 단말장치가 사용하지 않는 포트 중에서 상기 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 장치에 상기 환경 설정 정보를 제공하는 클라이언트 관리 단계;를 갖는다.
본 발명에 따른 침입 탐지 장치 및 방법과 네트워크 보안 시스템 및 네트워크 보안 방법에 의하면, 허니팟이 해커의 공격을 허용하기 위해 열어둔 포트 번호를 네트워크 보안 시스템으로부터 수신하여 트랩포트를 설정함으로써 트랩포트를 관리하는 프로세스로 인한 컴퓨팅 자원의 낭비 및 과중한 네트워크 트래픽의 유발 을 방지할 수 있다. 그리고 공격 정보를 수집하기 위해 사용되는 IP 주소와 하드웨어 낭비를 줄일 수 있으며, 해커에게 노출되는 것을 막기 위해 중요 데이터를 변조하여 해커의 공격에 의해 발생할 수 있는 시스템 및 네트워크 과부하를 예방할 수 있다. 또한 시스템 보안 기능을 통해 해커의 공격으로부터 클라이언트를 보호하고 보안 프로그램의 시그너처 파일을 주기적으로 갱신함으로써 새로운 공격에 민첩하게 대응할 수 있다.
이하에서 첨부된 도면들을 참조하여 본 발명의 침입 탐지 장치 및 방법과 네트워크 보안 시스템 및 네트워크 보안 방법에 관한 바람직한 실시예에 대해 상세히 설명한다.
도 1은 본 발명에 따른 침입 탐지 장치에 대한 바람직한 실시예의 구성을 도시한 블럭도이고, 도 2는 클라이언트 단말 장치와 네트워크 보안 시스템의 물리적 배치도이고, 도 3은 클라이언트 단말장치와 네트워크 보안 시스템과의 통신을 나타낸 도면이다.
도 1을 참조하면, 본 발명에 따른 침입 탐지 장치는 트랩포트 설정부(110), 시스템 보안부(120), 로그 관리부(130), 패킷 수정부(140), 침입 탐지부(150), 포트 번호 추적부(160), 포트 번호 전송부(170), 포트 번호 수신부(180) 및 포트 관리부(190)를 구비한다.
트랩포트 설정부(110)는 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정한다.
도 3을 참조하면, 트랩포트 설정부(110)는 클라이언트 단말장치(310)의 운영체제 정보를 네트워크 보안 시스템(320)에 전달하고 네트워크 보안 시스템(320)으로부터 동일한 운영체제가 설치된 허니팟의 IP 주소를 수신한다.
트랩포트 설정부(110)는 네트워크 보안 시스템(320)으로부터 허니팟이 해커의 공격을 허용하기 위해 열어둔 포트 번호를 수신함으로써 트랩포트를 생성한다. 해커들은 시스템의 취약 서비스 프로그램을 공격하기 위해 잘 알려진 포트와 등록된 포트를 공격한다. 포트 번호는 잘 알려진 포트, 등록된 포트, 동적 포트로 나뉜다. 잘 알려진 포트는 0번부터 1023번까지 사용되며, 대분분의 시스템에서 시스템 프로세스 또는 권한이 있는 사용자가 실행하는 프로그램이 사용한다. 한편 등록된 포트는 1024번부터 49151번까지 사용되며 일반 사용자가 실행하는 프로그램이 사용한다. 동적 포트는 49152번부터 65535번까지 사용되며 운영체제에 의해서 자동으로 클라이언트 프로그램에 할당되는 포트들이다. 이러한 원리를 적용하여 트랩포트 설정부(110)는 0번부터 49151번 포트 중에서 트랩포트로 사용할 수 있는 포트 번호를 찾기 위해 우선 윈도우나 리눅스 netstat 명령을 하여 현재 사용중인 포트 목록을 파악한다. 그 후, 트랩포트 설정부(110)는 네트워크 보안 시스템(320)으로부터 수신한 포트 목록 중에서 현재 클라이언트 단말장치(310)에서 사용되고 있지 않은 포트 번호와 일치하는 포트를 트랩포트로 설정한다.
시스템 보안부(120)는 기존에 알려진 해킹 프로그램의 정보를 담고 있는 시 그너처 파일을 기초로 트랩포트로 유입된 패킷을 분석하여 트랩포트로 유입된 패킷 중에서 네트워크를 통한 침입으로 판정된 패킷을 공격 패킷으로 분류한다. 그리고 시스템 보안부(120)는 공격 패킷을 발송한 공격자 단말장치를 클라이언트 단말장치가 사용중인 포트로 접근하는 것을 차단한다. 클라이언트 단말장치를 보호하기 위해서 해커의 불법적인 행위를 식별하고 차단하는 기능이 필요하다. 트랩포트는 서비스를 제공하는 포트가 아니기 때문에 트랩포트로의 접근은 해커의 공격으로 간주되어 해커의 IP 주소 정보가 블랙리스트에 기록된다. 또한 시스템 보안부(120)는 시그너처를 기반으로 해커의 공격을 탐지하고 차단하기 위해 네트워크 기반의 침입 탐지를 수행하여, 패턴 매칭을 통해 해커의 침입을 식별하면 패킷의 근원지 IP 주소를 블랙리스트에 기록한다. 시스템 보안부(120)는 블랙리스트에 등록된 해커들이 클라이언트 단말장치에 접근할 때, 이를 차단하기 위해 IPTables을 이용한다. 시스템 보안부(120)는 침입 탐지부(150)로부터 블랙리스트의 변경 통보를 받을 경우 다음과 같은 IPTables 룰을 생성한다.
iptables -A INPUT -p TCP -s Hacker_IP --dport Normal_ports -j DROP
Hacker_IP는 IPTables에 의해 차단될 해커의 IP 주소를 나타내며, Normal_ports는 트랩포트를 제외한 현재 열려있는 포트 번호를 나타낸다. 시스템 보안부(120)는 DROP을 통해 지정된 Hacker_IP 주소로부터 Normal_ports에 유입되는 패킷을 무시하고 버리게 된다.
시스템 보안부(120)는 침입 탐지 장치의 설치로 인해 발생할 수 있는 추가적인 보안 취약점에 대응하기 위해 프로세스를 감시하여 악의적인 프로세스의 생성을 막는다. 일반적으로 해커들은 열린 포트와 관련된 서비스 프로그램의 취약점을 수집하여 취약점이 노출된 서비스 프로그램에 쉘 코드 공격을 수행한다. 쉘 코드는 쉘을 실행시키는 코드로서, 버퍼 오버플로우나 포맷스트링 공격은 이러한 쉘 코드를 취약 프로그램이 사용 중인 스택에 삽입하여 쉘 코드를 실행시킨다. 따라서 해커는 침입 탐지 장치의 취약점을 공격하여 쉘을 획득하고, 루트 권한의 쉘을 획득한다.
도 4는 침입 탐지 장치의 취약점을 공격하여 쉘을 획득하려는 시도를 막기 위한 커널 모듈 코드를 나타낸 도면이다. 커널이 시스템 명령을 처리하기 위해서는 execve 시스템 콜 함수를 호출하게 되는데, 원본 execve 시스템 콜 함수를 도 4에 도시된 코드로 대체함으로써 불법적인 쉘 획득을 막을 수 있다.
도 4의 filename은 현재 수행되는 시스템 명령에 대한 문자열이 저장된 변수이며, current->session은 현재 프로세스의 세션 ID이다. 여기에서 current는 커널 내의 현재 프로세스 상태를 나타내는 task_struct 구조체의 포인터 변수를 나타낸다. psid는 침입 탐지 장치의 세션 ID를 나타내며, 침입 탐지 장치가 실행될 때 커널 모듈이 수신한다. 커널 모듈 코드는 해커의 공격에 의한 쉘 프로그램 실행을 막기 위해서, 현재 실행되는 명령이 쉘 프로그램이고 현재 실행 중인 프로세스의 세션 ID가 침입 탐지 장치의 세션 ID와 동일하면 이를 해커의 공격으로 간주하여 쉘 프로세스 생성을 중지한다. 만일, 쉘 명령뿐만 아니라 다른 명령들을 등록할 경우 커널 모듈 코드는 해당 명령들의 실행도 차단할 수 있다.
로그 관리부(130)는 트랩포트로 유입된 패킷 중에서 공격 패킷으로 분류되지 않은 패킷을 로그 파일에 기록한다. 대기모드로 동작하는 로그 관리부(130)는 트랩 포트에 접근하는 비정상적인 행위를 기록한다. 대기 모드로 동작하는 침입 탐지 장치는 인터넷 웜과 같이 자동화된 공격에 대한 정보를 수집하는데 적합하다. 로그 관리부(130)는 트랩포트로 유입된 패킷들이 보안 프로그램에 의해 탐지되지 않을 경우에는 새로운 인터넷 웜 공격일 가능성이 높기 때문에 로그 파일에 기록한다.
패킷 수정부(140)는 트랩포트로 유입된 패킷의 목적지를 허니팟의 IP 주소로 변경하고, 허니팟(250, 260 및 270)으로부터 수신된 패킷의 발신지를 클라이언트 단말장치(210, 220 및 230)의 IP 주소로 변경한다. 해커는 리다이렉트된 허니팟으로의 침입에 성공한 후 ifconfig와 같은 시스템 명령을 수행하면 허니팟(250, 260 및 270)의 IP 주소를 확인할 수 있다. 이는 해커 자신이 공격 대상으로부터 다른 컴퓨터로 리다이렉팅되는 사실을 알리는 것과 같으므로, 패킷 수정부(140)는 패킷 데이터에 포함된 허니팟(250, 260 및 270)의 IP 주소를 클라이언트 단말장치(210, 220 및 230)의 IP 주소로 변조한다. 패킷 수정부(140)는 수신된 패킷의 데이터에서 허니팟의 IP 주소가 포함된 문자열을 발견하면 클라이언트 단말장치의 IP 주소 문자열로 대체하여 리다이렉트된 사실을 숨긴다.
침입 탐지부(150)는 트랩포트로 유입되는 패킷을 허니팟 시스템으로 전송하고, 로그 파일에 기록되어 있는 패킷 정보를 네트워크 보안 시스템(240)으로 전송한다. 트랩포트로 유입된 패킷은 다음과 같은 과정에 따라 처리된다.
1. 패킷의 헤더를 제거하고, 헤더의 목적지 주소는 허니팟의 IP 주소로 변경한 후 허니팟으로 전송한다.
2. 허니팟에 의해 처리된 결과가 침입 탐지부로 유입된다.
3. 데이터가 패킷 수정부로 전달된다.
4. 패킷 수정부에서 수정된 데이터가 침입 탐지부로 전달된다.
5. 패킷 헤더의 목적지 주소는 해커의 IP 주소로 변경한 후 해커에게 패킷 데이터를 전송한다.
이때, 해커가 허니팟으로 DOS 공격을 할 경우 클라이언트 단말장치는 트랩포트의 패킷 전송으로 인한 과도한 부하를 피할 수 없다. 침입 탐지부(150)는 이러한 공격으로부터 클라이언트 단말장치를 보호하기 위해 수신 버퍼의 크기를 제한하고, 일정시간 지연 후 허니팟으로 전송한다. 지연시간은 해커가 콘솔 프로그램에서 키보드 입력을 할 때 끊김 현상 없이 즉각적으로 반응하기에 충분히 작은 시간으로 설정되며, 초당 데이터 전송량은 텍스트나 이진 파일을 전송하기에 충분하게 설정된다. 침입 탐지부는(150) 트랩포트를 통해 유입된 패킷은 공격에 의한 패킷이기 때문에 해당 패킷의 근원지 IP 주소를 블랙리스트에 기록하며, 해커로부터 클라이언트 단말 장치를 보호하기 위해 시스템 보안부(120)에게 해당 IP 주소를 포함한 블랙리스트가 갱신되었음을 통보한다.
침입 탐지부(150)는 트랩포트로 유입된 모든 패킷 정보를 허니팟 시스템 또는 네트워크 보안 시스템으로 전송할 경우에 클라이언트 단말장치를 비롯하여 네트워크 보안 시스템 및 허니팟 시스템에게 커다란 부하를 유발시키므로, 보안 프로그램에 의해 탐지되지 않은 로그만이 기록되어 있는 로그 파일을 네트워크 보안 시스템으로 전송한다.
도 5는 공격자 단말장치가 클라이언트 단말장치를 공격하기 위해 이미 공격에 성공한 경유지 단말장치를 이용하는 모습을 나타낸 도면이고, 도 6은 공격자 단말장치와 경유지 단말장치, 클라이언트 단말장치 간의 프로세스 및 정보를 나타낸 도면이다.
도 6를 참조하면, 포트 번호 추적부(160)는 네트워크 침입 공격 근원지 단말장치(610)가 접근한 트랩포트 번호 및 근원지 단말장치(610)가 클라이언트 단말장치(620)를 공격하기 위해 사용한 익스플로잇 포트 번호를 추적한다. 포트 번호 추적부(160)는 클라이언트 단말장치(620)에 설치된 침입 탐지 장치는 공격자 단말 장치(610)가 24번 트랩포트로 접근하였으며, 접근에 사용된 익스플로잇 포트 번호는 31290번 이라는 사실을 파악한다.
포트 번호 전송부(170)는 근원지 단말장치(610)가 클라이언트 단말장치(620)를 공격하기 위해 경유지로 사용한 경유지 단말장치(630)로 공격자 추적을 요청하고, 공격 근원지 포트로 사용된 익스플로잇 포트 번호를 경유지 단말장치(630)로 전송한다. 클라이언트 단말장치(620)의 침입 탐지 장치는 경유지 단말장치(630)에게 공격자 추적을 요청하고 함께 공격 근원지 포트로 31290번 포트가 사용되는 것을 경유지 단말장치(630)로 전송한다.
포트 번호 수신부(180)는 경유지 단말장치(630)로부터 최초 공격 근원지 포트 번호를 수신한다. 경유지 단말장치(630)는 클라이언트 단말장치(620)로부터 수신한 정보에 기초하여 자신이 공격 경유지로 사용되었는지 여부를 판단한다. 자신이 공격 근원지 단말장치이면 이 사실을 클라이언트 단말장치(620)에 통보하고, 경 유지 단말장치(630)로 사용되었을 경우에는 클라이언트 단말장치(620)에 접속하기 위해 생성된 프로세스의 SID를 PID로 갖는 프로세스를 추적한다. 그리고 경유지 단말장치(630)는 그 프로세스의 부모 프로세스를 추적하여 경유지 단말장치의 공격 근원지 포트를 파악한다. 익스플로잇 프로세스는 사용자의 명령을 처리하기 위한 쉘 프로세스로부터 생성된 자식 프로세스이며 쉘 프로세스와 같은 SID(Session ID)를 갖는다. 공격자 단말장치가 직접 혹은 또 다른 경유지 클라이언트 단말장치를 이용하여 경유지 단말장치(630)에 접속했다면 쉘 프로세스는 서비스 데몬 프로세스로부터 생성된 자식 프로세스이다. 도 6에서 경유지 단말 장치의 서비스 데몬 프로세스는 22번 포트를 사용하며, 공격자 단말장치(610)의 36257번 포트는 경유지 단말장치의 22번 포트와 연결이 유지되어 있다. 본 발명은 상술한 프로세스 및 포트 간의 관계에 기초하여 공격 근원지 단말장치(610)의 위치를 추적한다.
포트 관리부(190)는 클라이언트 단말장치에서 구동중인 프로그램으로부터 트랩포트로 설정된 포트에 대한 사용 요청이 있는 경우에 트랩포트에 대해 진행중인 프로세스를 종료하여 포트를 닫는다. 클라이언트 단말 장치가 서버 프로그램의 목적으로 특정 포트를 사용하고자 할 경우 이미 해당 포트가 트랩포트로 사용되고 있을 가능성이 있다. 이 경우에는 사용중인 포트를 닫아야 하는데, 포트 관리부(190)는 트랩포트에 대한 프로세스를 종료하여 포트를 닫음으로써 포트를 관리한다.
도 7은 본 발명에 따른 침입 탐지 방법에 대한 바람직한 실시예의 수행 과정을 도시한 흐름도이다.
도 7을 참조하면, 트랩포트 설정부(110)는 네트워크 보안 시스템으로부터 허 니팟의 IP 주소 및 공격을 허용한 포트 번호를 수신한다(S700). 다음으로 트랩포트 설정부(110)는 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 수신된 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정한다(S705).
시스템 보안부(120)는 기존에 알려진 해킹 프로그램의 정보를 담고 있는 시그너처 파일을 기초로 트랩포트로 유입된 패킷을 분석하여 트랩포트로 유입된 패킷 중에서 네트워크를 통한 침입으로 판정된 패킷을 공격 패킷으로 분류하고, 공격 패킷을 발송한 공격자 단말장치를 클라이언트 단말장치(210, 220 및 230)가 사용중인 포트로 접근하는 것을 차단한다(S710). 이와 같이 시스템 보안부(120)에 의한 공격 패킷 검출 및 포트 접근 차단이 수행된 후에 본 발명에 따른 침입 탐지 장치의 동작 모드에 따라 선택적으로 로그 관리부(130) 및 침입 탐지부(150)의 동작이 결정된다.
만약 본 발명에 따른 침입 탐지 장치의 동작 모드가 대기 모드이면(S715), 로그 관리부(130)는 트랩포트로 유입된 패킷 중에서 공격 패킷으로 분류되지 않은 패킷을 로그 파일에 기록하고, 침입 탐지부(150)는 로그 파일에 기록되어 있는 패킷 정보를 네트워크 보안 시스템으로 전송한다(S720). 그리고 침입 탐지 장치는 네트워크 보안 시스템으로부터 갱신된 시그너처 파일을 수신하여 새롭게 등장하는 해커의 공격이나 인터넷 웜 공격에 대응한다(S725). 이와 달리 본 발명에 따른 침입 탐지 장치의 동작 모드가 전송 모드이면(S715), 패킷 수정부(140)는 트랩포트로 유입된 패킷의 목적지 IP 주소를 허니팟의 IP 주소로 변경하고, 침입 탐지부(150)는 IP 주소가 변경된 패킷을 허니팟으로 전송한다(S730). 다음으로 패킷 수정부(140) 는 허니팟으로부터 수신된 패킷의 발신지 IP 주소를 클라이언트 단말장치의 IP 주소로 변경하고, 침입 탐지부(150)는 클라이언트 단말장치의 IP 주소로 변경된 주소를 공격자 단말장치로 전송한다(S735).
다음으로 네트워크 침입 공격을 시도한 공격자 단말장치를 추적하도록 설정되어 있는지 확인한 후(S740), 공격자 추적이 필요한 경우 공격자 단말장치를 추적절차를 수행한다. 이러한 공격자 단말장치의 추적은 선택적으로 수행될 수 있다.
먼저 포트 번호 추적부(160)는 네트워크 침입 공격을 시도한 근원지 단말장치(410)가 접근한 트랩포트 번호 및 근원지 단말장치(410)가 클라이언트 단말장치(420)를 공격하기 위해 사용한 익스플로잇 포트 번호를 추적한다(S745). 다음으로 포트 번호 전송부(170)는 근원지 단말장치(610)가 클라이언트 단말장치(620)를 공격하기 위해 경유지로 사용한 경유지 단말장치(630)로 공격자 추적을 요청하고, 공격 근원지 포트로 사용된 익스플로잇 포트 번호를 경유지 단말장치(630)로 전송한다(S750). 다음으로 포트 번호 수신부(180)는 경유지 단말장치(630)로부터 네트워크 침입 공격을 시도한 근원지 포트 번호를 수신한다(S755).
도 8은 본 발명에 따른 네트워크 보안 시스템의 바람직한 실시예의 구성을 도시한 블럭도이다.
도 8을 참조하면, 본 발명에 따른 네트워크 보안 시스템은 입력부(810), 및 클라이언트 관리부(820)를 구비한다.
입력부(810)는 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는다. 클라이언트 관리부(820) 는 클라이언트 단말장치가 사용하지 않는 포트 중에서 상기 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 트랩포트로 유입되는 패킷을 허니팟 시스템으로 전송하는 침입 탐지 장치에 상기 환경 설정 정보를 제공한다.
도 9는 본 발명에 따른 네트워크 보안 방법에 관한 바람직한 실시예의 수행 과정을 도시한 흐름도이다.
도 9를 참조하면, 입력부(810)는 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는다(S910). 클라이언트 관리부(820)는 클라이언트 단말장치가 사용하지 않는 포트 중에서 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 트랩포트로 유입되는 패킷을 허니팟 시스템으로 전송하는 침입 탐지 장치에 환경 설정 정보를 제공한다(S920).
도 10은 허니넷 관리를 위한 GUI 기반의 네트워크 보안 시스템 프로그램을 나타낸 도면이고, 도 11은 침입 탐지 장치의 패킷 수정부에 의한 허니팟 주소 변조를 도시한 도면이다.
도 10을 참조하면, 네트워크 보안 시스템은 트리 뷰를 통해 다수의 허니팟을 운영체제 종류에 따라 관리할 수 있다. 사용자는 트리 뷰에서 운영체제 종류를 클릭하면 해당 운영 체제가 설치된 허니팟 목록을 볼 수 있고, 네트워크 보안 시스템 프로그램은 허니넷에 새로운 허니팟을 추가하거나 기존 허니팟을 삭제 및 수정하기 위한 인터페이스도 함께 제공한다. 새로운 허니팟을 추가하기 위해서는 허니팟에 할당되는 IP 주소와 해커의 공격을 허용하기 위한 포트 번호, 침입 탐지 장치에 의해 사용될 시그너처 파일을 지정한다.
도 11을 참조하면, 기존의 허니트랩이나 유인포트 시스템에서는 해커가 공격에 성공한 후 ifconfig 명령을 수행하면 허니팟의 IP 주소가 확인되기 때문에 리다이렉트되고 있다는 사실을 알 수 있다. 본 발명은 이를 숨기기 위해서 데이터 변조 기능을 수행한다. 데이터 변조 기능이 없을 경우에는 호스트 ID가 79인 클라이언트 단말장치를 공격했을 때, ifconfig 명령을 통해 확인되는 호스트 ID가 도 11의 좌측 결과와 같이 허니팟의 호스트 ID 31이다. 하지만 침입 탐지 장치의 패킷 수정부(140)는 패킷 IP 주소 변경으로 우측 결과와 같이 허니팟이 호스트 ID를 클라이언트 단말장치의 호스트 ID로 변조하기 때문에 해커는 리다이렉트 되고 있다는 사실을 인식하지 못한다.
도 12는 시스템 보안부(120)가 설치되지 않은 상태에서의 쉘 코드 공격이 이루어졌을 때를 나타낸 도면이고, 도 13은 시스템 보안부(120)가 설치된 후 해커의 쉘 코드 공격이 차단되는 모습을 나타낸 도면이다.
도 12 및 도 13을 참조하면, 시스템 보안부(120)가 설치되지 않은 상태에서는 루트 쉘을 획득한 후에 아무런 제약 없이 모든 명령을 수행할 수 있지만, 시스템 보안부가 설치된 후에는 시스템 명령을 수행할 수 없음을 알 수 있다.
침입 탐지 장치는 클라이언트 단말장치의 자원을 이용하기 때문에 트랩포트를 통해 전달되는 패킷량을 조절하여 클라이언트 단말 장치의 시스템 및 네트워크 부하를 최소화해야 한다. 그러나 전송되는 패킷량이 너무 적으면, 오히려 해커들이 빠른 응답을 하는 다른 공격 대상을 찾을 것이다. 또한 현재 컴퓨터 및 네트워크 상황을 고려하면, 실시간 요청에 따른 응답 시간이 3초 이상 걸릴 경우 사용자들은 서비스 질에 불만을 갖는다. 따라서 해커가 대상을 공격하기에 만족스러우며 클라이언트 단말장치를 보호할 수 있는 수준의 패킷 전송의 적정 지연시간을 설정해야한다. 이를 위해 실험에서는 웹 브라우저를 이용하여 여러 홈페이지에 접속하고, 패킷 전송 지연시간에 따른 홈페이지별 초기화면의 수신완료 시간을 측정하였다. 실험은 패킷 전송 지연 시간을 0.01초부터 0.1초까지, 데이터의 전송크기를 1024바이트로 설정하여 수행하였다. 전송 지연 시간의 최대값을 0.1로 제한한 이유는 키보드 입력에 반응하는 시간이 0.1 이상이 될 경우 콘솔 프로그램에서 끊김 현상이 컸기 때문이다.
표 1은 브라우저를 통해 실험 대상 홈페이지에 접속했을 때 트랩포트에 의해 전송되는 패킷량을 나타낸 표이다.
실험 대상 홈 페이지 전송되는 패킷량(KB)
A 홈페이지 38
B 홈페이지 28
C 홈페이지 168
도 14는 침입 탐지 장치의 패킷 전송 지연 시간에 따라 홈페이지별 초기화면 수신완료 시간을 나타낸 도면이다.
도 14를 참조하면, 지연 시간을 0.01초로 설정한 경우에는 A 및 B 홈페이지의 수신완료 시간이 약 1초, C 홈페이지는 약 4초였다. 만일 트랩포트가 10개 생성된 클라이언트 단말장치에 0.01초의 지연 시간을 적용할 경우 해커가 10개의 포트에 DOS 공격을 수행하면, 최악의 경우 초당 약 1MB를 전송하게 되어 시스템과 네트워크에 큰 부하를 줄 수 있다. 지연 시간을 0.1초로 설정한 경우에는, 홈페이지 초기 화면의 크기가 비교적 작은 A 및 B 홈페이지는 브라우저가 수신완료하는데 약 3초의 시간이 걸리며, 크기가 큰 C 홈페이지는 수신완료하는데 20초가 걸렸다. 현재 인터넷 환경을 감안하여 웹페이지 수신완료 시간이 20초나 걸릴 경우, 해커가 트랩포트에 접근할 가능성은 낮아질 수 있다. 따라서 해커의 공격을 허용하기 위해 허니팟에 비교적 작은 웹페이지로 구성된 홈페이지를 구축하고 지연 시간을 0.1초로 설정하면, 초당 약 100KB만 전송 가능하기 때문에 클라이언트 단말장치의 부하를 크게 줄일 수 있다.
표 2는 허니트랩이 파일을 전송할 때와 본 발명에 따른 시스템이 파일 전송할 때의 시스템 자원 사용량을 나타낸 표이다. 시스템 자원 사용량 측정을 위해 700MB의 파일을 전송하였으며, 10초 마다 자원 사용 값을 측정하였다. 본 발명에 따른 시스템은, 1024바이트의 데이터 전송 크기와 0.1초의 지연 시간에 따라 전송하도록 설정되었다. 표 2와 같이 허니트랩은 패킷을 전송할 때 전송 속도를 제어하지 않기 때문에 클라이언트 단말장치에 커다란 부하를 준다. 메모리 사용량의 경우 10초 마다 3.2%씩 증가하여 짧은 시간 내에 시스템이 매우 느려지는 현상이 일어났다. 그러나 본 발명에 따른 시스템은, 허니트랩과 달리 지연 시간에 따른 전송 속도 제어를 통해 시스템이 부하를 최소화한다.
시스템 자원 본 발명에 따른 시스템 허니트랩
CPU 0.0% 1%
메모리 0.1% 10초마다 3.2% 증가
네트워크 11KiB/s 1.9MiB/s
표 3은 기존 시스템들과 본 발명에 따른 시스템의 특징을 비교한 표이다. 본 발명에 따른 시스템은 허니트랩과 달리 해커를 유인하기 위한 포트를 자동으로 생성하기 때문에 시스템 설정이 용이하며, 서버가 아닌 클라이언트에 설치되기 때문에 21, 23, 25, 80번 포트와 같이 서버 프로그램들에 사용되는 포트들을 해커 유인을 위한 목적으로 사용할 수 있는 가능성이 유인포트 시스템에 비해 높다. 그리고 실험을 통해 클라이언트 단말장치를 보호할 수 있는 수준으로 패킷 전송을 수행하기 때문에 허니트랩과 비교하여 DOS 공격에 강인하다. 또한, 시스템 보호 기능이 전혀 없는 허니트랩과 네트워크 레벨에서 해커의 IP 주소를 기반으로 서버 접근을 제한하는 유인포트 시스템과는 달리 본 발명에 따른 시스템은 네크워크 레벨과 응용 레벨에서 침입을 탐지 및 차단하며, 설치 프로그램의 취약점으로 인해 발생할 수 있는 버퍼 오버플로우나 포맷스트링과 같은 쉘 코드 공격을 차단할 수 있다. 마지막으로 본 발명에 따른 시스템은 기존 시스템과는 달리 전송되는 패킷 데이터의 변조 기능을 제공함으로써 설치 프로그램이나 허니팟의 존재를 숨길 수 있다.
유인포트 시스템 허니트랩 본 발명에 따른 시스템
사용 포트 선정 방법 스캔을 통해 가용한 0-1023번 포트를 자동으로 선택하여 사용한다. 사용자가 수동으로 설정한다. 스캔을 통해 가용한 0-49151번 포트를 자동으로 선택하여 사용한다.
트래픽 제어 한계값 설정을 통한 밀리 초당 패킷량을 제한한다. 시간과 무관한 전체 전송량을 제한한다. 클라이언트 단말장치의 보호할 수 있는 수준으로 패킷량을 제한한다.
시스템 보호 IPTable을 이용한 해커의 접근을 방어한다. 트래픽 제어를 통해 DOS를 방어한다. 기능이 없다. IPTable과 NIDS 기능을 통한 시그너처 파일에 기반하여 침입을 탐지하고 차단한다. 트래픽 제어를 통해 DOS를 방어한다. 커널 모듈을 통한 쉘 코드 공격을 방어한다. 패킷 데이터 변조 기능을 통해 시스템의 노출을 방어한다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
도 1은 본 발명에 따른 침입 탐지 장치의 블럭도,
도 2는 클라이언트 단말 장치와 네트워크 보안 시스템 사이의 물리적 배치도,
도 3은 클라이언트 단말장치와 네트워크 보안 시스템과의 통신을 나타낸 도면,
도 4는 침입 탐지 장치의 취약점을 공격하여 쉘을 획득하려는 시도를 막기 위한 커널 모듈 코드를 나타낸 도면,
도 5는 공격자 단말장치가 클라이언트 단말장치를 공격하기 위해 이미 공격에 성공한 경유지 단말장치를 이용하는 모습을 나타낸 도면,
도 6은 공격자 단말장치와 경유지 단말장치, 클라이언트 단말장치 간의 프로세스 및 정보를 나타낸 도면,
도 7은 본 발명에 따른 침입 탐지 방법의 흐름도,
도 8은 본 발명에 따른 네트워크 보안 시스템의 블럭도,
도 9는 본 발명에 따른 네트워크 보안 방법에 관한 흐름도,
도 10은 허니넷 관리를 위한 GUI 기반의 네트워크 보안 시스템 프로그램을 나타낸 도면,
도 11은 침입 탐지 장치의 패킷 수정부에 의한 허니팟 주소 변조를 도시한 도면,
도 12는 시스템 보안부가 설치되지 않은 상태에서의 쉘 코드 공격이 이루어 졌을 때를 나타낸 도면,
도 13은 시스템 보안부가 설치된 후 해커의 쉘 코드 공격이 차단되는 모습을 나타낸 도면, 그리고,
도 14는 침입 탐지 장치의 패킷 전송 지연 시간에 따라 홈페이지별 초기화면 수신완료 시간을 나타낸 도면이다.

Claims (16)

  1. 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정하는 트랩포트 설정부; 및
    상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지부;를 포함하는 것을 특징으로 하는 침입 탐지 장치.
  2. 제 1항에 있어서,
    기존에 알려진 해킹 프로그램의 정보를 담고 있는 시그너처 파일을 기초로 상기 트랩포트로 유입된 패킷을 분석하여 상기 트랩포트로 유입된 패킷 중에서 네트워크를 통한 침입으로 판정된 패킷을 공격 패킷으로 분류하고, 상기 공격 패킷을 발송한 공격자 단말장치가 상기 클라이언트 단말장치에 의해 사용중인 포트로 접근하는 것을 차단하는 시스템 보안부를 더 포함하는 것을 특징으로 하는 침입 탐지 장치.
  3. 제 2항에 있어서,
    상기 트랩포트로 유입된 패킷 중에서 상기 공격 패킷으로 분류되지 않은 패킷을 로그 파일에 기록하는 로그 관리부를 더 포함하고,
    상기 침입 탐지부는 상기 로그 파일에 기록되어 있는 패킷 정보를 상기 네트워크 보안 시스템으로 전송하는 것을 특징으로 하는 침입 탐지 장치.
  4. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 클라이언트 단말장치에서 구동중인 프로그램으로부터 상기 트랩포트로 설정된 포트에 대한 사용 요청이 있는 경우에 상기 트랩포트에 대해 진행중인 프로세스를 종료하여 포트를 닫는 포트 관리부를 더 포함하는 것을 특징으로 하는 침입 탐지 장치.
  5. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 트랩포트로 유입된 패킷의 목적지를 상기 허니팟의 IP 주소로 변경하고, 상기 허니팟으로부터 수신된 패킷의 발신지를 상기 클라이언트 단말장치의 IP 주소로 변경하는 패킷 수정부를 더 포함하는 것을 특징으로 하는 침입 탐지 장치.
  6. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    네트워크 침입 공격을 시도한 근원지 단말장치가 접근한 트랩포트 번호 및 상기 근원지 단말장치가 상기 클라이언트 단말장치를 공격하기 위해 사용한 익스플로잇 포트 번호를 추적하는 포트 번호 추적부;
    상기 근원지 단말장치가 상기 클라이언트 단말장치를 공격하기 위해 경유지로 사용한 경유지 단말장치로 공격자 추적을 요청하고, 공격 근원지 포트로 사용된 상기 익스플로잇 포트 번호를 상기 경유지 단말장치로 전송하는 포트 번호 전송부; 및
    상기 경유지 단말장치로부터 네트워크 침입 공격을 시도한 근원지 포트 번호를 수신하는 포트 번호 수신부;를 더 포함하는 것을 특징으로 하는 침입 탐지 장치.
  7. 클라이언트 단말장치가 사용하고 있지 않은 포트 중에서 네트워크에 연결되어 허니팟 시스템의 정보를 보유하고 있는 네트워크 보안 시스템으로부터 제공받은 공격 허용 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트로 설정하는 트랩포트 설정 단계; 및
    상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 단계;를 포함하는 것을 특징으로 하는 침입 탐지 방법.
  8. 제 7항에 있어서,
    기존에 알려진 해킹 프로그램의 정보를 담고 있는 시그너처 파일을 기초로 상기 트랩포트로 유입된 패킷을 분석하여 상기 트랩포트로 유입된 패킷 중에서 네트워크를 통한 침입으로 판정된 패킷을 공격 패킷으로 분류하고, 상기 공격 패킷을 발송한 공격자 단말장치가 상기 클라이언트 단말장치에 의해 사용중인 포트로 접근하는 것을 차단하는 시스템 보안 단계를 더 포함하는 것을 특징으로 하는 침입 탐지 방법.
  9. 제 8항에 있어서,
    상기 트랩포트로 유입된 패킷 중에서 상기 공격 패킷으로 분류되지 않은 패킷을 로그 파일에 기록하는 로그 관리 단계를 더 포함하고,
    상기 침입 탐지 단계에서는 상기 로그 파일에 기록되어 있는 패킷 정보를 상기 네트워크 보안 시스템으로 전송하는 것을 특징으로 하는 침입 탐지 방법.
  10. 제 7항에 있어서,
    상기 트랩포트로 유입된 패킷의 목적지를 상기 허니팟의 IP 주소로 변경하고, 상기 허니팟으로부터 수신된 패킷의 발신지를 상기 클라이언트 단말장치의 IP 주소로 변경하는 패킷 수정 단계를 더 포함하는 것을 특징으로 하는 침입 탐지 방법.
  11. 제 7항에 있어서,
    네트워크 침입 공격을 시도한 근원지 단말장치가 접근한 트랩포트 번호 및 상기 근원지 단말장치가 상기 클라이언트 단말장치를 공격하기 위해 사용한 익스플로잇 포트 번호를 추적하는 포트 번호 추적 단계;
    상기 근원지 단말장치가 상기 클라이언트 단말장치를 공격하기 위해 경유지로 사용한 경유지 단말장치로 공격자 추적을 요청하고, 공격 근원지 포트로 사용된 상기 익스플로잇 포트 번호를 상기 경유지 단말장치로 전송하는 포트 번호 전송 단 계; 및
    상기 경유지 단말장치로부터 네트워크 침입 공격을 시도한 근원지 포트 번호를 수신하는 포트 번호 수신 단계;를 더 포함하는 것을 특징으로 하는 침입 탐지 방법.
  12. 제 7항 내지 제 11항 중 어느 한 항에 기재된 침입 탐지 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체.
  13. 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는 입력부; 및
    클라이언트 단말장치가 사용하지 않는 포트 중에서 상기 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 장치에 상기 환경 설정 정보를 제공하는 클라이언트 관리부;를 포함하는 것을 특징으로 하는 네트워크 보안 시스템.
  14. 제 13항에 있어서,
    상기 클라이언트 관리부는 상기 침입 탐지 장치로부터 제공받은 공격 패킷으로부터 새로운 형태의 공격 정보를 추출하여, 기존에 알려진 해킹 프로그램의 정보를 담고 있는 시그너처 파일을 갱신한 후 상기 침입 탐지 장치로 제공하는 것을 특 징으로 하는 네트워크 보안 시스템.
  15. 사용자로부터 허니팟의 IP 주소 및 공격을 허용하기 위해 설정된 포트 번호를 포함하는 환경 설정 정보를 입력받는 입력 단계; 및
    클라이언트 단말장치가 사용하지 않는 포트 중에서 상기 환경 설정 정보에 포함되어 있는 포트 번호에 해당하는 포트를 적어도 하나 선택하여 트랩포트를 설정하고, 상기 트랩포트로 유입되는 패킷을 상기 허니팟 시스템으로 전송하는 침입 탐지 장치에 상기 환경 설정 정보를 제공하는 클라이언트 관리 단계;를 포함하는 것을 특징으로 하는 네트워크 보안 방법.
  16. 제 15항에 있어서,
    상기 클라이언트 관리 단계에서는 상기 침입 탐지 장치로부터 제공받은 공격 패킷으로부터 새로운 형태의 공격 정보를 추출하여, 기존에 알려진 해킹 프로그램의 정보를 담고 있는 시그너처 파일을 갱신한 후 상기 침입 탐지 장치로 제공하는 것을 특징으로 하는 네트워크 보안 방법.
KR1020080031757A 2008-04-04 2008-04-04 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법 KR100926456B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080031757A KR100926456B1 (ko) 2008-04-04 2008-04-04 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080031757A KR100926456B1 (ko) 2008-04-04 2008-04-04 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법

Publications (2)

Publication Number Publication Date
KR20090106197A KR20090106197A (ko) 2009-10-08
KR100926456B1 true KR100926456B1 (ko) 2009-11-13

Family

ID=41535839

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080031757A KR100926456B1 (ko) 2008-04-04 2008-04-04 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법

Country Status (1)

Country Link
KR (1) KR100926456B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101446280B1 (ko) 2013-03-26 2014-10-01 건국대학교 산학협력단 인터미디어트 드라이버를 이용한 변종 악성코드 탐지 및 차단 시스템 및 그 방법
KR20190091207A (ko) 2018-01-26 2019-08-05 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템
KR20200073772A (ko) 2018-12-14 2020-06-24 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템
KR20200085535A (ko) 2019-01-07 2020-07-15 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9294489B2 (en) 2011-09-26 2016-03-22 Intellectual Discovery Co., Ltd. Method and apparatus for detecting an intrusion on a cloud computing service
CN105447385B (zh) * 2014-12-08 2018-04-24 哈尔滨安天科技股份有限公司 一种多层次检测的应用型数据库蜜罐实现系统及方法
CN110958250B (zh) * 2019-12-04 2022-06-10 百度在线网络技术(北京)有限公司 一种端口监控方法、装置和电子设备
CN115225297B (zh) * 2021-04-16 2024-05-03 中国移动通信集团江苏有限公司 一种阻断网络入侵的方法及装置
CN114389863B (zh) * 2021-12-28 2024-02-13 绿盟科技集团股份有限公司 一种蜜罐交互的方法、装置、蜜罐网络、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050073702A (ko) * 2004-01-09 2005-07-18 한국과학기술원 네트워크 기반의 보안 솔루션 시스템
KR20050082681A (ko) * 2004-02-20 2005-08-24 한국과학기술원 허니팟 시스템
KR20060083310A (ko) * 2005-01-14 2006-07-20 주식회사 하우리 컴퓨터 해킹차단 장치 및 방법과 그 프로그램을 기록한기록매체

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050073702A (ko) * 2004-01-09 2005-07-18 한국과학기술원 네트워크 기반의 보안 솔루션 시스템
KR20050082681A (ko) * 2004-02-20 2005-08-24 한국과학기술원 허니팟 시스템
KR20060083310A (ko) * 2005-01-14 2006-07-20 주식회사 하우리 컴퓨터 해킹차단 장치 및 방법과 그 프로그램을 기록한기록매체

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
www.honeynet.org

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101446280B1 (ko) 2013-03-26 2014-10-01 건국대학교 산학협력단 인터미디어트 드라이버를 이용한 변종 악성코드 탐지 및 차단 시스템 및 그 방법
KR20190091207A (ko) 2018-01-26 2019-08-05 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템
KR20200073772A (ko) 2018-12-14 2020-06-24 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템
KR20200085535A (ko) 2019-01-07 2020-07-15 지엘디앤아이에프 주식회사 허니팟이 적용된 망 분리 시스템

Also Published As

Publication number Publication date
KR20090106197A (ko) 2009-10-08

Similar Documents

Publication Publication Date Title
KR100926456B1 (ko) 클라이언트 단말장치를 이용한 침입 탐지 장치 및 그방법과 네트워크 보안 시스템 및 네트워크 보안 방법
US9807115B2 (en) System and a method for identifying the presence of malware and ransomware using mini-traps set at network endpoints
JP7299415B2 (ja) セキュリティ脆弱性防御方法およびデバイス
US10587636B1 (en) System and method for bot detection
US11979428B1 (en) Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
US9807114B2 (en) System and a method for identifying the presence of malware using mini-traps set at network endpoints
US8539582B1 (en) Malware containment and security analysis on connection
US8316446B1 (en) Methods and apparatus for blocking unwanted software downloads
US8627476B1 (en) Altering application behavior based on content provider reputation
US9185127B2 (en) Network protection service
EP2013728B1 (en) Methods and apparatus providing computer and network security for polymorphic attacks
US11861008B2 (en) Using browser context in evasive web-based malware detection
US11374946B2 (en) Inline malware detection
KR100973076B1 (ko) 분산 서비스 거부 공격 대응 시스템 및 그 방법
US11636208B2 (en) Generating models for performing inline malware detection
CN111295640A (zh) 使用会话app id和端点进程id相关性的精细粒度防火墙策略实施
CN112583845A (zh) 一种访问检测方法、装置、电子设备和计算机存储介质
US9332023B1 (en) Uploading signatures to gateway level unified threat management devices after endpoint level behavior based detection of zero day threats
KR100769221B1 (ko) 제로데이 공격 대응 시스템 및 방법
KR100722720B1 (ko) 내부 네트워크 사용자 인증과 패킷 제어 기능을 가진 보안게이트웨이 시스템 및 운용 방법
Gao et al. Software-defined firewall: Enabling malware traffic detection and programmable security control
KR20230139984A (ko) 허니팟을 이용한 악성 파일 탐지 방법 및 이를 이용한 시스템
JP2022541250A (ja) インラインマルウェア検出
TWI764618B (zh) 網路資安威脅防護系統及相關的前攝性可疑網域示警系統
US8806211B2 (en) Method and systems for computer security

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121203

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131017

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140930

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161024

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181128

Year of fee payment: 10