KR100520102B1 - 네트워크 유해 트래픽 방역 시스템 및 그 방법 - Google Patents

네트워크 유해 트래픽 방역 시스템 및 그 방법 Download PDF

Info

Publication number
KR100520102B1
KR100520102B1 KR1020040029129A KR20040029129A KR100520102B1 KR 100520102 B1 KR100520102 B1 KR 100520102B1 KR 1020040029129 A KR1020040029129 A KR 1020040029129A KR 20040029129 A KR20040029129 A KR 20040029129A KR 100520102 B1 KR100520102 B1 KR 100520102B1
Authority
KR
South Korea
Prior art keywords
harmful traffic
packet
harmful
traffic
network
Prior art date
Application number
KR1020040029129A
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 KR1020040029129A priority Critical patent/KR100520102B1/ko
Application granted granted Critical
Publication of KR100520102B1 publication Critical patent/KR100520102B1/ko

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C18/00Disintegrating by knives or other cutting or tearing members which chop material into fragments
    • B02C18/06Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives
    • B02C18/16Details
    • B02C18/18Knives; Mountings thereof
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C18/00Disintegrating by knives or other cutting or tearing members which chop material into fragments
    • B02C18/06Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives
    • B02C18/16Details
    • B02C18/22Feed or discharge means
    • B02C18/2216Discharge means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C18/00Disintegrating by knives or other cutting or tearing members which chop material into fragments
    • B02C18/06Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives
    • B02C18/16Details
    • B02C18/24Drives

Landscapes

  • Engineering & Computer Science (AREA)
  • Food Science & Technology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 보안 취약성을 통하여 공격하는 패킷을 원천적으로 차단함으로써, 감염 후 치료의 한계를 가진 종래의 백신 프로그램과는 달리 감염되기 전에 유해 트래픽을 사전 차단하는 네트워크 유해 트래픽 방역 시스템 및 그 방법에 관한 것이다.
본 발명에 따르면, 유해 트래픽 룰을 결정하는 유해 트래픽 룰 서버로부터 유해 트래픽 룰을 수신하는 유해 트래픽 룰 수신부; 네트워크 패킷을 수집하는 패킷 수집부; 상기 유해 트래픽 룰 수신부로부터 유해 트래픽 룰을 수신받아 상기 패킷 수집부에서 수집한 네트워크 로 패킷(Raw Packet)이 유해 트래픽인지 여부를 분석하는 유해 트래픽 분석부; 및 상기 유해 트래픽 분석부에서의 비교 결과 유해 트래픽으로 판단되면, 해당 유해 트래픽 발신자 아이피를 추출한 후, 상기 추출된 아이피들을 대상으로 인터넷을 제한하는 패킷들을 발송하는 패킷 송신부; 를 포함하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템이 제공된다.

Description

