KR101429120B1 - 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법 - Google Patents

서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법 Download PDF

Info

Publication number
KR101429120B1
KR101429120B1 KR1020120130408A KR20120130408A KR101429120B1 KR 101429120 B1 KR101429120 B1 KR 101429120B1 KR 1020120130408 A KR1020120130408 A KR 1020120130408A KR 20120130408 A KR20120130408 A KR 20120130408A KR 101429120 B1 KR101429120 B1 KR 101429120B1
Authority
KR
South Korea
Prior art keywords
dns
packet
name
response packet
subdomain
Prior art date
Application number
KR1020120130408A
Other languages
English (en)
Other versions
KR20140063255A (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 KR1020120130408A priority Critical patent/KR101429120B1/ko
Publication of KR20140063255A publication Critical patent/KR20140063255A/ko
Application granted granted Critical
Publication of KR101429120B1 publication Critical patent/KR101429120B1/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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/3015Name registration, generation or assignment
    • H04L61/3025Domain name generation or assignment
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 보안 시스템 및 그것의 동작 방법에 관한 것이다. 본 발명의 실시 예에 따른 보안 시스템의 동작 방법은 호스트 컴퓨터들과 인터넷 망 사이에서 통신되는 패킷들 각각이 DNS 응답 패킷인지 여부를 판별하는 단계, DNS 응답 패킷에 포함된 서브 도메인 네임을 추출하는 단계, 그리고 추출된 서브 도메인 네임이 내부 저장된 상위 도메인 네임에 대응할 때 서브 도메인 네임을 수집하는 단계를 포함한다.

Description

서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법{SECURITY SYSTEM COLLECTING SUB-DOMAIN NAME AND OPERATING METHOD THEREOF}
본 발명은 전자 통신에 대한 것으로서, 좀 더 구체적으로는 보안 시스템 및 그것의 동작 방법에 관한 것이다.
인터넷 상에서 도메인 네임(Domain Name)을 관리하는 시스템으로서 도메인 네임 시스템(DNS: Domain Name System)이 이용되고 있다. 이를 이용하면, 도메인 네임과 해당 서버 컴퓨터의 아이피 주소(Internet Protocol Address)를 맵핑(mapping)시켜 DNS 서버(server)에 등록한 상태에서, 호스트 컴퓨터(예를 들면, 클라이언트 컴퓨터)의 사용자는 아이피 주소를 입력할 필요 없이 도메인 네임을 입력하여 도메인 네임에 대응하는 아이피 주소가 무엇인지를 DNS 서버에 먼저 요청하고, DNS 서버로부터 해당 아이피 주소를 제공받아, 아이피 주소가 가리키는 서버 컴퓨터에 접속할 수 있게 된다. 도메인 네임 시스템을 이용함으로써, 기억하기 힘든 아이피 주소 대신에 도메인 네임을 입력함으로써 해당 서버 컴퓨터에 접속할 수 있다.
도메인 네임의 종류로서, 상위(upper) 도메인 네임(또는, 와일드 카드 도메인 네임)과 서브 도메인 네임이 존재한다. 하나의 상위 도메인 네임(예를 들면, *.secui.com)에는 복수의 서브 도메인 네임들(예를 들면, secui.com, cafe.secui.com, mobile.cafe.secui.com 등)이 대응한다. 상위 도메인 네임은 복수의 서브 도메인 네임들에 대응하는 개념적인 도메인 네임을 의미하는 것으로서 해당 웹 페이지를 가지지 않을 수 있다. 서브 도메인 네임들 각각은 실제 사용되는 도메인 네임을 의미하는 것으로서 해당 웹 페이지를 가진다. 도메인 네임을 수집하고자 할 때, 각 상위 도메인 네임에 대응하는 되도록 많은 서브 도메인들을 수집하는 것이 요구된다.
한편, 하나의 서브 도메인 네임에는 복수의 아이피 주소들이 대응할 수 있다. 예를 들면, 하나의 서브 도메인 네임에 대응하는 웹 사이트를 각각 제공하는 복수의 서버 컴퓨터들이 운용될 수 있다. 아이피 주소를 수집하고자 할 때, 하나의 서브 도메인 네임에 대응하는 되도록 많은 아이피 주소들을 수집하는 것이 요구된다.
본 발명의 목적은 상위 도메인 네임에 대응하는 서브 도메인 네임들을 효율적으로 수집하는 보안 시스템 및 그것의 동작 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 보안 시스템의 동작 방법은 복수의 호스트 컴퓨터들과 인터넷 망 사이에서 통신되는 패킷들 각각이 DNS 서버로부터 상기 인터넷 망을 통해 전송되는 DNS 응답 패킷인지 여부를 판별하는 단계; 상기 DNS 응답 패킷에 포함된 서브 도메인 네임을 추출하는 단계; 및 상기 추출된 서브 도메인 네임이 내부 저장된 상위 도메인 네임에 대응할 때 상기 서브 도메인 네임을 수집하는 단계를 포함한다.
상기 DNS 응답 패킷은 상기 복수의 호스트 컴퓨터들 중 어느 하나에서 발생되는 DNS 쿼리 패킷에 따라, 상기 DNS 서버로부터 상기 복수의 호스트 컴퓨터들 중 어느 하나에 제공될 수 있다. 이때, 상기 DNS 쿼리 패킷은 상기 서브 도메인 네임에 대응하는 아이피 주소를 요청할 때 발생된다.
상기 DNS 응답 패킷은 상기 서브 도메인 네임 및 상기 아이피 주소 정보를 포함할 수 있다. 이때, 상기 동작 방법은 상기 서브 도메인 네임이 수집될 때 상기 아이피 주소를 함께 수집하는 단계를 더 포함할 수 있다.
실시 예로서, 상기 판별하는 단계는 상기 패킷들 각각의 헤더에 기반하여 수행될 수 있다.
실시 예로서, 상기 동작 방법은 상기 복수의 호스트 컴퓨터들로부터 상기 인터넷 망을 통해 상기 DNS 서버에 전송되는 복수의 DNS 쿼리 패킷들을 검출하고, 상기 복수의 DNS 쿼리 패킷들에 대한 정보를 저장하는 단계를 더 포함할 수 있다. 상기 추출하는 단계는 상기 복수의 DNS 쿼리 패킷들 중 상기 DNS 응답 패킷에 대응하는 DNS 쿼리 패킷이 존재하는지에 따라 상기 DNS 응답 패킷으로부터 상기 서브 도메인 네임을 추출하는 단계를 포함할 수 있다.
본 발명의 다른 일면은 보안 시스템에 관한 것이다. 본 발명의 실시 예에 따른 보안 시스템은 인터넷 망에 연결된 복수의 호스트 컴퓨터들을 관리하는 보안 유닛; 상기 복수의 호스트 컴퓨터들과 상기 인터넷 망 사이에서 통신되는 패킷들(packets) 각각이 DNS(Domain Named Server) 서버로부터 상기 인터넷 망을 통해 전송되는 DNS 응답 패킷인지 여부를 판별하고, 상기 DNS 응답 패킷에 포함된 서브 도메인 네임을 추출하도록 구성되는 스니핑 유닛; 및 상위 도메인 네임을 저장하는 저장 유닛을 포함한다. 상기 스니핑 유닛은 상기 추출된 서브 도메인 네임이 상기 상위 도메인 네임에 대응하는지 여부에 따라 상기 서브 도메인 네임을 수집하도록 구성된다.
본 발명의 실시 예에 따르면, 상위 도메인 네임에 대응하는 서브 도메인 네임들을 효율적으로 수집하는 보안 시스템 및 그것의 동작 방법이 제공된다.
도 1은 본 발명의 실시 예에 따른 보안 시스템을 포함하는 네트워크를 보여주는 블록도이다.
도 2는 본 발명의 실시 예에 따른 보안 시스템의 동작 방법을 보여주는 순서도이다.
도 3은 DNS 응답 패킷의 헤더의 데이터 포맷을 예시적으로 보여주는 도면이다.
도 4는 본 발명의 다른 실시 예에 따른 보안 시스템의 동작 방법을 보여주는 순서도이다.
도 5는 저장 유닛에 저장된 테이블을 보여주는 도면이다.
도 6은 본 발명의 또 다른 실시 예에 따른 보안 시스템의 동작 방법을 보여주는 순서도이다.
도 7은 DNS 쿼리 패킷을 획득하는 방법을 보여주는 순서도이다.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명의 실시 예에 따른 보안 시스템(110)을 포함하는 네트워크(100)를 보여주는 블록도이다.
도 1을 참조하면, 네트워크(100)는 복수의 호스트 컴퓨터들(PC1~PCk), 보안 시스템(110), 인터넷 망(120), DNS(Domain Name System) 서버(130) 및 복수의 서버 컴퓨터들(141~14n)을 포함한다.
복수의 호스트 컴퓨터들(PC1~PCk)은 보안 시스템(110)을 통해 인터넷 망(120)에 연결된다. 복수의 호스트 컴퓨터들(PC1~PCk)은 사용자로부터 서브 도메인 네임을 입력받고, 서브 도메인 네임에 대응하는 아이피 주소를 DNS 서버(130)에 요청하고, DNS 서버(130)로부터 해당 아이피 주소를 제공받고, 복수의 서버 컴퓨터들(141~14n) 중 제공받은 아이피 주소에 대응하는 서버 컴퓨터에 접속할 수 있다.
먼저, 복수의 호스트 컴퓨터들(PC1~PCk) 중 어느 하나, 예를 들면 제 1 호스트 컴퓨터(PC1)는 서브 도메인 네임에 대응하는 아이피 주소(Internet Protocol Address)를 요청하는 DNS 쿼리 패킷을 DNS 서버(130)에 전송한다. 그리고, 제 1 호스트 컴퓨터(PC1)는 DNS 서버(130)로부터 제공된 DNS 응답 패킷을 수신하고 DNS 응답 패킷에 포함된 아이피 주소를 추출한다. 추출된 아이피 주소는 복수의 서버 컴퓨터들(141~14n) 중 어느 하나를 가리킨다. 제 1 호스트 컴퓨터(PC1)는, 이후에 DNS 응답 패킷으로부터 얻어진 아이피 주소로서 정의된 목적지 아이피 주소 및 제 1 호스트 컴퓨터(PC1)에 대응하는 아이피 주소로서 정의된 출발지 아이피 주소를 포함하는 노멀 패킷을 인터넷 망(120)을 통해 전송하고, 제 1 호스트 컴퓨터(PC1)에 대응하는 아이피 주소로서 정의된 목적지 아이피 주소 및 DNS 응답 패킷으로부터 얻어진 아이피 주소로서 정의된 출발지 아이피 주소를 포함하는 노멀 패킷을 수신함으로써 해당 서버 컴퓨터에 접속할 것이다.
보안 시스템(110)은 복수의 호스트 컴퓨터들(PC1~PCk)을 관리하도록 구성된다. 보안 시스템(110)은 보안 유닛(111), 스니핑 유닛(112) 및 저장 유닛(113)을 포함한다.
보안 유닛(111)은 기 설정된 보안 정책들에 따라 복수의 호스트 컴퓨터들(PC1~PCk)에 송수신되는 패킷들을 관리하도록 구성될 것이다. 실시 예로서, 보안 유닛(111)은 인터넷 망(120)을 통해 복수의 호스트 컴퓨터들(PC1~PCk)로 전송되는 패킷들을 모니터링하고, 기 설정된 보안 정책들에 따라 패킷들 중 전부 또는 일부를 차단하도록 구성된다. 또한, 보안 유닛(111)은 복수의 호스트 컴퓨터들(PC1~PCk)로부터 인터넷 망(120)으로 전송되는 패킷들을 모니터링하고, 기 설정된 보안 정책들에 따라 패킷들 중 전부 또는 일부를 차단하도록 구성된다.
보안 유닛(111)은 저장 유닛(113)에 저장된 테이블(도 4의 T 참조)의 도메인 네임 정보에 기반하여 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷들을 관리한다. 예를 들면, 보안 유닛(111)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷의 서브 도메인 네임이 테이블 내의 서브 도메인 네임과 일치할 때 해당 패킷을 차단하도록 구성된다. 일치하지 않을 때, 해당 패킷은 허용될 것이다.
스니핑 유닛(112)은 호스트 컴퓨터들(PC1~PCk)과 DNS 서버(130) 사이에서 통신되는 패킷들에 기반하여 상위 도메인 네임에 대응하는 서브 도메인 네임들을 수집하도록 구성된다. 즉, 스니핑 유닛(112)은 해당 패킷이 DNS 서버(130)로부터 인터넷 망(120)을 통해 복수의 호스트 컴퓨터들(PC1~PCk)에 전송되는 DNS 응답 패킷인지 여부를 판별하고, DNS 응답 패킷으로부터 서브 도메인 네임을 추출하도록 구성된다.
스니핑 유닛(112)은 해당 서브 도메인 네임이 상위 도메인 네임에 대응하는지 판별한다. 상위 도메인 네임은 저장 유닛(113)에 미리 저장된다. 실시 예로서, 스니핑 유닛(112)은 해당 서브 도메인 네임과 저장 유닛(113)에 저장된 각 상위 도메인 네임에 대한 문자열 비교를 수행함으로써, 서브 도메인 네임에 대응하는 상위 도메인 네임이 존재하는지 판별한다. 판별 결과에 따라, 스니핑 유닛(112)은 추출된 서브 도메인 네임을 저장 유닛(113)에 저장한다.
저장 유닛(113)은 상위 도메인 네임들 및 각 상위 도메인 네임에 대응하는 서브 도메인 네임들을 저장한다. 저장 유닛(113)은 각 상위 도메인 네임에 대응하 는 서브 도메인 네임들이 리스팅된 테이블을 저장할 수 있다. 이러한 테이블은 위에서 설명된 바와 같이 스니핑 유닛(112)에 의해 업데이트된다.
본 발명의 실시 예에 따르면, 호스트 컴퓨터들(PC1~PCk)과 DNS 서버(130) 사이에서 통신되는 패킷을 스니핑함으로써, 적어도 호스트 컴퓨터들(PC1~PCk)에 의해 사용되는, 하나의 상위 도메인 네임에 대응하는 모든 서브 도메인 네임들이 수집될 수 있다. 수집된 서브 도메인 네임들은 해당 상위 도메인 네임과 관련하여 저장 유닛(113)에 저장되고, 보안 시스템(110)에 의해 사용된다.
도 1에서, 보안 유닛(111) 및 스니핑 유닛(112)은 복수의 물리적인 장치들에 의해 구현될 수도 있고, 하나의 물리적인 장치에 의해 구현될 수 있음이 이해될 것이다. 예를 들면, 보안 유닛(111) 및 스니핑 유닛(112) 각각은 소프트웨어(software)를 이용하거나 펌웨어(firmware)를 이용하는 등 다양한 방식들을 이용하여 구현될 수 있다.
DNS 서버(130)는 인터넷 망(120)을 통하여 보안 시스템(110) 및 복수의 호스트 컴퓨터들(PC1~PCk)에 연결된다. DNS 서버(130)는 각 호스트 컴퓨터로부터 수신된 DNS 쿼리 패킷에 응답하여 DNS 응답 패킷을 해당 호스트 컴퓨터에 제공하도록 구성된다. DNS 서버(130)는 각 서브 도메인 네임에 대응하는 아이피 주소들에 대한 정보를 저장한다. 저장된 정보에 기반하여, DNS 서버(130)는 DNS 쿼리 패킷 내의 서브 도메인 네임이 어떤 아이피 주소에 대응하는지 검색하고, 요청된 서브 도메인 네임 및 검색된 아이피 주소를 포함하는 DNS 응답 패킷을 인터넷 망(120)을 통해 해당 호스트 컴퓨터에 제공한다.
제 1 내지 제 n 서버 컴퓨터들(141~14n)은 각각 인터넷 망(120)을 통해 웹 사이트들을 제공한다. 제 1 내지 제 n 서버 컴퓨터들(141~14n)은 각각 서로 다른 아이피 주소들을 가진다.
도 2는 본 발명의 실시 예에 따른 보안 시스템(110)의 동작 방법을 보여주는 순서도이다.
도 1 및 도 2를 참조하면, S110단계에서, 스니핑 유닛(112)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷을 모니터링한다. 복수의 호스트 컴퓨터들(PC1~PCk)과 DNS 서버(130) 사이에서 송수신되는 패킷은 DNS 패킷이라고 정의된다. 이때, 각 호스트 컴퓨터로부터 DNS 서버(130)에 전송되는 패킷은 DNS 쿼리 패킷으로 정의되고, DNS 서버(130)로부터 각 호스트 컴퓨터에 전송되는 패킷은 DNS 응답 패킷으로 정의된다. 복수의 호스트 컴퓨터들(PC1~PCk)은 인터넷 망(120)을 통해 서버 컴퓨터들(141~14n)과 통신할 수 있다. 복수의 호스트 컴퓨터들(PC1~PCk)과 서버 컴퓨터들(141~14n) 사이에서 송수신되는 패킷은 노멀 패킷으로 정의된다.
이하, 설명의 편의를 위해 도 2를 참조한 설명에서는 제 1 호스트 컴퓨터(PC1)가 DNS 서버(130)와 DNS 패킷을 송수신하는 경우를 일 예로서 설명한다.
S120단계에서, 스니핑 유닛(112)은 해당 패킷이 DNS 응답 패킷인지 여부를 판별한다. 즉, 스니핑 유닛(112)은 해당 패킷이 DNS 서버(130)로부터 전송되는 DNS 응답 패킷인지 여부를 판별한다.
실시 예로서, 해당 패킷이 DNS 응답 패킷인지 여부는 해당 패킷의 헤더에 기반하여 판별될 수 있다. 이는 도 3을 참조하여 더 상세히 설명된다.
만약 해당 패킷이 DNS 응답 패킷인 경우, S130단계가 수행된다.
S130단계에서, 스니핑 유닛(112)은 DNS 응답 패킷으로부터 서브 도메인 네임을 추출한다. DNS 응답 패킷에는 서브 도메인 네임 정보 및 해당 아이피 주소 정보가 포함될 수 있다. 좀 더 구체적으로 설명하면, DNS 응답 패킷은 서브 도메인 네임에 대응하는 아이피 주소를 요청하는 DNS 쿼리 패킷에 응답하여 제공되는 것이고, 따라서 DNS 응답 패킷은 요청된 서브 도메인 네임 및 그것에 대응하는 아이피 주소를 포함할 수 있다.
S140단계에서, 스니핑 유닛(112)은 추출된 서브 도메인 네임이 상위 도메인 네임에 대응하는지 판별한다. 스니핑 유닛(112)은 저장 유닛(113)에 저장된 상위 도메인 네임들 중 추출된 서브 도메인 네임에 대응하는 상위 도메인 네임이 존재하는지 판별한다. 실시 예로서, 스니핑 유닛(112)은 서브 도메인 네임과 각 상위 도메인 네임에 대한 문자열 비교를 수행함으로써 서브 도메인 네임과 상위 도메인 네임의 대응 여부를 판별한다.
S150단계에서, 스니핑 유닛(112)은 추출된 서브 도메인 네임을 저장 유닛(113)에 저장한다. 서브 도메인 네임은 해당 상위 도메인 네임과 관련하여 저장될 것이다. 실시 예로서, 저장 유닛(113)은 테이블을 저장하고, 테이블 내에는 상위 도메인 네임 별로 서브 도메인 네임들이 저장될 수 있다.
본 발명의 실시 예에 따르면, 상위 도메인 네임 별로 해당 서브 도메인 네임들이 효율적으로 수집될 수 있다.
도 3은 DNS 응답 패킷의 헤더(DNS_HD)의 데이터 포맷을 예시적으로 보여주는 도면이다.
도 3을 참조하면, DNS 응답 패킷의 헤더(DNS_HD)는 제 1 내지 제 3 플래그 정보(11~13), 목적지 아이피 주소(DP) 및 서브 도메인 네임(SDN)를 포함한다. 제 1 플래그 정보(11)는 해당 패킷이 DNS 패킷인지 또는 노멀(normal) 패킷인지 여부를 나타낸다.
실시 예로서, 제 1 플래그 정보(11)는 해당 패킷의 출발지 포트(source port)의 아이피 주소일 수 있다. 그리고, 제 1 플래그 정보(11)가 DNS 서버(130)를 가리키는지에 따라 해당 패킷이 DNS 패킷인지 판별될 수 있다.
목적지 아이피 주소(DP)는 DNS 응답 패킷이 전송될 목적지 포트(destination port), 이 실시 예에서는 호스트 컴퓨터들(PC1~PCk) 중 어느 하나의 아이피 주소이다.
서브 도메인 네임(SDN)은 DNS 쿼리 패킷에 의해 요청된 서브 도메인 네임에 대한 정보를 의미한다.
실시 예로서, 제 1 플래그 정보(11), 목적지 아이피 주소(DP), 서브 도메인 네임(SDN)은 DNS 응답 패킷의 헤더(DNS_HD) 중 TCP(Transmission Control Protocol) 헤더에 포함될 수 있다.
제 2 플래그 정보(12)는 해당 패킷이 DNS 쿼리 패킷인지 또는 DNS 응답 패킷인지 여부를 나타낸다. 예를 들면, 제 2 플래그 정보(12)는 1 데이터 비트로 구성되고, 제 2 플래그 정보(12)가 논리 상태 "1"이면 해당 패킷이 DNS 응답 패킷이고, 제 2 플래그 정보(12)가 논리 상태 "0"이면 해당 패킷이 DNS 쿼리 패킷임을 의미할 수 있다.
제 3 플래그 정보(13)는 해당 패킷이 DNS 응답 패킷인 경우 해당 아이피 주소가 존재하는지 여부 및 해당 아이피 주소의 개수를 나타낸다. 아이피 주소(IP)는 DNS 쿼리 패킷에 대응하여 제공된다.
실시 예로서, 제 2 및 제 3 플래그 정보(12, 13), 그리고 아이피 주소(IP)는 DNS 응답 패킷의 헤더(DNS_HD) 중 DNS 헤더에 포함될 수 있다.
호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷들이 DNS 응답 패킷인지 여부는 제 1 내지 제 3 플래그 정보(11~13)에 기반하여 판별될 수 있다.
도 4는 본 발명의 다른 실시 예에 따른 보안 시스템(110)의 동작 방법을 보여주는 순서도이다.
도 4를 참조하면, S210단계 내지 S240단계는 도 2의 S110단계 내지 S140단계와 마찬가지로 동작한다. 이하, 중복되는 설명은 생략된다.
S250단계에서, 서브 도메인 네임이 저장될 때 DNS 응답 패킷에 포함된 아이피 주소도 함께 저장된다. DNS 응답 패킷에는 서브 도메인 네임 및 그것에 대응하는 아이피 주소가 포함되고, 스니핑 유닛(112)은 서브 도메인 네임과 함께 아이피 주소를 저장 유닛(113)에 저장할 수 있다. 아이피 주소는 해당 서브 도메인 네임과 관련하여 저장될 것이다.
도 5는 저장 유닛(113)에 저장된 테이블(T)을 보여주는 도면이다.
도 5를 참조하면, 테이블(T)은 상위 도메인 네임에 대응하는 서브 도메인 네임들을 포함한다. 도 5에는 하나의 상위 도메인 네임에 대응하는 서브 도메인 네임들만 개시되나, 이는 설명의 편의를 위한 것으로서 테이블(T)에는 복수의 상위 도메인 네임들이 포함되고, 상위 도메인 네임 별로 서브 도메인 네임들이 리스팅될 것이다.
또한, 테이블(T)에는 각 서브 도메인 네임에 대응하는 아이피 주소들이 더 포함될 수 있다. 상위 도메인 네임에 대응하는 서브 도메인 네임이 수집될 때마다, 해당 아이피 주소도 함께 수집되어 테이블(T)에 업데이트된다. 아이피 주소들에 더 저장됨에 따라, 보안 유닛(111)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷들을 효율적으로 관리할 수 있다. 예를 들면, 보안 유닛(111)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷의 출발지 아이피 주소 또는 목적지 아이피 주소가 테이블 내의 아이피 주소와 일치할 때 해당 패킷을 차단할 수 있다.
도 6은 본 발명의 또 다른 실시 예에 따른 보안 시스템(110)의 동작 방법을 보여주는 순서도이다.
도 2 및 도 6을 참조하면, S310단계에서 스니핑 유닛(112)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷을 모니터링한다. S320단계에서, 스니핑 유닛(112)은 해당 패킷이 DNS 응답 패킷인지 여부를 판별한다.
이하, 도 6 및 도 7을 참조한 설명에서, 설명의 편의를 위해 제 1 호스트 컴퓨터(PC1)가 DNS 서버(130)와 패킷을 송수신하는 경우가 일 예로서 설명된다.
S330단계에서, 스니핑 유닛(112)은 DNS 응답 패킷에 대응하는 DNS 쿼리 패킷이 전송되었는지 여부가 판별된다. 이를 위해, 스니핑 유닛(112)은 제 1 호스트 컴퓨터(PC1)로부터 DNS 서버(130)에 전송되는 DNS 쿼리 패킷에 대한 정보를 수집한다. 이는 도 7을 참조하여 더 상세히 설명된다.
공격 등의 다양한 목적들로서, DNS 쿼리 패킷이 발생하지 않았음에도 인터넷 망(120)을 통해 호스트 컴퓨터들(PC1~PCk) 중 적어도 하나, 예를 들면, 제 1 호스트 컴퓨터(PC1)로 DNS 응답 패킷이 전송될 수 있다. 이러한 DNS 응답 패킷은 DNS 서버(13)에 의해 발생되지 않고 다른 임의의 서버에 의해 발생될 것이다.
이러한 경우, DNS 응답 패킷의 헤더(DNS_HD)의 신뢰성은 매우 낮다. 이러한 DNS 응답 패킷의 헤더(DNS_HD)에도 도 3을 참조하여 설명된 바와 동일한 제 1 내지 제 3 플래그 정보(11~13)가 포함될 수 있다. 스니핑 유닛(112)이 해당 패킷이 DNS 응답 패킷인지 여부를 DNS 응답 패킷의 헤더(DNS_HD)만으로 판단하는 경우, 신뢰성이 낮은 서브 도메인 정보를 수집할 수 있다.
이 실시 예에 따르면 스니핑 유닛(112)은 해당 패킷이 DNS 응답 패킷인지 여부를 DNS 응답 패킷의 헤더(HD)에 기반하여 판별하고, 또 제 1 호스트 컴퓨터(PC1)가 DNS 쿼리 패킷을 발생하였는지 여부를 체크한다. DNS 쿼리 패킷이 존재하는 경우에 S340단계가 수행된다. DNS 쿼리 패킷이 존재하지 않는 경우에, 서브 도메인 네임은 저장되지 않는다.
S340단계에서, 스니핑 유닛(112)은 DNS 응답 패킷으로부터 서브 도메인 네임을 추출한다. S350단계에서, 스니핑 유닛(112)은 서브 도메인 네임이 저장 유닛(113)에 저장된 상위 도메인 네임에 대응하는지 판별한다. S360단계에서, 판별 결과에 따라, 추출된 서브 도메인 네임을 해당 상위 도메인 네임에 관련하여 저장한다.
이 실시 예에 따르면, 스니핑 유닛(112)에 의해 수집되는 서브 도메인 네임의 신뢰성은 더 향상될 수 있다.
도 7은 DNS 쿼리 패킷을 획득하는 방법을 보여주는 순서도이다.
도 1 및 도 7을 참조하면, 스니핑 유닛(112)은 복수의 호스트 컴퓨터들(PC1~PCk)과 인터넷 망(120) 사이에서 통신되는 패킷을 모니터링하고(S410), 해당 패킷이 DNS 쿼리 패킷인지 여부를 판별한다(S420). DNS 쿼리 패킷은 서브 도메인 네임에 대응하는 아이피 주소를 묻는 패킷으로서, 제 1 호스트 컴퓨터(PC1)로부터 DNS 서버(130)로 전송된다. 실시 예로서, 해당 패킷이 DNS 쿼리 패킷인지 여부는 도 3을 참조한 설명과 같이 해당 패킷의 헤더에 기반하여 판별될 수 있다. 예를 들면, 해당 패킷이 DNS 쿼리 패킷인지 여부는 해당 패킷의 해더의 목적지 아이피 주소에 의해 판별될 수 있다. 해당 패킷이 DNS 쿼리 패킷이면, 스니핑 유닛(112)은 DNS 쿼리 패킷에 대한 정보를 저장 유닛(113)에 저장한다(S430). 이러한 DNS 쿼리 패킷에 대한 정보는 도 6의 S330단계에서 사용될 것이다.
본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위와 기술적 사상에서 벗어나지 않는 한도 내에서 다양한 변경이 가능하다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
PC1~PCk: 제 1 내지 제 k 호스트 컴퓨터들
110: 보안 시스템
120: 인터넷 망
130: DNS 서버
141~14n: 제 1 내지 제 n 서버 컴퓨터들

Claims (14)

  1. 인터넷 망에 연결된 복수의 호스트 컴퓨터들을 관리하는 보안 시스템의 동작 방법에 있어서:
    상기 복수의 호스트 컴퓨터들과 상기 인터넷 망 사이에서 통신되는 패킷들(packets) 각각이 DNS(Domain Named Server) 서버로부터 상기 인터넷 망을 통해 전송되는 DNS 응답 패킷인지 여부를 판별하는 단계;
    상기 DNS 응답 패킷에 포함된 서브 도메인 네임을 추출하는 단계; 및
    상기 추출된 서브 도메인 네임이 내부 저장된 상위 도메인 네임에 대응할 때 상기 서브 도메인 네임을 수집하는 단계를 포함하며,
    상기 DNS 응답 패킷은 상기 복수의 호스트 컴퓨터들 중 어느 하나에서 발생되는 DNS 쿼리 패킷에 따라, 상기 DNS 서버로부터 상기 복수의 호스트 컴퓨터들 중 어느 하나에 제공되고,
    상기 DNS 쿼리 패킷은 상기 서브 도메인 네임에 대응하는 아이피 주소를 요청할 때 발생되는 보안 시스템의 동작 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 DNS 응답 패킷은 상기 서브 도메인 네임 및 상기 아이피 주소 정보를 포함하고,
    상기 서브 도메인 네임이 수집될 때 상기 아이피 주소를 함께 수집하는 단계를 더 포함하는 동작 방법.
  4. 제 3 항에 있어서,
    상기 아이피 주소는 상기 서브 도메인 네임과 매치되어 저장되는 동작 방법.
  5. 제 1 항에 있어서,
    상기 서브 도메인 네임은 상기 상위 도메인 네임과 매치되어 저장되는 동작 방법.
  6. 제 1 항에 있어서,
    상기 판별하는 단계는 상기 패킷들 각각의 헤더에 기반하여 수행되는 동작 방법.
  7. 제 1 항에 있어서,
    상기 복수의 호스트 컴퓨터들로부터 상기 인터넷 망을 통해 상기 DNS 서버에 전송되는 복수의 DNS 쿼리 패킷들을 검출하고, 상기 복수의 DNS 쿼리 패킷들에 대한 정보를 저장하는 단계를 더 포함하고,
    상기 추출하는 단계는 상기 복수의 DNS 쿼리 패킷들 중 상기 DNS 응답 패킷에 대응하는 DNS 쿼리 패킷이 존재하는지에 따라 상기 DNS 응답 패킷으로부터 상기 서브 도메인 네임을 추출하는 단계를 포함하는 동작 방법.
  8. 인터넷 망에 연결된 복수의 호스트 컴퓨터들을 관리하는 보안 유닛;
    상기 복수의 호스트 컴퓨터들과 상기 인터넷 망 사이에서 통신되는 패킷들(packets) 각각이 DNS(Domain Named Server) 서버로부터 상기 인터넷 망을 통해 전송되는 DNS 응답 패킷인지 여부를 판별하고, 상기 DNS 응답 패킷에 포함된 서브 도메인 네임을 추출하도록 구성되는 스니핑 유닛; 및
    상위 도메인 네임을 저장하는 저장 유닛을 포함하되,
    상기 스니핑 유닛은 상기 추출된 서브 도메인 네임이 상기 상위 도메인 네임에 대응하는지 여부에 따라 상기 서브 도메인 네임을 수집하도록 구성되며,
    상기 DNS 응답 패킷은 상기 복수의 호스트 컴퓨터들 중 어느 하나에서 발생되는 DNS 쿼리 패킷에 따라, 상기 DNS 서버로부터 상기 복수의 호스트 컴퓨터들 중 어느 하나에 제공되고,
    상기 DNS 쿼리 패킷은 상기 서브 도메인 네임에 대응하는 아이피 주소를 요청할 때 발생되는 보안 시스템.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 DNS 응답 패킷은 상기 서브 도메인 네임 및 상기 아이피 주소 정보를 포함하고,
    상기 스니핑 유닛은 상기 서브 도메인 네임이 수집될 때 상기 아이피 주소를 함께 수집하도록 구성되는 보안 시스템.
  11. 제 10 항에 있어서,
    상기 스니핑 유닛은 상기 아이피 주소를 상기 서브 도메인 네임과 매칭하여 상기 저장 유닛에 저장하도록 구성되는 보안 시스템.
  12. 제 8 항에 있어서,
    상기 스니핑 유닛은 상기 서브 도메인 네임을 상기 상위 도메인 네임과 매칭하여 상기 저장 유닛에 저장하도록 구성되는 보안 시스템.
  13. 제 8 항에 있어서,
    상기 스니핑 유닛은 상기 패킷들 각각의 헤더에 기반하여 상기 패킷들 각각이 상기 DNS 응답 패킷인지 여부를 판별하도록 구성되는 보안 시스템.
  14. 제 8 항에 있어서,
    상기 스니핑 유닛은 상기 복수의 호스트 컴퓨터들로부터 상기 인터넷 망을 통해 상기 DNS 서버에 전송되는 복수의 DNS 쿼리 패킷들을 검출하고, 상기 복수의 DNS 쿼리 패킷들에 대한 정보를 상기 저장 유닛에 저장하고, 상기 복수의 DNS 쿼리 패킷들 중 상기 DNS 응답 패킷에 대응하는 DNS 쿼리 패킷이 존재하는지에 따라 상기 DNS 응답 패킷으로부터 상기 서브 도메인 네임을 추출하도록 구성되는 보안 시스템.
KR1020120130408A 2012-11-16 2012-11-16 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법 KR101429120B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120130408A KR101429120B1 (ko) 2012-11-16 2012-11-16 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120130408A KR101429120B1 (ko) 2012-11-16 2012-11-16 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
KR20140063255A KR20140063255A (ko) 2014-05-27
KR101429120B1 true KR101429120B1 (ko) 2014-08-13

Family

ID=50891303

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120130408A KR101429120B1 (ko) 2012-11-16 2012-11-16 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법

Country Status (1)

Country Link
KR (1) KR101429120B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200120565A (ko) * 2019-04-12 2020-10-21 삼성전자주식회사 도메인 네임 서버(dns) 레졸루션을 통해 에지 서버 또는 에지 서비스를 탐색하기 위한 방법 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100732689B1 (ko) * 2005-05-13 2007-06-27 (주)트리니티소프트 웹 보안방법 및 그 장치
KR20100089358A (ko) * 2009-02-03 2010-08-12 주식회사 파이오링크 네트워크 주소 변환 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100732689B1 (ko) * 2005-05-13 2007-06-27 (주)트리니티소프트 웹 보안방법 및 그 장치
KR20100089358A (ko) * 2009-02-03 2010-08-12 주식회사 파이오링크 네트워크 주소 변환 장치 및 방법

Also Published As

Publication number Publication date
KR20140063255A (ko) 2014-05-27

Similar Documents

Publication Publication Date Title
US20100138921A1 (en) Countering Against Distributed Denial-Of-Service (DDOS) Attack Using Content Delivery Network
JP5237034B2 (ja) イベント情報取得外のit装置を対象とする根本原因解析方法、装置、プログラム。
KR101416523B1 (ko) 보안 시스템 및 그것의 동작 방법
US8769057B1 (en) Employing a hierarchy of servers to resolve fractional IP addresses
US11696110B2 (en) Distributed, crowdsourced internet of things (IoT) discovery and identification using Block Chain
JP5050781B2 (ja) マルウエア検出装置、監視装置、マルウエア検出プログラム、およびマルウエア検出方法
US20050086340A1 (en) System and methods for robust discovery of servers and services in a heterogeneous environment
US20120297478A1 (en) Method and system for preventing dns cache poisoning
JP2008033409A (ja) 資産管理システム、資産管理方法、情報処理装置、管理装置およびプログラム
KR101127246B1 (ko) Ip 주소를 공유하는 단말을 검출하는 방법 및 그 장치
KR101380035B1 (ko) 자동 프로토콜 스위칭 시스템 및 그 방법
US20090122721A1 (en) Hybrid network discovery method for detecting client applications
KR101429120B1 (ko) 서브 도메인 네임을 수집하는 보안 시스템 및 그것의 동작 방법
KR101429107B1 (ko) 서브 도메인 네임을 수집하는 보안 장치 및 그것의 동작 방법
JP6131710B2 (ja) 通信システム、負荷分散装置、および、負荷分散プログラム
KR101645222B1 (ko) 어드밴스드 도메인 네임 시스템 및 운용 방법
JP2006157313A (ja) 経路作成システム、経路作成装置及び経路作成プログラム
KR101448953B1 (ko) 보안 장치 및 그것의 동작 방법
KR101603692B1 (ko) 공유 단말 식별 방법 및 그 시스템
KR101603694B1 (ko) 공유 단말 식별 방법 및 그 시스템
KR101400136B1 (ko) 보안 시스템 및 그것의 동작 방법
KR20150061350A (ko) 공유 단말 식별 방법 및 그 시스템
JP6087535B2 (ja) ユーザー端末の国情報抽出装置、方法及びコンピューター読取り可能な記録媒体
KR101359369B1 (ko) ICMPv6 NIQ를 이용한 네트워크 내 호스트 동작 상태 확인 및 탐색 방법
JP2019033320A (ja) 攻撃対処システム及び攻撃対処方法

Legal Events

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

Payment date: 20180802

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190801

Year of fee payment: 6