네트워크 유해 트래픽 방역 시스템 및 그 방법 {System and method for preventing harmful network traffic}
본 발명은 네트워크 유해 트래픽 방역 시스템 및 그 방법에 관한 것으로서, 특히, 보안 취약성을 통하여 공격하는 패킷을 원천적으로 차단함으로써, 감염 후 치료의 한계를 가진 종래의 백신 프로그램과는 달리 감염되기 전에 유해 트래픽을 사전 차단하는 방역 시스템 및 그 방법에 관한 것이다.
방화벽(Firewall)은 네트워크와 외부 세계 사이의 보호 경계선과 같은 보안 시스템이다. 마이크로소프트사는 윈도우즈 엑스피 버젼부터 해당 컴퓨터와 네트워크를 보호하기 위하여 인터넷 연결 방화벽(ICF : Internet Connection Firewall)을 기본적으로 제공하기 시작하였다.
인터넷 연결 방화벽은 네트워크 또는 소규모 네트워크와 인터넷 사이에 통신되는 정보의 제한 조건을 설정하는데 사용되는 방화벽 소프트웨어로써, 인터넷에 연결된 단일 컴퓨터의 해당 인터넷 연결을 보호한다.
이러한 인터넷 연결 방화벽은 "상태 저장" 방화벽이다. 상태 저장 방화벽이라 함은, 해당 경로를 통과하는 통신의 모든 부분을 모니터링하고, 처리되는 각 메시지의 원본, 대상 주소 및 포트를 검사하는 방화벽을 의미한다. 또한, 아웃바운드(Outbound) 트래픽은 허용하고, 인바운드(Inbound) 트래픽은 차단함으로써, 네트워크 상에서 외부로부터 보이지 않게 하기 때문에 개인용 PC 방화벽에서는 이 기능을 스텔쓰(Stealth) 기능이라고도 한다.
인터넷 연결 방화벽은 원하지 않는 트래픽이 개인 연결로 입력되지 않도록 하기 위하여 인터넷 연결 방화벽 컴퓨터에서 시작된 트래픽을 추적하여 모든 통신 테이블을 보관한다. 그리고, 인터넷의 모든 인바운드 트래픽은 테이블에 있는 항목과 비교된다. 비교 결과, 테이블에 일치하는 항목이 있어서 통신 교환이 사용자의 컴퓨터에서 시작되었음을 입증하는 경우에만 네트워크 연결을 허락한다.
한편, 시작된 통신이 방화벽 허용 목록에서 허용되지 아니하면, 방화벽에 의하여 연결이 끊어진다. 따라서, 원하지 않는 통신을 자동으로 취소하는 포트 스캐닝(Port Scanning)과 같은 일반적인 해킹을 차단하게 된다.
인터넷 연결 방화벽 컴퓨터를 리눅스의 nmap 스캐닝 툴로 스캔하였을 경우, nmap은 모든 스캔에 대해서 인터넷 연결 방화벽 컴퓨터가 모든 스캔 동작에 응답하지 않기 때문에, 타겟 컴퓨터가 네트워크 상에 존재하지 않는 것으로 판단하여, "Host seems down"이라는 메시지를 출력하게 된다. 이와 같이 인터넷 연결 방화벽은 원하지 않는 통신을 자동으로 취소하여 포트 스캐닝과 같은 일반적인 해킹을 차단하게 된다.
한편, 인터넷 연결 방화벽은 컴퓨터가 웹 서비스를 제공하면, 인바운드 트래픽이 차단되기 때문에, 연결이 끊겨 정상적인 웹 서비스를 할 수 없게 된다. 이에 대하여 인터넷 연결 방화벽은 서비스가 사용하는 80번 포트로 인바운드 트래픽을 허용함으로써, 정상적인 웹 서비스를 제공할 수 있다. 이와 같이 인터넷 연결 방화벽은 서비스와 프로토콜을 추가함으로써, 정상적인 서비스를 사용할 수 있다. 또한, 135, 137, 138, 139, 445번 포트를 허용함으로써, 파일/프린터 공유를 할 수 있다.
윈도우즈 엑스피의 인터넷 연결 방화벽 이외에도 개인용 피시 방화벽 소프트웨어는 인터넷 연결 방화벽과 유사한 '스텔쓰 방화벽'과 같은 기능을 제공하고, 또한 외부로부터의 접속을 막을 수 있는 아이피/포트/프로토콜 차단 기능들을 제공한다.
웹 서버, FTP 서버, 텔넷 서버,P2P 프로그램, 원격 제어 프로그램, 메신저 프로그램 등 최근의 인터넷 사용 소프트웨어들은 서비스를 제공하는 서버로 동작하게 된다. 그리고, 이와 같이 서버로 동작하는 소프트웨어들의 수는 점차 증가하고 있으며, 일반 사용자들도 이러한 소프트웨어들을 많이 사용하고 있는 추세이다.
인터넷 연결 방화벽은 원하지 않는 통신을 자동으로 취소하여 포트 스캐닝과 같은 일반적인 해킹을 차단하는 우수한 기능이다. 그런데, 대부분의 사용자들은 서버로 동작하는 위와 같은 소프트웨어들이 정상적으로 동작하지 않기 때문에, 인터넷 연결 방화벽이나 개인용 피시 방화벽의 스텔쓰 기능의 사용을 기피하고 있는 실정이다.
물론, 도 1에 도시된 바와 같이 윈도우즈 엑스피에서는 서버로 동작하는 소프트웨어가 사용하는 포트, 프로토콜, 아이피 등을 지정함으로써, 해당 소프트웨어를 정상적으로 사용할 수 있다. 그리고, 파일/프린터 공유를 사용하기 위하여 공유에 사용되는 포트와 프로토콜을 허용함으로써, 공유 기능을 사용할 수 있다. 그러나, 이렇게 아이피, 포트 및 프로토콜 등을 허용하면 할 수록 보안은 더욱더 취약해지게 되는 문제점이 발생한다.
최근에는 네트워크의 취약성을 이용하여 해킹을 하거나, 웜 바이러스를 배포하는 사례가 증가하고 있고, 새로운 취약성이 속속 발견되고 있는 실정이다. 마이크로소프트사에서는 지속적으로 취약성에 대한 새로운 서비스팩 또는 패치를 제공하고 있지만, 취약성은 계속 발견되고 있다. 그리고, 이러한 취약성 코드는 인터넷을 통하여 손쉽게 구할 수 있는 실정이다.
최근에 마이크로소프트사에서 발표한 ASN.1 취약성 역시 이러한 취약성의 하나이다. 이와 같은 ANS.1 공격은 마이크로소프트 ASN.1 라이브러리(MSASN1.DLL)에서 다중의 정수 오버플로우가 발생하는 것으로, 원격 공격자는 ASN.1으로 인코딩된 커다랑 Length 필드를 통하여 임의의 힙 데이터를 덮어 씀으로써, 임의의 코드를 실행 가능하게 하도록 한다.
인터넷에서 손쉽게 구할 수 있는 취약성 공격 샘플을 실행하면, 도 2와 같은 화면이 뜨면서, 윈도우 오에스를 종료시킨다. 이는 피시를 재부팅시키는 결과만 발생시키지만, ASN.1 취약성 공격 코드를 조금만 수정하면, 해당 피시의 모든 제어가 가능하게 된다. 또한, 최근의 웜은 해당 피시를 공격하는 것이 아니라, 네트워크에 불필요한 트래픽을 과도하게 유발시켜 네트워크를 마비시킴으로써, 내부 사용자들의 인터넷 사용 자체를 못하게 하는 결과를 유발시키는 경우가 흔한다.
이러한 공격에 대하여 인터넷 연결 방화벽을 사용하면, 효과적으로 취약성을 방어할 수 있지만, 사용자의 조정 미숙으로 인하여 효율적이지 못하다는 문제점이 있다. 더군다나, 기업에서는 직원들로 하여금 보안 패치, 백신, 개인용 방화벽 등의 보안 프로그램들을 설치하도록 권고하고 있지만, 설치하지 않는 직원들을 일일이 통제하는 것이 불가능하기 때문에 이와 같은 유해 트래픽에 대처하기가 어려운 것이 현실이다. 또한, 재부팅을 요구하는 보안 패치를 적용하기 힘든 시스템의 경우에는 여러가지 여건상 보안 프로그램이나 보안 패치를 적용하기 힘들다는 문제점이 있다.
상기와 같은 종래 기술의 문제점을 해결하기 위한 본 발명의 목적은 보안 취약성을 통하여 공격하는 패킷을 원천적으로 차단함으로써, 감염 후 치료라는 한계를 가진 종래의 백신 프로그램과는 달리, 감염되기 전에 유해 트래픽을 사전 차단하는 방역 시스템 및 그 방법을 제공하기 위한 것이다.
상기한 목적을 달성하기 위하여 본 발명에 따르면, 유해 트래픽 룰을 결정하는 유해 트래픽 룰 서버로부터 유해 트래픽 룰을 수신하는 유해 트래픽 룰 수신부; 네트워크 로 패킷(Raw Packet)을 수집하는 패킷 수집부; 상기 유해 트래픽 룰 수신부로부터 유해 트래픽 룰을 수신받아 상기 패킷 수집부에서 수집한 네트워크 로 패킷(Raw Packet)이 유해 트래픽인지 여부를 분석하는 유해 트래픽 분석부; 및 상기 유해 트래픽 분석부에서의 비교 결과 유해 트래픽으로 판단되면, 해당 유해 트래픽 패킷을 차단하는 패킷 차단부; 를 포함하고, 상기 유해 트래픽 룰은 로 패킷(Raw Packet)의 컨텐츠(Contents)에 따라 유해 트래픽인지 여부를 결정하는 규칙을 포함하고, 상기 유해 트래픽 분석부는 상기 수집된 로 패킷의 컨텐츠(Contents) 및 상기 유해 트래픽 룰을 참조하여 비교 분석하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템이 제공된다.
또한, 유해 트래픽 룰을 결정하는 유해 트래픽 룰 서버로부터 유해 트래픽 룰을 수신하는 유해 트래픽 룰 수신부; 네트워크 로 패킷(Raw Packet)을 수집하는 패킷 수집부; 상기 유해 트래픽 룰 수신부로부터 유해 트래픽 룰을 수신받아 상기 패킷 수집부에서 수집한 네트워크 로 패킷(Raw Packet)이 유해 트래픽인지 여부를 분석하는 유해 트래픽 분석부; 및 상기 유해 트래픽 분석부에서의 비교 결과 유해 트래픽으로 판단되면, 해당 유해 트래픽 발신자 아이피를 추출한 후, 상기 추출된 아이피를 대상으로 인터넷을 제한하는 패킷들을 발송하는 패킷 송신부; 를 포함하고, 상기 유해 트래픽 룰은 로 패킷(Raw Packet)의 컨텐츠에 따라 유해 트래픽인지 여부를 결정하는 규칙을 포함하고, 상기 유해 트래픽 분석부는 상기 수집된 로 패킷의 컨텐츠 및 상기 유해 트래픽 룰을 참조하여 비교 분석하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템이 제공된다.
보다 더 양호하게는, 상기 패킷 송신부는 TCP 블록킹(Blocking) 기법을 이용하여 인터넷을 제한하는 패킷들을 발송한다.
또한, 상기 패킷 송신부는, 유해 트래픽으로 판명되면, ARP(Address Resolution Protocol) 패킷을 생성하여 전송할 때, ARP 패킷의 내용을 대상 시스템의 아이피는 같고 맥 주소는 다르게 만들어서 전송하여, 대상 시스템에 아이피 충돌 메시지와 함께 대상 시스템의 ARP 테이블을 갱신함으로써, 아이피 충돌을 발생시킨다.
또한, 상기 패킷 송신부는, 유해 트래픽으로 판명되면, 유해 트래픽 발신 아이피 시스템의 ARP 테이블에서 게이트웨이의 맥 주소를 실제 게이트웨이의 맥 주소가 아닌 다른 시스템의 맥 주소로 갱신시킴으로써, 인터넷을 제한하는 패킷들을 발송한다.
또한, 위와 같은 절차에 따른 네트워크 유해 트래픽 방역 방법도 제공된다.
이하, 첨부된 도면을 참조하면서 본 발명의 일 실시예에 따른 네트워크 유해 트래픽 방역 시스템 및 그 방법을 보다 상세하게 설명하기로 한다.
먼저, 본 발명에서 이용하고 있는 백그라운 기술을 간략히 살펴 보도록 한다.
도 3은 본 발명에 이용되는 마이크로소프트사의 윈도우즈 운영 체제의 모드 구분 블록도이다.
도 3을 참조하면, 마이크로소프트사에서 제공하는 윈도우즈 엑스피는 커널 모드(110)와 유저 모드(User Mode, 150)로 나누어지는데, 커널 모드에서는 운영 체제 커널과 각종 디바이스 드라이버가 구동되고, 유저 모드에서는 주로 어플리케이션(Application)이 구동된다. 그리고, 커널 모드에서 동작을 하는 프로그램들은 디바이스 드라이버의 형태로 존재한다.
마이크로소프트사의 윈도우즈 운영 체제의 커널 모드 네트워크 구조는 윈도우즈 소켓(Socket)의 커널 부분인 AFD(afd.sys), NDIS(네트워크 드라이버 인터페이스 명세 : Network Driver Interface Specification) 및 TDI(전송 드라이버 인터페이스 명세 : Transport Driver Interface)로 구성된다.
커널 모드에서 최상위 계층에 존재하는 afd.sys는 윈도우즈 소켓에서 유저 모드의 최하위 계층의 DLL(동적 연결 라이브러리 : Dynamic Link Library)인 msafd.dll과 통신을 하고, 아래 계층의 TDI와 인터페이스를 이루게 된다.
TDI는 프로토콜 스택(Stack)의 상위에 존재하는 커널 모드 인터페이스를 정의한다. NDIS는 NIC 디바이스 드라이버(Network Interface Card Device Driver)들을 위하여 표준 인터페이스를 제공한다.
마이크로소프트사의 윈도우즈 운영 체제의 유저 모드에서 패킷을 모니터링하거나 방화벽을 만드는 방법을 간단하게 설명한다.
후킹(Hooking)이란 후킹하려는 함수의 원본 주소를 저장하고, 자신이 생성한 함수의 주소로 교체한 후, 자신의 함수를 먼저 실행하도록 함으로써, 추후 후킹된 원본 함수를 실행하게 하는 널리 알려진 프로그래밍 기법이다.
방화벽에서 패킷을 차단하는 방법은, 일반적으로 패킷 수신시, 후킹한 원본 함수를 호출하지 않거나, 패킷 수신이 실패하였다는 적절한 상태값으로 원본 함수를 호출함으로써, 또는, 패킷의 내용을 조작함으로써, 정상적인 수신이 이루어지지 않게 하는 방법을 사용한다. 패킷을 허용하는 경우에는 원본 함수를 그대로 호출함으로써, 정상적인 수신이 이루어지는 방법을 사용한다. 이러한 방법에는 유저 모드에서의 방화벽 생성 방법과 커널 모드에서의 방화벽 생성 방법이 있는데, 이를 설명하면, 다음과 같다.
먼저, 유저 모드에서의 방화벽 생성 방법을 살펴 본다.
* LSP(winsock Layered Service Provider) : 이 방법은 마이크로소프트사에서 제공하는 방법으로서, QOS(Quality Of Service), URL 필터링 및 데이터 스트림(Data Stream)의 암호화에 많이 사용되는 마이크로소프트 네트워킹에 존재하는 컴포넌트인 SPI(Service Provider Interface)를 기반으로 한다.
* 윈도우즈 2000 패킷 필터링 인터페이스(Windows 2000 Packet Filtering Interface) : 윈도우즈 2000의 유저 모드에서 응용 프로그램이 아이피 주소 및 포트 정보를 기반으로 패킷을 허용/차단할 수 있도록 필터 디스크립터(Filter Descrypter)를 설치하는 방법을 기반으로 한다.
* Winsock DLL 교체 : 마이크로소프트사의 윈도우즈 운영 체제의 Winsock DLL을 사용자가 만든 DLL로 교체하여 필터링하는 기법을 기반으로 한다.
* 글로벌 함수 후킹(Global Function Hooking) : 커넥트(Connect), 리슨(Listen), 센드(Send), 리시브(Recv), 센드투(Sendto), 리시브 프롬(Recvfrom)과 같은 윈도우즈의 소켓 함수들을 후킹하거나 유저 모드의 어플리케이션이 커널 모드의 드라이버와 통신하기 위하여 사용하는 DeviceIoControl() 함수를 후킹하는 기법을 기반으로 한다.
이어서, 마이크로소프트사의 윈도우즈 운영 체제의 커널 모드에서 패킷을 모니터링하거나 방화벽을 만드는 방법을 간단하게 설명한다.
* NDIS 패킷 드라이버 : NdisRegisterProtocol 함수를 사용하여 패킷을 송/수신할 수 있는 프로토콜 드라이버를 등록하는 기법을 기반으로 패킷 내용을 수집한다. 마이크로소포트사에서 사용자들에게 제공하는 방법으로서, 일반적인 패킷 모니터링 드라이버들이 이 방법을 사용한다. 그러나, 패킷을 차단할 수 있는 방화벽으로는 사용할 수 없다.
* 커널 모드 소켓 필터(Kernel Mode Socket Filter) : 유저 모드에서 윈도우즈 소켓의 최하위 계층의 DLL인 msafd.dll이 커널 모드 윈도우즈 소켓인 afd.sys와 통신하는 모든 I/O를 후킹하는 기법을 기반으로 한다.
* TDI 필터 드라이버 : tcpip.sys 드라이버(\Device\RawIp, \Device\Udp, \Device\Tcp, \Device\Ip, \Device\MULTICAST)에 의하여 생성된 디바이스에 IoAttackDevice() API를 사용하여 필터 드라이버로 적용하는 방법이다. 또는, tcpip.sys의 드라이버 오브젝트(Driver Object)에 존재하는 디스패치 테이블(Dispatch Table)을 바뀌치기하여 모든 I/O를 후킹하는 기법을 기반으로 한다.
* NDIS IM(InterMediate) 드라이버 : 마이크로소프트사에서 사용자들에게 제공하는 방법으로서, TCP/IP와 같은 프로토콜 드라이버와 NIC 드라이버 사이에 끼워 넣어 방화벽, NAT(Network Address Translation) 등을 개발하는 기법이다.
* NDIS 후킹 필터 드라이버 : NDIS 라이브러리의 함수들을 후킹하는 방법으로서, NdisRegisterProtocol, NdisDeregisterProtocol, NdisOpenAdapter, NdisCloseAdapter 및 NdisSend와 같은 함수들을 후킹하거나, 자신의 프로토콜 드라이버를 등록하는 NdisRegisterProtocol 함수를 사용하여 리턴된 NdisProtocolHandle을 기준으로 TCP/IP와 같은 기존의 등록된 프로토콜 드라이버 링크를 찾아 NDIS와 통신하는 프로토콜 드라이버 및 NIC 드라이버의 I/O를 후킹하는 기법을 기반으로 한다.
본 발명에서 제시하는 패킷 수집부 및 패킷 차단부는 상술한 커널 모드 소켓 필터, NDIS 패킷 드라이버, TDI 필터 드라이버, NDIS IM 드라이버 및 NDIS 후킹 필터 드라이버 등에서 구현될 수 있으며, 일반적으로 패킷 차단부는 TDI 필터 드라이버, NDIS IM 드라이버 또는 NDIS 후킹 필터 드라이버에서 구현되고, 패킷 수집부는 NDIS 패킷 드라이버에서 구현된다.
ARP(Address Resolution Protocol)는 주소 결정 프로토콜이라 하며, 아이피 네트워크 상에서 아이피 주소를 물리적 네트워크 주소로 대응시키기 위하여 사용되는 프로토콜이다. 여기서 물리적 네트워크 주소라 함은 이더넷 또는 토큰링의 6 바이트(48 비트) 맥 주소(네트워크 주소)를 의미한다.
예를 들어, 아이피 호스트 A가 아이피 호스트 B에게 아이피 패킷을 전송하고자 할 때, 아이피 호스트 B의 물리적 네트워크 주소를 모르면, ARP 프로토콜을 사용하여 목적지 아이피 주소 B와 브로드캐스팅 물리적 네트워크 주소 FFFFFFFFFFFF를 가지는 ARP 패킷을 네트워크 상에 전송한다. 아이피 호스트 B는 자신의 아이피 주소가 목적지에 있는 ARP 패킷을 수신하면, 자신의 물리적 네트워크 주소를 아이피 호스트 A에게 전송한다.
이와 같은 방식으로 수집된 아이피 주소와 이에 해당하는 물리적 네트워크 주소 정보는 각각의 아이피 호스트의 ARP 캐시라 불리우는 메모리에 테이블 형태로 저장된 후, 다음 패킷 전송시에 재사용한다. ARP와는 역으로, 아이피 호스트가 자신의 물리적 네트워크 주소는 알고 아이피 주소를 모르는 경우에는 서버로부터 아이피 주소를 요청하기 위하여 RARP(Revese ARP)를 사용한다.
1. 네트워크 상에서 원격에 있는 시스템의 인터넷 사용을 제한하는 방법
본 발명에 적용되는 "네트워크 상에서 원격에 있는 시스템의 인터넷 사용을 제한하는 방법"을 설명한다.
이 기술은 로컬 시스템에서 프로그램을 설치하여 인터넷 사용을 제한하는 방법과는 다르다. 로컬 시스템에는 프로그램을 설치하지 않고, 네트워크 상에서 원격에 존재하는 시스템에 특정 패킷을 전송함으로써, 원격에 존재하는 시스템의 인터넷 사용을 제한하는 방법이다.
1-1. TCP 블록킹(Blocking) 기술을 사용하는 방법
TCP 블록킹 기술은 패킷을 모니터링하면서, TCP 헤더의 플래그스(Flags) 필드를 RST(Reset)으로 설정한 패킷을 전송함으로써, 연결을 끊는 널리 알려진 기술이다.
TCP는 연결을 위하여 3 웨이 핸드쉐이크(3-Way Handshake)를 사용한다. 처음에 호스트는 서버와 연결하기 위하여 TCP 헤더의 플래그 필드를 SYN 비트로 설정하는 요청을 전송한다. 그런 다음, 서버는 SYN과 ACT 비트를 설정한 응답을 보낸다. 이어서, 호스트는 ACK 비트만 설정된 응답을 보낸다. 이렇게 3 웨이 핸드쉐이크를 통해서 두 시스템은 연결이 성립된다. 한번, 연결이 성립되면, 데이터 전송은 양방향으로 일어날 수 있다.
한편, 연결이 성립된 후, 일반적인 종료 동작과는 달리, 어플리케이션이나 네트워크 소프트웨어가 강제로 연결을 끊는 비정상적인 상황이 일어날 수 있다. 이러한 상황들을 위해서 TCP 프로토콜은 리셋 기능을 제공한다. 그리고, 연결을 종료하기 위하여, 한쪽에서 RST(리셋) 비트가 설정된 리셋 패킷을 보냄으로써 연결이 초기화되고, 다른 한쪽에서는 즉시 연결을 취소하겠다는 응답을 보낸다. 이 리셋은 동시에 양쪽 방향에서 전송을 중지하고, 모든 자원들은 해제된다.
이와 같이 TCP 연결을 끊기 위한 리셋 패킷을 보내기 위해서는 패킷 수집시, 시스템 A와 서버 S 사이에 이루어지는 통신을 모니터링해야 한다. 이러한 패킷 모니터링은 상술한 바와 같이 패킷 모니터링 기법을 사용해서 모니터링할 수 있다.
실제 TCP 연결을 끊는 절차를 살펴 보면, 랜 상에 있는 시스템 A가 서버 S로 접속을 할 때, 이 연결을 끊기 위한 시스템 B가 존재한다고 가정한다. 만약 랜 상에 있는 시스템 A가 서버 S로 접속하기 위하여 TCP 요청 패킷을 보낸 후, 서버 S로부터 응답을 받기 위하여 대기한다. 이때, 랜 상의 패킷을 모니터링하고 있는 원격에 존재하는 시스템 B는 즉시 시스템 A에게 시스템 B가 마치 서버 S인 것처럼 리셋 패킷을 전송하여 시스템 A와 서버 S 사이의 연결을 끊을 수 있다.
도 4는 시스템 A가 서버 S로 연결을 요청하였지만, 시스템 B에 의하여 TCP 연결이 끊긴 결과를 보여 주는 도면이다. 이와 같은 방법이 가능한 이유는 인터넷 상에 있는 실제 서버 S가 응답하는 시간보다 랜 상에 존재하는 시스템 B가 응답하는 시간이 더 빠르기 때문이다. 이와 같은 기술은 TCP 블록킹이라는 널리 알려진 기술이다.
이 기술은 또한, 시스템 A와 서버 S 사이의 통신 중, TCP 헤더의 플래그스 필드에 ACK와 PSH(Push)가 설정되어 있을 때, 시스템 B에서는 TCP 헤더의 플래그스 필드를 FIN, PSH 및 ACK로 설정하고, 시스템 A의 화면에 보여 줄 데이터를 포함하는 패킷을 전송하고, 이어서, TCP 헤더의 플래그스 필드를 RST로 설정한 패킷을 보냄으로써, 도 5와 같이 시스템 A의 화면에 시스템 B가 원하는 화면을 보여줄 수도 있으며, 웹 브라우저의 전체 내용 또는 일부 프레임 내용, 팝업 창의 내용을 변경할 수도 있으며, 새로운 팝업 창이나 액티브엑스 창을 띄울 수도 있다. 도 5는 시스템 A가 서버 S로 연결을 요청하였지만, 웹 브라우저의 화면이 시스템 B에 의해서 설정된 화면으로 바뀐 모습을 보여 준다.
1-2. ARP 패킷을 이용하여 아이피 충돌 패킷을 전송하는 방법
패킷을 보낼 수 있는 패킷 드라이버를 이용하여 아이피 충돌을 일으킬 수 있는 ARP 패킷을 만들어 아이피 충돌 패킷을 보내는 방법이다. 이 방법은 상기 1-1 항목에 설명된 기술과는 달리, 본 발명에서 최초로 제안하는 기술이다.
이 기술은 ARP 패킷을 생성하여 전송할 때, ARP 패킷의 내용을 대상 시스템의 아이피는 같고 맥 주소는 다르게 만들어서 전송한다. 즉, 마치 다른 시스템에서 대상 피시의 아이피를 사용하는 것과 같은 패킷을 생성하여 전송함으로써, 대상 시스템에 아이피 충돌 메시지와 함께 대상 시스템의 ARP 테이블을 갱신하는 방법이다. 이와 같이 아이피 충돌 패킷을 전송하면, 도 6과 같이 아이피 충돌 메시지 화면이 나타나게 된다.
아래의 [표 1]은 이더넷 헤더와 ARP 헤더 구조를 나타낸 것이다.
ARP를 이용하여 아이피 충돌 패킷을 생성하는 방법은 다음과 같다.
(1) 이더넷 헤더의 목적지 하드웨어 주소를 브로드캐스트 값으로 설정하기 위하여 모두 16진수(Hex)값 '0xff'로 채운다.
(2) 이더넷 헤더의 근원지 하드웨어 주소는 로컬 시스템의 맥 주소(발신자의 맥 주소) 또는 로컬 네트워크에 없는 임의의 맥 주소로 채운다. 로컬 시스템의 맥 주소는 GetAdaptersInfo() API를 통하여 얻을 수 있다.
(3) 이더넷 헤더의 프로토콜 타입은 16진수값 0x0806으로 채운다. 이것은 ARP 프로토콜을 나타낸다.
(4) ARP 헤더의 오퍼레이션은 16진수값 0x02로 채운다. 이것은 ARP 응답을 나타낸다.
(5) ARP 헤더의 근원지 하드웨어 주소는 상기 (2)번 항목에서 채운 것과 로컬 시스템의 맥 주소 또는 로컬 네트워크에 없는 임의의 맥 주소로 동일하게 채운다.
(6) ARP 헤더의 근원지 아이피 주소는 로컬 시스템의 아이피 주소가 아닌 아이피 충돌을 일으킬 목적지 아이피 주소로 채운다.
(7) ARP 헤더의 목적지 하드웨어 주소는 브로드캐스트 값으로 설정하기 위하여 모두 16진수값 0xff로 채운다.
(8) ARP 헤더의 목적지 아이피 주소는 아이피 충돌 패킷을 보낼 대상 아이피 주소로 채운다.
(9) 그 외의 ARP 헤더의 값들은 일반적인 ARP 헤더 형식에 맞는 값을 채워 넣는다.
이 기술은 유해 트래픽에 노출된 컴퓨터 사용자에게 유해 트래픽이 노출되었음을 경고하기 위한 방법으로 활용될 수 있다.
1-3. ARP 패킷을 이용하여 게이트웨이 맥 주소를 변경함으로써 인터넷 사용을 제한하는 방법
패킷을 보낼 수 있는 패킷 드라이버를 통하여 대상 시스템의 ARP 테이블을 갱신함으로써 네트워크 사용을 제한하는 방법이다. 이 방법도 상기 1-1 항목과는 달리, 본 발명에서 최초로 제안하는 기술이다.
이 기술은 대상 시스템의 ARP 테이블에서 게이트웨이의 맥 주소를 실제 게이트웨이의 맥 주소가 아닌 다른 시스템의 맥 주소로 갱신함으로써, 인터넷 사용을 제한하는 방법이다. 이와 같이 원격에서 게이트웨이의 맥 주소를 변경하는 ARP 패킷을 보내게 되면, 도 7과 같이 대상 시스템의 맥 주소는 변경된다.
ARP를 이용한 게이트웨이 맥 주소 변경을 유발시키는 패킷을 생성하는 방법은 다음과 같다.
(1) 이더넷 헤더의 목적지 하드웨어 주소를 브로드캐스트 값이 아닌 대상 시스템의 맥 주소로 채운다. 이것은 대상 시스템의 ARP 테이블만을 갱신하기 위함이다. 대상 시스템의 맥 주소는 Netbios() API를 통하여 얻을 수 있다.
(2) ARP 헤더의 근원지 아이피 주소는 게이트웨이 아이피 주소로 채운다. 이것은 마치 게이트웨이가 대상 시스템에 패킷을 보낸 것처럼 하기 위함이다.
(3) ARP 헤더의 목적지 하드웨어 주소를 브로드캐스트 값이 아닌 대상 시스템의 맥 주소로 채운다. 이것은 대상 시스템의 ARP 테이블만을 갱신하기 위함이다. 대상 시스템의 맥 주소는 Netbios() API를 통하여 얻을 수 있다.
2. 내부 유해 트래픽 룰 저장소
아래의 [표 2]는 내부 차단 룰 저장소의 예를 보여 준다.
[표 2] 내부 유행 트래픽 룰 저장소 구성 내용
1번 룰을 설명하면, TCP 프로토콜일 때, 목적지 포트가 135, 139, 445이고, 외부에서 내부로 들어오며(in), 내부에서 외부로 나가는 방향(out) 모두, 또한 패킷의 TCP 데이터 내용(Contents) 중에서 "SMB"라는 스트링이 존재하고, 바로 다음에 이어서 "73"에 대한 16진수값이 나타난다. 이후의 패킷 내용 중에 "a0 0e 30 0c 06 0a 2b 06 01 04 01 82 37 02 02 0a"의 16진수값이 나타나며, 이어서 "a1" 16진수값이 나타나고, 1 바이트 다음에 "23 03 03 01 07"에 대한 16진수값이 나타난다. 그리고, 이후의 패킷 내용 중에 "NTLMSSP"라는 스트링이 존재한다면, 취약성 이름은 ASN.1 Attack[MS04-007 ASN.1 Could Allow Code Execution]이라는 것을 나타내며, 룰과 일치하는 패킷이라면 차단(Drop)하라는 것을 보여준다.
2번 룰은 ICMP 프로토콜일 때, 외부에서 내부로 들어오고(in), 내부에서 외부로 나가는 방향(out) 모두, ICMP 헤더의 타입 필드가 8(8이라 함은 Echo 리퀘스트를 의미)이고, ICMP 코드 필드가 0이며, ICMP 데이터 크기가 64 바이트이고, 패킷의 ICMP 데이터 내용 중에 "aa aa aa aa aa aa aa aa"의 16진수값이 존재하면, 취약성 이름은 Worm.Welchia라는 것을 나타낸다. 룰과 일치하는 패킷이라면 차단하라는 것을 보여준다.
3. 네트워크 유해 트래픽 방역 시스템의 구조
도 8은 본 발명의 일 실시예에 따른 네트워크 유해 트래픽 방역 시스템의 전체 구조를 보여주는 구성도로서, 이를 상세히 설명하면, 다음과 같다.
먼저, 유해 트래픽 룰 수신부(204)는 유해 트래픽 룰 서버(208)로부터 유해 트래픽 룰을 수신한다. 이어서, 수신된 유해 트래픽 룰을 내부 유해 트래픽 룰 저장소(207)에 저장한다.
패킷 수집부(205)는 수집된 패킷을 유해 트래픽 분석부(206)로 전송한다. 상기 유해 트래픽 분석부(206)는 상기 패킷 수집부(205)로부터 전송받은 패킷을 상기 내부 유해 트래픽 룰 저장소(207)에 저장된 유해 트래픽 룰과 비교한다.
비교 결과, 유해 트래픽 룰과 같은 룰이 존재한다면, 상기 유해 트래픽 분석부(206)는 유해 트래픽을 보낸 발신자 아이피를 내부 유행 트래픽 발신지 아이피 목록 저장소(210)에 저장한다. 그리고, 패킷 차단부(211)는 해당 유해 트래픽 패킷을 차단한다.
패킷 송신부(209)는 상기 내부 유해 트래픽 발신자 아이피 목록 저장소(210)에 저장되어 있는 아이피를 대상으로 인터넷을 제한하기 위한 패킷을 전송한다.
한편, 일부 웜 바이러스(가령 AgoBot 웜 바이러스)는 윈도우즈 RPC DCOM 취약점과 관리 목적 공유 폴더에 대한 패스워드 추측 공격을 통하여 전파된다. 윈도우즈 RPC DCOM 취약점 공격은 RPC 인터페이스의 버퍼 오버런으로 인한 코드를 실행하고, 관리 목적 공유 폴더에 대한 패스워드 추측 공격을 시도하여 admin$, print$, c$, d$ 같은 관리 목적 공유 폴더에 자신을 복제해 넣는다. 그리고, RPC 원격 실행을 통하여 바이러스를 실행시킨다. 또한, 넷스카이(NETSKY)와 같은 웜 바이러스는 메일, 네트워크 공유, P2P 응용 프로그램을 통하여 전파된다.
위와 같이 보안 취약점을 이용하여 유해 트래픽을 발생시키는 아이피를 대상으로 보안 소프트웨어나 보안 패치를 설치하여 유해 트래픽을 발생을 중지시키는 것도 본 발명에 포함된다. 또한, 위와 같은 보안 취약성을 이용하여 유해 트래픽을 발생시키는 아이피를 대상으로 에이전트를 설치하고, 이 에이전트가 서버에 접속하여 보안 소프트웨어 또는 보안 패치를 설치함으로써, 유해 트래픽의 발생을 중지시키는 기술도 본 발명에 포함된다.
3-1. 패킷 수집부(205)
상기 패킷 수집부(205)는 상술한 패킷을 수집하기 위하여 일반적으로 널리 사용되는 유저-모드에서의 네트워크 패킷 모니터링을 하는 방법 또는 커널-모드에서의 네트워크 패킷 모니터링을 하는 방법을 사용하여 패킷을 수집한다.
윈도우 NDIS에서는 실제 로(Raw) 패킷이 전달되는 것이 아니라, NDIS_PACKET 형식을 따른다. 따라서, NDIS_PACKET으로부터 실제 Raw 패킷을 얻어와야 하는데, 그 과정은 NdisQueryPacket() API를 통해서, NDIS_PACKET으로부터 NDIS_BUFFER를 얻어오고, 이어서 NDIS_BUFFER로부터 NdisQueryBuffer() API, NdisGetNextBuffer() API를 통해서 실제 Raw 패킷을 얻어온다. 상기 패킷 수집부(205)는 이렇게 얻은 Raw 패킷을 상기 유해 트래픽 분석부(206)로 전송한다.
3-2. 유해 트래픽 분석부(206)
도 9는 유해 트래픽 분석부(206)에서의 과정을 나타낸 흐름도이다.
먼저, 스텝 S901에서, 상기 유해 트래픽 분석부(206)는 상기 패킷 수집부(205)로부터 Raw 패킷을 전송받는다. 그리고, 스텝 S903에서, 상기 전송받은 Raw 패킷과 상기 내부 유해 트래픽 룰 저장소(207)에 저장된 유해 트래픽 룰을 서로 비교한다.
상기 스텝 S903에서의 비교 결과, 상기 Raw 패킷이 상기 내부 유행 트래픽 룰 저장소(207)에 저장된 유해 트래픽 룰과 일치하면, 스텝 S905에서, Raw 패킷으로부터 패킷의 발신자 아이피를 추출하고, 스텝 S907에서, 추출한 발신자 아이피를 상기 내부 유해 트래픽 발신자 아이피 목록 저장소(210)에 저장함과 동시에 상기 패킷 송신부(209)에 상기 내부 유해 트래픽 발신자 아이피 목록 저장소(210)가 갱신되었다는 것을 알리며, 스텝 S909에서, 해당 유해 트래픽 패킷을 차단한다.
이때, 패킷을 차단하는 방법은 상술한 바와 같이, 후킹한 원본 함수를 호출하지 않거나, 패킷 송신 또는 수신이 실패하였다는 적절한 상태값으로 원본 함수를 호출하거나, 또는 패킷의 내용을 조작함으로써, 정상적인 송신 또는 수신이 이루어지지 않게 한다. 만약, 일치하는 정보가 없다면, 패킷을 허용하기 위하여 원본 함수를 그대로 호출함으로써, 정상적인 송신 또는 수신이 이루어지게 한다.
또한, 보안 패치를 위한 아이피(기설정된 아이피)에 대해서는 인터넷을 차단하지 않게끔 함으로써, 원활한 보안 패치가 이루어지게 할 수도 있다. 즉, 유해 트래픽을 발송하는 시스템일지라도, 인터넷의 사용을 보장해야하는 아이피(기설정된 아이피)에 대해서는 로그나 경고만을 남기고 인터넷을 차단하지 않게끔 함으로써, 유연하게 대처할 수 있도록 한다.
한편, 유해 트래픽인지를 판별하는 유해 트래픽 룰은 취약성을 공격하는 코드 또는 프로토콜 취약성에 대한 Raw 패킷 정보를 통하여 판별할 수 있기 때문에, 감염 후 차단이라는 한계를 가진 일반적인 백신과는 달리 사전 차단이라는 매우 뛰어난 효과를 보이게 된다.
3-3. 패킷 송신부(209)
상기 패킷 송신부(209)는 상기 유해 트래픽 분석부(206)로부터 신호를 받거나 또는 주기적으로 상기 내부 유해 트래픽 발신자 아이피 목록 저장소(210)에 있는 발신자 아이피를 대상으로 대상 피시의 인터넷 사용을 제한할 수 있는 패킷들을 생성하여 전송한다.
이와 같은 패킷들의 생성은 상술한 바와 같이 대상 시스템에 대하여 TCP 블록킹 기법을 이용한 리셋 패킷 전송, ARP 패킷을 이용한 아이피 충돌 패킷 전송, ARP 패킷을 이용한 게이트웨이 맥 주소 변경 등을 통하여 대상 시스템의 인터넷 사용을 제한한다.
또한, TCP 블록킹 기법을 이용하여 리셋 패킷 전송을 수행할 때에는, 리셋 패킷 전송 전에 HTTP 데이터 전송을 포함시킴으로써, 특정 사이트의 유도, 보안 패치, 보안 프로그램 설치 또는 패치 권고 등을 부가적으로 할 수도 있다.
그리고, ARP 패킷을 이용한 아이피 충돌 패킷 전송, ARP 패킷을 이용한 게이트웨이 맥 주소 변경 기술을 사용하기 전에는 넷 센드(net send)와 같이 콘솔 프로그램에서 사용하는 것과 같은 NetMessageXxxx() 계열의 API를 사용하여 메신저 서비스를 통한 경고 메시지를 전송할 수도 있다. 이를 보여 주는 것이 도 10이다.
한편, 유해 트래픽으로 판단되면, 해당 유해 트래픽을 차단하는 것으로 본 발명은 설명하였지만, 이러한 유해 트래픽 차단은 선택적인 사항으로서 필요한 경우에는 차단을 하지 않게끔 설정할 수도 있다.
위에서 양호한 실시예에 근거하여 이 발명을 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이다. 이 발명이 속하는 분야의 숙련자에게는 이 발명의 기술 사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호 범위는 첨부된 청구 범위에 의해서 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.
이상과 같이 본 발명에 의하면, 보안 취약성을 통하여 공격하는 패킷을 원천적으로 차단함으로써, 감염 후 치료의 한계를 가진 종래의 백신 프로그램과는 달리 감염되기 전의 사전 차단이라는 효과가 있으며, 취약성 공격을 원천적으로 차단함으로써, 현실적으로 재부팅을 요하는 패치를 적용하기 힘든 무결성 서버와 같은 시스템 보호에 훌륭한 효과가 있다.
또한, 유해 트래픽을 전송하는 대상 시스템의 인터넷 사용을 제한하여, 보안 프로그램의 설치나 오에스 패치를 유도함으로써, 유해 트래픽 차단과 내부 트래픽의 감소 효과가 있다.
도 1은 윈도우즈 엑스피에서 인터넷 연결 방화벽 허용 포트를 설정하는 모습을 보여주는 도면이고,
도 2는 윈도우즈 엑스피에서 ASN.1 공격을 받은 후의 메시지를 보여주는 도면이고,
도 3은 본 발명에 이용되는 마이크로소프트사의 윈도우즈 운영 체제의 모드 구분 블록도이고,
도 4는 RST 패킷에 의하여 인터넷이 차단된 모습을 보여주는 도면이고,
도 5는 데이터를 전송한 후 RST 패킷에 의하여 차단된 모습을 보여주는 도면이고,
도 6은 윈도우즈 2000에서 아이피 충돌이 일어난 경우 이를 컴퓨터 화면상에 보여주는 도면이고,
도 7은 윈도우즈 2000에서 게이트웨이 변경 ARP 패킷을 받기 전과 받은 후의 화면을 보여주는 도면이고,
도 8은 본 발명의 일 실시예에 따른 네트워크 유해 트래픽 방역 시스템의 전체 구성도이고,
도 9는 도 8에 도시된 유해 트래픽 분석부에서의 과정을 보여주는 흐름도이고,
도 10은 메신저 서비스를 이용하여 대상 시스템에 대해 인터넷 사용 제한 메시지를 보내는 화면을 보여주는 도면이다.

Claims (20)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 유해 트래픽 룰을 결정하는 유해 트래픽 룰 서버로부터 유해 트래픽 룰을 수신하는 유해 트래픽 룰 수신부와, 네트워크 로 패킷(Raw Packet)을 수집하는 패킷 수집부와, 상기 유해 트래픽 룰 수신부로부터 로 패킷(Raw Packet)의 컨텐츠(Contents)에 따라 유해 트래픽인지 여부를 결정하는 규칙을 포함하는 유해 트래픽 룰을 수신받되 상기 패킷 수집부에서 수집한 네트워크 로 패킷(Raw Packet)의 컨텐츠 및 상기 유해 트래픽 룰을 참조하여 유해 트래픽인지 여부를 비교 분석하는 유해 트래픽 분석부와, 상기 유해 트래픽 분석부에서의 비교 결과 유해 트래픽으로 판단되면 해당 유해 트래픽 발신자 아이피를 추출한 후 상기 추출된 아이피를 대상으로 인터넷을 제한하는 패킷들을 발송하는 패킷 송신부를 포함하여 이루어지는 네트워크 유해 트래픽 방역 시스템에 있어서,
    상기 패킷 송신부는,
    유해 트래픽으로 판명되면, ARP(Address Resolution Protocol) 패킷을 생성하여 전송할 때, ARP 패킷의 내용을 대상 시스템의 아이피는 같고 맥 주소(MAC Address)는 다르게 만들어서 전송하여, 대상 시스템에 아이피 충돌 메시지와 함께 대상 시스템의 ARP 테이블을 갱신함으로써, 아이피 충돌을 발생시키는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템.
  7. 제 6 항에 있어서,
    상기 패킷 송신부는,
    유해 트래픽으로 판명되면, 유해 트래픽 발신 아이피 시스템의 ARP 테이블에서 게이트웨이의 맥 주소를 실제 게이트웨이의 맥 주소가 아닌 다른 시스템의 맥 주소로 갱신시킴으로써, 인터넷을 제한하는 패킷들을 발송하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템.
  8. 제 6 항에 있어서,
    상기 패킷 송신부는,
    유해 트래픽으로 판명되더라도, 기설정된 인터넷 사용 제한 제외 아이피에 대해서는 인터넷을 제한하는 패킷들을 발송하지 아니하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 시스템.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 유해 트래픽 룰을 결정하는 유해 트래픽 룰 서버로부터 유해 트래픽 룰을 수신하는 제 1 단계와, 네트워크 로 패킷(Raw Packet)을 수집하는 제 2 단계와, 상기 제 1 단계에서 로 패킷(Raw Packet)의 컨텐츠(Contents)에 따라 유해 트래픽인지 여부를 결정하는 규칙을 포함하는 유해 트래픽 룰을 수신받되 상기 제 2 단계에서 수집한 네트워크 로 패킷(Raw Packet)의 컨텐츠 및 상기 유해 트래픽 룰을 참조하여 유해 트래픽인지 여부를 비교 분석하는 제 3 단계와, 상기 제 3 단계에서의 비교 결과 유해 트래픽으로 판단되면 해당 유해 트래픽 발신자 아이피를 추출한 후 상기 추출된 아이피를 대상으로 인터넷을 제한하는 패킷들을 발송하는 제 4 단계를 포함하여 이루어지는 네트워크 유해 트래픽 방역 방법에 있어서,
    상기 제 4 단계는, 유해 트래픽으로 판명되면, ARP(Address Resolution Protocol) 패킷을 생성하여 전송할 때, ARP 패킷의 내용을 대상 시스템의 아이피는 같고 맥 주소는 다르게 만들어서 전송하여, 대상 시스템에 아이피 충돌 메시지와 함께 대상 시스템의 ARP 테이블을 갱신함으로써, 아이피 충돌을 발생시키는 것을 특징으로 하는 네트워크 유해 트래픽 방역 방법.
  16. 제 15 항에 있어서,
    상기 제 4 단계는, 유해 트래픽으로 판명되면, 유해 트래픽 발신 아이피 시스템의 ARP 테이블에서 게이트웨이의 맥 주소를 실제 게이트웨이의 맥 주소가 아닌 다른 시스템의 맥 주소로 갱신시킴으로써, 인터넷을 제한하는 패킷들을 발송하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 방법.
  17. 제 16 항에 있어서,
    상기 제 4 단계는,
    이더넷 헤더의 목적지 하드웨어 주소를 브로드캐스트 값이 아닌 해당 유해 트래픽 발송 아이피 시스템의 맥 주소로 채우는 서브 단계;
    상기 ARP 헤더의 근원지 아이피 주소를 게이트웨이 아이피 주소로 채우는 서브 단계; 및
    상기 ARP 헤더의 목적지 하드웨어 주소를 브로드캐스트 값이 아닌 해당 유해 트래픽 발송 아이피 시스템의 맥 주소로 채우는 서브 단계;
    를 포함하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 방법.
  18. 제 15 항에 있어서,
    상기 제 4 단계는,
    유해 트래픽으로 판명되더라도, 기설정된 인터넷 사용 제한 제외 아이피에 대해서는 인터넷을 제한하는 패킷들을 발송하지 아니하는 것을 특징으로 하는 네트워크 유해 트래픽 방역 방법.
  19. 삭제
  20. 삭제
KR1020040029129A 2004-04-27 2004-04-27 네트워크 유해 트래픽 방역 시스템 및 그 방법 KR100520102B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040029129A KR100520102B1 (ko) 2004-04-27 2004-04-27 네트워크 유해 트래픽 방역 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040029129A KR100520102B1 (ko) 2004-04-27 2004-04-27 네트워크 유해 트래픽 방역 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR100520102B1 true KR100520102B1 (ko) 2005-10-11

Family

ID=37305292

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040029129A KR100520102B1 (ko) 2004-04-27 2004-04-27 네트워크 유해 트래픽 방역 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR100520102B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010068060A2 (ko) * 2008-12-12 2010-06-17 스콥정보통신 주식회사 컴퓨터 제어 시스템 및 방법, 프로그램 배포 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010068060A2 (ko) * 2008-12-12 2010-06-17 스콥정보통신 주식회사 컴퓨터 제어 시스템 및 방법, 프로그램 배포 방법
WO2010068060A3 (ko) * 2008-12-12 2010-08-26 스콥정보통신 주식회사 컴퓨터 제어 시스템 및 방법, 프로그램 배포 방법

Similar Documents

Publication Publication Date Title
US10601780B2 (en) Internet isolation for avoiding internet security threats
US6513122B1 (en) Secure gateway for analyzing textual content to identify a harmful impact on computer systems with known vulnerabilities
US7474655B2 (en) Restricting communication service
Kargl et al. Protecting web servers from distributed denial of service attacks
CA2672528C (en) Method and apparatus for detecting port scans with fake source address
US7231665B1 (en) Prevention of operating system identification through fingerprinting techniques
CN101589595B (zh) 用于潜在被污染端系统的牵制机制
CN113612784B (zh) 使用蜜罐的动态服务处理
US20050060535A1 (en) Methods and apparatus for monitoring local network traffic on local network segments and resolving detected security and network management problems occurring on those segments
US20180191571A1 (en) Network bridge device with automatic self-configuration and method thereof
US20080151887A1 (en) Method and Apparatus For Inter-Layer Binding Inspection
AU2820295A (en) Security system for interconnected computer networks
JPH11167537A (ja) ファイアウォールサービス提供方法
Mohammed et al. Honeypots and Routers: Collecting internet attacks
US7587759B1 (en) Intrusion prevention for active networked applications
KR100468374B1 (ko) 네트워크 유해 트래픽 제어 장치 및 방법
KR100539760B1 (ko) 인터넷 접근 제어를 통한 에이전트 설치 유도 시스템 및그 방법
KR100520102B1 (ko) 네트워크 유해 트래픽 방역 시스템 및 그 방법
JP2003264595A (ja) パケット中継装置、パケット中継システムおよびオトリ誘導システム
Ali A study of technology in firewall system
JP2006501527A (ja) ネットワーク・サービスプロバイダおよびオペレータのサーバシステムに対する攻撃の確認と防御のための方法、データキャリア、コンピュータシステム、およびコンピュータプログラム
Sadhasivam et al. Hocs: Host oscommunication service layer
RU2648949C1 (ru) Способ защиты вычислительной сети от несанкционированного сканирования и блокирования сетевых служб
JP2011055299A (ja) サービス保護方式
Hsu et al. CTCP: A transparent centralized TCP/IP architecture for network security

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J121 Written withdrawal of request for trial
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120816

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130731

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140814

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151029

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee