KR20160027945A - 유해 dns 검출 방법 - Google Patents

유해 dns 검출 방법 Download PDF

Info

Publication number
KR20160027945A
KR20160027945A KR1020150161410A KR20150161410A KR20160027945A KR 20160027945 A KR20160027945 A KR 20160027945A KR 1020150161410 A KR1020150161410 A KR 1020150161410A KR 20150161410 A KR20150161410 A KR 20150161410A KR 20160027945 A KR20160027945 A KR 20160027945A
Authority
KR
South Korea
Prior art keywords
address
dns
source
normal
site
Prior art date
Application number
KR1020150161410A
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 KR1020150161410A priority Critical patent/KR20160027945A/ko
Publication of KR20160027945A publication Critical patent/KR20160027945A/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
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • 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/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

유해 DNS(Domain Name Server)를 검출하는 방법은 사전에 정의된 소스 서비스 포트를 포함하는 DNS 응답 패킷의 소스 IP 주소를 수집하는 단계, 상기 소스 IP 주소에 해당하는 DNS로 질의하여 IP 주소를 응답받는 단계, 그리고 상기 응답받은 IP 주소를 토대로 상기 소스 IP 주소에 해당하는 DNS의 유해 DNS 여부를 판단하는 단계를 포함한다.

Description

유해 DNS 검출 방법{METHOD FOR DETECTING HARMFUL DNS}
본 발명은 유해 DNS 검출 방법에 관한 것으로서, 더욱 자세하게는 다수의 유해 DNS를 네트워크에서 탐지 및 차단하는 기술이다.
공유기(AP), PC가 해킹 또는 악성코드에 감염되어 DNS IP 주소 설정이 유해 DNS IP 주소로 불법 변경된 사례가 지속 발생되고 있다.
파밍은 사용자 공유기 또는 PC의 정상 DNS IP 주소를 유해 DNS IP 주소로 변경시켜 위조 사이트로 접근을 유도하는 방식과 사용자 PC의 hosts 파일을 변조하여 포털 사이트 또는 금융 사이트 접속시 해커가 설정한 IP 주소로 접근을 유도하는 방식이 있다.
공유기, PC의 DNS 설정이 유해 DNS IP주소로 변경되거나 PC의 hosts 파일이 변조된 경우, 인터넷 이용자가 네이버, 다음 같은 포털사이트 또는 금융사이트에 접속 시 실제사이트와 유사하게 제작된 위조(파밍)사이트로 강제 접속되어 악성코드/악성앱 다운로드, 개인정보유출, 금융사기 등의 피해를 받게 된다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 유해 DNS를 자동 탐지 및 차단하고 유해 DNS에 접근한 인터넷 사용자를 선별하여 조치방법을 안내공지하는 유해 DNS 검출 방법을 제공하는 것이다.
본 발명의 하나의 특징에 따르면, 유해 DNS 검출 방법은 유해 DNS(Domain Name Server)를 검출하는 방법으로서, 사전에 정의된 소스 서비스 포트를 포함하는 DNS 응답 패킷의 소스 IP 주소를 수집하는 단계, 상기 소스 IP 주소에 해당하는 DNS로 질의하여 IP 주소를 응답받는 단계, 그리고 상기 응답받은 IP 주소를 토대로 상기 소스 IP 주소에 해당하는 DNS의 유해 DNS 여부를 판단하는 단계를 포함한다.
본 발명의 다른 특징에 따르면, 유해 DNS 검출 방법은 유해 DNS(Domain Name Server)를 검출하는 방법으로서, 사전에 정의된 소스 서비스 포트를 포함하는 DNS 응답 패킷의 소스 IP 주소를 수집하는 단계, 상기 DNS 응답 패킷으로부터 도메인과 소스 IP 주소를 추출하는 단계, 추출한 소스 IP 주소가 상기 도메인을 사용하는 위조 사이트의 IP 주소와 일치하는지 판단하는 단계, 그리고 일치하면, 상기 소스 IP 주소를 유해 DNS로 검출하는 단계를 포함한다.
상기 수집하는 단계는,
상기 소스 서비스 포트가 UDP(User Datagram Protocol) 53번인 DNS 응답 패킷을 수집할 수 있다.
상기 유해 DNS 여부를 판단하는 단계는,
상기 응답받은 IP 주소가 정상 IP 주소 데이터베이스에 등록된 주소인지를 판단하는 단계, 상기 등록된 주소라면, 상기 소스 IP 주소에 해당하는 DNS를 정상 DNS로 판단하는 단계, 그리고 상기 등록된 주소가 아니라면, 상기 소스 IP 주소에 해당하는 DNS를 유해 DNS로 판단하는 단계를 포함할 수 있다.
상기 수집하는 단계 이전에,
위조 사이트로 주로 사용되는 하나 이상의 사이트의 도메인 주소를 정상 DNS로 질의하여 응답을 수신하는 단계, 그리고 상기 응답에 포함된 정상 DNS의 IP 주소를 상기 정상 IP 주소 데이터베이스에 저장하는 단계를 더 포함할 수 있다.
상기 정상 DNS로 질의하여 응답을 수신하는 단계는,
프록시 서버를 이용하여 소스 IP 주소를 변경하여 정상 DNS로 질의하는 단계, 그리고 서로 다른 소스 IP 주소 별 정상 DNS에 대한 응답을 수신하는 단계를 포함할 수 있다.
상기 유해 DNS는,
상기 유해 DNS로 질의하여 수신된 IP 주소가 상기 정상 IP 주소 데이터베이스에 포함되지 않은 도메인을 위조 사이트로 검출하는데 사용될 수 있다.
본 발명의 또 다른 특징에 따르면, 위조 사이트 검출 방법은 위조 사이트를 검출하는 방법으로서, 웹 사이트로 웹 문서를 요청하는 명령어 패킷을 수신하는 단계, 상기 명령어 패킷의 목적지 IP 주소 및 호스트 도메인 정보를 추출하는 단계, 그리고 상기 목적지 IP 주소가 상기 호스트 도메인의 정상 IP 주소 리스트에 포함되지 않으면, 상기 호스트 도메인을 위조 사이트로 검출하는 단계를 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 위조 사이트 검출 방법은 위조 사이트를 검출하는 방법으로서, 웹 사이트로 웹 문서를 요청하는 명령어 패킷을 수신하는 단계, 상기 명령어 패킷의 호스트를 도메인으로 설정한 후, 웹 사이트로 접속하는 단계, 그리고 접속한 웹 사이트와 상기 도메인에 해당하는 정상 웹 사이트를 비교하여 일치 여부에 따라 상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계를 포함한다.
상기 명령어 패킷은,
HTTP GET 패킷을 포함할 수 있다.
상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계는,
상기 접속한 웹 사이트의 웹 소스와 상기 정상 웹 사이트의 웹 소스가 일치하는지 비교하는 단계, 그리고 일치하면, 상기 접속한 웹 사이트를 위조 사이트로 검출하는 단계를 포함할 수 있다.
상기 정상 웹 사이트의 웹 소스가 일치하는지 비교하는 단계는,
상기 웹 소스 간의 일치율이 기 정의된 임계치를 충족하는지 판단하고,
상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계는,
상기 일치율이 상기 기 정의된 임계치를 충족하면, 상기 접속한 웹 사이트를 위조 사이트로 검출할 수 있다.
상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계는,
상기 접속한 웹 사이트의 메인 로고 이미지의 해쉬값과 상기 정상 웹 사이트의 메인 로고 이미지의 해쉬값이 일치하는지 비교하는 단계, 그리고 일치하면, 상기 접속한 웹 사이트를 위조 사이트로 검출하는 단계를 포함할 수 있다.
상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계는,
상기 접속한 웹 사이트의 HTML 소스 중 타이틀 태그와 상기 정상 웹 사이트의 HTML 소스 중 타이틀 태그가 서로 일치하는지 비교하는 단계, 그리고 일치하면, 상기 접속한 웹 사이트를 위조 사이트로 검출하는 단계를 포함할 수 있다.
상기 접속한 웹 사이트가 위조 사이트인지 검출하는 단계 이후,
상기 위조 사이트 화면을 캡쳐하여 저장하는 단계를 더 포함할 수 있다.
본 발명의 또 다른 특징에 따르면, 보안 시스템은 유해 DNS(Domain Name Server) 및 위조 사이트를 검출하는 보안 시스템으로서, DNS 응답 패킷을 토대로 유해 DNS 를 검출하고, 웹 사이트로 웹 문서를 요청하는 명령어 패킷을 토대로 위조 사이트를 검출하는 보안 장치, 그리고 상기 보안 장치의 명령어 실행에 따라 상기 유해 DNS 또는 상기 위조 사이트로 접속하는 패킷을 폐기하는 패킷 폐기 시스템을 포함한다.
상기 유해 DNS로 접근하는 트래픽을 상기 패킷 폐기 시스템으로 전달하고, 상기 트래픽의 소스 IP 주소를 수집하여 저장하는 상기 패킷 폐기 시스템의 전단에 설치된 침입 탐지 시스템을 더 포함할 수 있다.
웹 캐시 서버를 더 포함하고,
상기 보안 장치는 상기 위조 사이트로 접속하는 패킷을 상기 침입 방지 시스템으로 우회시키고,
상기 침입 방지 시스템은,
상기 위조 사이트로 향하는 패킷만 선별하여 차단하고, 상기 선별되지 않은 패킷을 상기 웹 캐시 서버로 우회시킬 수 있다.
상기 보안 장치의 요청에 따라 안내 공지 명령을 사용자 단말로 전송하는 공지 시스템을 더 포함하고,
상기 보안 장치는,
상기 유해 DNS의 IP 주소로 향하는 질의 패킷을 탐지하면, DNS 설정 변조에 따른 파밍으로 판단하여 DNS 설정 확인 및 조치 안내 공지 명령을 상기 공지 시스템으로 전송하고, DNS 질의 패킷 탐지 없이 상기 위조 사이트 접근이 탐지되면 호스트 파일 변조에 의한 파밍으로 판단하여 호스트 파일 조치 방법 안내 공지 명령을 상기 공지 시스템으로 전송할 수 있다.
상기 보안 장치는,
특정 소스 IP 주소로부터 동시 다발적으로 발생하는 패킷이 발견되면, DNS 설정 불법 변경으로 판단하고, 상기 패킷에 포함된 DNS IP 주소로 질의하여 수신된 IP 주소가 정상 IP 주소가 아니면 상기 DNS IP 주소를 유해 DNS로 판단할 수 있다.
상기 보안 장치는,
HTTP POST 패킷 패턴이 동시 다발적으로 발생하면, 상기 DNS 설정 불법 변경으로 판단할 수 있다.
본 발명의 실시예에 따르면, 유해 DNS 및 위조 사이트를 실시간 자동으로 탐지 및 차단하여 파밍으로 인한 인터넷 사용자들의 피해를 원천적으로 방지할 수 있다.
또한, 정상적으로 운영중인 웹서버가 해킹에 의해 위조사이트가 삽입되었을 경우, 침입방지시스템에 의해 위조된 사이트만 접속이 차단되며 정상적인 웹사이트는 접속이 가능하다.
또한, 유해 DNS 및 위조사이트 자동 탐지 차단 시스템은 파밍의 원인을 자동 분석하고 유해 DNS 및 위조사이트에 접근하는 인터넷 사용자들에게 맞춤형 조치방안 안내공지를 하여 인터넷 사용자가 빠르게 인지하고 조치할 수 있다.
도 1은 본 발명의 실시예에 따른 유해 DNS 및 위조 사이트를 자동으로 탐지 및 차단하는 네트워크 구성을 나타낸다.
도 2는 본 발명의 한 실시예에 따른 유해 DNS 탐지 과정을 나타낸 순서도이다.
도 3은 본 발명의 다른 실시예에 따른 유해 DNS 탐지 과정을 나타낸 순서도이다.
도 4는 본 발명의 한 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도이다.
도 5는 본 발명의 다른 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도이다.
도 6은 본 발명의 또 다른 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도이다.
도 7은 본 발명의 실시예에 따른 유해 DNS 접속 차단 방법을 나타낸 흐름도이다.
도 8은 본 발명의 실시예에 따른 위조 사이트 접속 차단 방법을 나타낸 흐름도이다.
도 9는 본 발명의 실시예에 따른 유해 DNS 또는 위조 사이트 접속 사용자에게 공지하는 방법을 나타낸 흐름도이다.
도 10은 본 발명의 실시예에 따른 인터넷 공유기 DNS 설정 불법 변경 탐지 방법을 나타낸 순서도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
또한, 명세서에 기재된 "…부", "…모듈" 의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이하, 도면을 참조로 하여 본 발명의 실시예에 따른 유해 DNS 검출 방법에 대하여 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 유해 DNS 및 위조 사이트를 자동으로 탐지 및 차단하는 네트워크 구성을 나타낸다.
도 1을 참조하면, 사용자 단말(100)은 IP 단말로서, 공유기(AP), PC를 포함할 수 있다.
패킷 수집 장치(200)는 사용자 단말(100)과 네트워크(400)간에 송수신하는 패킷을 수집한다.
공지 시스템(300)은 유해 DNS 및 위조 사이트 접근 이용자의 사용자 단말(100)에게 조치 안내 공지를 전송한다.
네트워크(400)는 각 구성 요소(100, 200, 300, 500, 600, 700, 800, 900, 1000)간의 연결 및 패킷 송수신 경로를 제공하며, 인터넷망일 수 있다.
프록시 서버(500)는 네트워크(400)와 보안 시스템(600) 사이에 위치하여 네트워크(400)와 보안 시스템(600) 간의 패킷 송수신을 중계한다.
보안 시스템(600)은 유해 DNS 탐지부(610), 위조 사이트 탐지부(630) 및 공지부(650)를 포함한다. 이때, 각 구성의 상세 동작은 도 2부터 참고하여 후술한다.
침입 탐지 시스템(700)은 패킷 폐기 시스템(800)의 앞단에 위치하여 비정상 패킷만 선별하여 패킷 폐기 시스템(800)으로 전달한다.
패킷 폐기 시스템(800)은 보안 시스템(600)의 요청에 따라 비정상 패킷을 폐기한다. 여기서, 비정상 패킷은 위조 사이트로 향하는 패킷 등을 지칭한다.
침입 방지 시스템(900)은 특정 패턴의 패킷을 차단한다.
웹 캐시 서버(1000)는 침입 탐지 시스템(700)을 통과한 패킷을 저장한다.
파밍은 사용자 단말(100)이 공유기인 경우, 해커가 공유기(100)의 정상 DNS(Domain Name Server) IP 주소를 유해 DNS IP 주소로 변경시킨다. 그러면, 사용자 단말(100)에서 인터넷 브라우저에 도메인 입력시 정상 DNS 대신 유해 DNS가 위조 사이트의 IP 주소를 응답한다. 이때, DNS란 특정 사이트에 접속하기 위해 일일이 숫자로 된 IP 주소를 기억하지 않고 도메인 네임만으로도 가능하게 하기 위해 도메인 네임을 IP 주소로 전환시켜 주는 시스템을 뜻한다. 예를 들어, IP 주소가 "111.112.113.114"와 같이 각 바이트마다 마침표로 구분된 4바이트 크기의 숫자 주소인 데 비해, 도메인 네임은 "www.abc.co.kr"과 같이 문자로 구성되어 있어서 숫자보다는 이름을 이해하거나 기억하기 쉽다.
또한, 사용자 단말(100)이 PC(Personal Computer)인 경우, 해커가 사용자 단말(100)을 악성 코드에 감염시킨 후 호스트(hosts) 파일을 변조시킨다. 그리고 사용자 단말(100)에서 인터넷 브라우저에 도메인 입력시 DNS로 도메인 질의 없이 호스트(hosts) 파일에 미리 설정한 위조 사이트로 접근을 유도한다.
그러면, 보안 시스템(600)이 유해 DNS 및 위조 사이트를 탐지하는 동작을 실시예 별로 설명하면 다음과 같다.
이때, 이하 도 2 내지 도 10에서는 도 1의 구성과 연계하여 동일한 도면 부호를 사용하여 설명한다.
도 2는 본 발명의 한 실시예에 따른 유해 DNS 탐지 과정을 나타낸 순서도이다.
도 2를 참조하면, 유해 DNS 탐지부(610)는 위조 사이트로 주로 이용되는 포털 사이트, 금융 사이트의 IP 주소를 정상 DNS(1)로 질의(S101)하여 정상 IP 주소를 응답받는다(S103). 그러면, 응답받은 정상 IP 주소를 정상 IP 주소 데이터베이스(미도시)에 저장한다(S105). 정상 IP 주소 데이터베이스(미도시)는 정상 IP 주소 리스트를 저장한다.
이때, 정상 DNS(1)로부터 응답 받은 IP 주소가 한 개인 경우는 웹 사이트(서버)가 대표 IP(Virtual IP)를 사용하거나 웹 서버 IP주소가 한 개인 경우로, 응답 받은 IP 주소를 정상 IP 주소 리스트에 수록하여 DB화한다. 정상DNS(1)로부터 응답 받은 IP 주소가 두 개 이상일 경우, 웹 사이트는 여러 개의 IP주소를 가지고 있는 경우이며 모든 IP 주소를 수집하기 위해 해당 도메인의 네임서버로 직접 도메인 질의를 하고 응답 받은 IP 주소들을 정상 IP 주소 리스트에 추가한다.
유해 DNS 탐지부(610)는 프록시 서버(500)를 이용하여 소스 IP 무작위로 변경(S107)해가며 질의한다(S101). 이때, 소스 IP 주소를 변경하는 이유는 동일한 소스 IP 주소를 사용할 경우, DNS 캐시에 의해 동일한 IP 주소만 응답할 수 있기 때문에 이를 방지하기 위해서이다.
유해 DNS 탐지부(610)는 반복해서 여러 번 S101 단계~S107 단계를 수행할 수 있다(S109).
이후, 유해 DNS 탐지부(610)는 인터넷 사용자들이 사용하는 DNS의 IP 주소를 수집하기 위해 패킷 수집 장치(200)를 통해 소스 서비스 포트가 UDP 53번인 DNS 응답 패킷의 소스 IP 주소를 실시간 수집한다(S111).
유해 DNS 탐지부(610)는 S111 단계에서 수집한 소스 IP 주소에 해당하는 도메인으로 질의하여 IP 주소를 응답받는다(S113). S113 단계에서 수신한 IP 주소가 정상 IP 주소 데이터베이스에 등록되었는지를 판단한다(S115).
이때, 등록되었다면, 수집한 소스 IP 주소를 정상 DNS로 판단한다(S117).
반면, 등록되지 않았다면, 수집한 소스 IP 주소를 유해 DNS로 판단한다(S119).
도 3은 본 발명의 다른 실시예에 따른 유해 DNS 탐지 과정을 나타낸 순서도이다.
도 3을 참조하면, 패킷 수집 장치(200)는 소스 서비스 포트가 UDP 53번인 DNS 응답 패킷을 실시간으로 수집한다(S201).
유해 DNS 탐지부(610)는 S201 단계에서 수집된 DNS 응답 패킷의 데이터 영역을 분석하여 도메인과 소스 IP 주소를 추출한다(S203).
유해 DNS 탐지부(610)는 추출한 소스 IP 주소와, 추출한 도메인과 동일 도메인을 사용하는 위조 사이트의 IP 주소를 비교한다(S205).
이때, 비교 결과 일치하는지 판단(S207)하여 일치하면, 추출한 소스 IP 주소를 유해 DNS로 판별한다(S209).
도 4는 본 발명의 한 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도로서, 위조 사이트 탐지부(630)의 동작을 나타낸다.
도 4를 참조하면, 위조 사이트 탐지부(630)는 유해 DNS(2)로 포털사이트 및 금융 사이트의 도메인을 질의하고 IP 주소를 응답받는다(S301).
위조 사이트 탐지부(630)는 DNS 응답에 포함된 IP 주소가 정상 IP 주소 데이터베이에 포함되었는지를 판단한다(S303).
이때, 포함되어 있지 않는 경우, DNS 응답에 포함된 IP 주소를 위조(또는 파밍) 사이트의 IP 주소로 검출한다(S305).
도 5는 본 발명의 다른 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도이다.
도 5를 참조하면, 패킷 수집 장치(200)는 사용자 단말(100)이 주요 포털 사이트 및 금융 사이트에 접속할 때 발생되는 Http Get 패킷을 선별하여 위조 사이트 탐지부(630)로 실시간 전송한다(S401). 여기서, Http Get 패킷은 HTTP 메소드의 하나로서, 웹 사이트로 웹 문서를 요청할 때 사용하는 명령어 패킷이다.
위조 사이트 탐지부(630)는 패킷 수집 장치(200)로부터 전송받은 Http Get 패킷의 목적지 IP 주소와 호스트 도메인 정보를 추출한다(S403).
위조 사이트 탐지부(630)는 목적지 IP 주소가 호스트 도메인의 정상 IP 주소 리스트에 포함되는지 판단한다(S405).
이때, 포함되지 않으면, 해당 IP 주소를 위조 사이트의 IP 주소로 검출한다(S407).
도 6은 본 발명의 또 다른 실시예에 따른 위조 사이트 검출 방법을 나타낸 순서도이다.
도 6을 참조하면, 위조 사이트 탐지부(630)는 패킷 수집 장치(200)로부터 위조 사이트로 접속할 때 발생되는 Http Get 패킷을 수신한다(S501).
위조 사이트 탐지부(630)는 Http Get 패킷의 호스트를 해당 도메인으로 변경한 후, 웹 사이트로 접속한다(S503). 이처럼 하는 이유는 해커는 인터넷 사용자가 웹 서버에 접속시 발생되는 Http Get 패킷의 호스트 정보가 IP 주소인지 도메인인지에 따라 다른 웹사이트를 보여주게 설정할 수 있기 때문이다.
다음, 위조 사이트 탐지부(630)는 Http Get 패킷의 호스트를 도메인으로 설정한 후 접속하는 웹 사이트의 웹 소스와 정상 웹 사이트의 웹 소스의 일치율을 실시간으로 비교(S505)하여 기 정의된 임계치 이내에서 일치하는지를 판단한다(S507).
이때, 일치하면, 접속한 웹 사이트를 위조 사이트(3)로 판별한다(S509). 위조 사이트는 대부분 정상 웹 사이트의 웹 소스를 그대로 카피하여 제작하기 때문에 웹소스 일치율이 일정 비율 이상일 경우 위조 사이트(3)로 판별한다.
여기서, 웹 소스의 일치율은 웹 사이트마다 가변적일 수 있다. 포털 사이트인 경우, 매일 컨텐츠가 변경되기 때문에 일치율을 낮게 설정하여야 하며, 금융 사이트 같이 고정적인 사이트는 일치율을 높게 설정한다.
위조 사이트 탐지부(630)는 위조 사이트의 화면을 캡쳐하여 DB에 저장한다(S511). 이는 위조사이트 운영자가 시간에 따라 웹 서버를 가변적으로 운영할 수 있으므로 이에 따른 차단의 증적자료를 확보하기 위함이다.
또한, S503 단계 이후, 위조 사이트 탐지부(630)는 접속한 웹 사이트의 메인 메인 로고 이미지의 해쉬값과 정상 웹 사이트의 메인 로고 이미지의 해쉬값을 비교(S513)하여 일치하는지를 판단한다(S515).
이때, 일치하면, 위조 사이트(3)로 판별한다(S509). 일반적인 웹사이트인 경우, 포털 사이트 또는 금융 사이트의 로고 이미지를 그대로 사용하지 않기 때문에 해쉬값을 비교하는 것이다.
또한, S503 단계 이후, 위조 사이트 탐지부(630)는 접속한 웹 사이트 및 정상 웹 사이트 각각의 HTML 소스 중 타이틀(title) 태그 부분을 서로 비교(S517)하여 일치하는지를 판단한다(S519).
이때, 일치하면, 접속한 웹 사이트를 위조 사이트(3)로 판별한다(S509).
여기서, 타이틀(Title) 태그 부분은 웹 사이트의 제목과 같은 부분이며, 위조 사이트가 정상 사이트의 화면을 그림으로 캡쳐하여 제작하였을 경우에는 위 두가지 판별법으로 분석할 수 없기 때문에, 이 경우 타이틀(Title) 태그 부분으로 위조 사이트를 판별할 수 있다.
도 7은 본 발명의 실시예에 따른 유해 DNS 접속 차단 방법을 나타낸 흐름도이다.
도 7을 참조하면, 유해 DNS 탐지부(610)는 IP 주소 인터넷 이용자의 유해 DNS 접속 차단을 위해, 패킷 폐기 시스템(800)으로 유해 DNS(3)의 IP 주소 트래픽을 폐기 처리하는 명령(null0)을 실행한다(S601, S603).
패킷 폐기 시스템(800) 전단에 설치된 침입 탐지 시스템(700)은 트래픽이 전달되면, 유해 DNS로 접근하는 트래픽인지를 판단한다(S605). 그리고 유해 DNS로 접근하는 트래픽이면 패킷 폐기 시스템(800)으로 트래픽을 전달한다(S607). 그러면, 패킷 폐기 시스템(800)은 명령 실행에 따라 전달된 트래픽을 폐기한다(S609).
그리고 침입 탐지 시스템(700)은 유해 DNS(3)로 접근하는 트래픽의 소스 IP 주소를 수집한다(S611). 이는 유해 DNS(3)로 접근하는 인터넷 사용자의 IP를 선별하기 위한 것이다.
도 8은 본 발명의 실시예에 따른 위조 사이트 접속 차단 방법을 나타낸 흐름도이다.
도 8을 참조하면, 위조 사이트 탐지부(630)는 인터넷 이용자의 위조 사이트 접속 차단을 위해 패킷 수집 장치(200)가 수집한 패킷이 위조 사이트로 접속하는 패킷인지를 판단한다(S701).
이때, 위조 사이트로 접속하는 패킷은 침입 방지 시스템(900)으로 우회시킨다(S703). 즉, 위조 사이트의 IP 주소를 바로 폐기(null0)하지 않는다. 이유는 정상 서비스 중인 웹 서버가 해킹되어 위조 사이트가 삽입된 경우 정상 웹 서비스가 차단될 수 있기 때문이다. 즉, 위조 사이트의 IP 주소로 향하는 패킷을 모두 폐기 처리하면 해당 웹서버의 정상적인 웹페이지로 접근하는 패킷도 차단된다. 이를 방지하기 위해, 위조 사이트 IP 주소로 향하는 패킷만 선별(S707)하여 선별되지 않은 정상 패킷을 웹 캐시 서버(1000)로 우회시킨다(S709). 그러면 우회된 웹 캐시에 저장(S711)된 후, 사용자 단말(100)로 전송된다(S713).
반면, 위조 사이트 IP 주소로 향하는 패킷만 선별되면, 선별된 패킷을 차단(S715)하여 나머지는 웹 캐시 서버(1000)로 통과시켜 정상적인 웹사이트로 접속하게 한다.
이때, S705 단계에서 침입 방지 시스템(900)은 위조 사이트 IP 주소로 향하는 HTTP GET 패킷 중에서 호스트 정보가 파밍에 사용된 도메인으로 설정된 패킷을 선별하여 차단한다. 이 패킷이 차단될 경우 인터넷 사용자는 위조된 웹페이지를 인터넷 브라우저에서 열어볼 수 없다.
그리고 침입 방지 시스템(900)을 통과한 정상 HTTP GET 패킷은 웹 캐시 서버(1000)로 전송되고 웹 캐시 서버(1000)는 웹 캐시에 저장된 웹페이지를 인터넷 사용자에게 전송하여 정상적으로 웹페이지를 보여준다. 여기서, 웹 캐시란 사용자가 어떤 사이트에 접속할 때 원래 서버를 통해 사용자에게 정보를 제공하고 그와 함께 프록시 서버에 정보가 저장된 파일을 말한다. 동일한 서버에 다시 접근할 때에는 근처에 있는 프록시 서버의 웹 캐시에 저장된 정보를 불러오므로 더 빠른 열람이 가능하다.
도 9는 본 발명의 실시예에 따른 유해 DNS 또는 위조 사이트 접속 사용자에게 공지하는 방법을 나타낸 흐름도이다.
도 9를 참조하면, 보안 장치(600)의 공지부(650)는 침입 탐지 시스템(700)으로부터 유해 DNS 또는 위조 사이트 접속 탐지 알림을 수신(S801)한다.
그러면, 공지부(650)는 패킷 폐기 시스템(800) 전단에 설치되어 있는 침입 탐지 시스템(700)에서 탐지한 소스 IP 주소를 사용하는 고객에게 유해 DNS 또는 위조 사이트에 접근하였음을 실시간으로 알리고 파밍 원인에 따른 맞춤형 조치방법 안내 공지 명령을 공지 시스템(300)을 통해 사용자 단말(100)에 전송한다.
이때, 파밍 원인을 파악하여 공지 하는 방법은 아래와 같다.
공지부(650)는 패킷 수집 장치(200)에서 유해 DNS IP 주소로 향하는 질의 패킷이 탐지(S803)되었을 경우, 사용자 단말(100)의 DNS 설정 변조에 의한 파밍으로 판단(S805)한다. 그리고 공유기를 포함한 사용자 단말(100)의 DNS 설정 확인 및 조치 방법 안내 공지 명령을 공지 시스템(300)에 전송한다(S807). 그러면 공지 시스템(300)은 안내 공지 명령을 사용자 단말(100)에게 전송한다(S809).
또한, 공지부(650)는 패킷 수집 장치(200)에서 DNS 질의 패킷이 수집되지 않고 위조 사이트 접근이 탐지(S811)되었을 경우, 이를 PC의 호스트(hosts)파일 변조에 의한 파밍으로 판단(S813)하고 PC의 호스트(hosts)파일 조치 방법 안내 공지 명령을 공지 시스템(300)에 전송한다(S815). 그러면 공지 시스템(300)은 안내 공지 명령을 사용자 단말(100)에게 전송한다(S817).
S809 단계 및 S817 단계에서 공지 시스템(300)은 안내 공지 명령을 수신한 후, 해당 인터넷 사용자가 웹에 처음 접속할 때 안내 내용이 포함된 공지 메시지를 팝업 창으로 띄어 공지한다.
도 10은 본 발명의 실시예에 따른 인터넷 공유기 DNS 설정 불법 변경 탐지 방법을 나타낸 순서도이다.
도 10을 참조하면, 유해 DNS 탐지부(610)는 패킷 수집 장치(200)에서 수집된 패킷 중 인터넷 공유기(100)의 DNS 설정을 외부에서 변경할 때 발생되는 웹 http post 패킷의 패턴을 탐지하고, 불법변경 여부를 판단하고 불법변경으로 판단시 자동 차단한다. 불법변경 여부를 파악하여 차단하는 방법은 다음과 같다.
먼저, 유해 DNS 탐지부(610)는 인터넷 공유기(100)의 DNS 설정을 외부에서 변경할 때 발생되는 웹 http post 패킷의 패턴을 탐지한다(S901).
유해 DNS 탐지부(610)는 탐지한 해당 패킷들이 특정 소스 IP 주소로부터 동시 다발적으로 발생되는지 판단한다(S903).
이때, 동시 다발적으로 발생하는 경우, 해커에 의한 DNS 설정 불법 변경으로 판단한다(S905). 보통 인터넷 공유기 DNS 설정 불법 변경은 해커가 제작한 DNS 설정 불법 변경툴(스크립트)에 의해 특정시간에 동시 다발적으로 발생되기 때문이다.
다음, 유해 DNS 탐지부(610)는 웹 http post 패킷의 데이터 부분을 분석하여 공유기 관리자 페이지에서 DNS 설정을 표기하는 INPUT 파라미터 값에 해커가 변경하려는 DNS IP 주소 값을 추출하여 도메인 질의한다(S907). 즉, 추출한 DNS IP 주소로 포털 또는 금융 사이트 도메인 질의를 한다.
유해 DNS 탐지부(610)는 도메인 응답이 수신(S909)되면, 정상 IP 주소 인지를 판단한다(S911).
정상 IP 주소가 아니라면, 즉, 정상 IP 주소가 아닌 다른 IP주소를 응답할 경우 해당 DNS를 유해 DNS로 판단하고 패킷 폐기 시스템(800)으로 유해 DNS(3)의 IP 주소 트래픽을 폐기 처리하는 명령(null0)을 실행하여 유해 DNS로 접속을 차단한다(S913).
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (3)

  1. 유해 DNS(Domain Name Server)를 검출하는 방법으로서,
    정상 DNS와 상기 유해 DNS가 연결된 네트워크에 접속된 유해 DNS 탐지부가 위조 사이트로 사용되는 특정 사이트의 IP 주소를 상기 정상 DNS에게 질의하여 응답을 수신하는 단계,
    상기 응답에 포함된 상기 특정 사이트의 정상 IP 주소를 정상 IP 주소 데이터베이스에 저장하는 단계,
    사전에 정의된 소스 서비스 포트를 포함하고, 사용자 단말로 향하는 DNS 응답 패킷의 소스 IP 주소를 수집하는 단계,
    상기 소스 IP 주소에 해당하는 정상 DNS로 질의하여 IP 주소를 응답받는 단계,
    상기 정상 DNS로부터 응답받은 IP 주소가 상기 정상 IP 주소 데이터베이스에 저장되어 있다면, 상기 소스 IP 주소를 정상 DNS로 판단하는 단계, 그리고
    상기 응답받은 IP 주소가 상기 정상 IP 주소 데이터베이스에 저장되어 있지 않다면, 상기 소스 IP 주소를 상기 유해 DNS로 판단하는 단계를 포함하고,
    상기 응답을 수신하는 단계는,
    프록시 서버를 이용하여 소스 IP 주소를 무작위로 변경하여 정상 DNS로 질의하는 단계, 그리고 서로 다른 소스 IP 주소 별 정상 DNS에 대한 응답을 수신하는 단계를 포함하고,
    상기 소스 IP 주소를 무작위로 변경하여 정상 DNS로 질의한 후, 응답을 수신하는 단계를 기 정의된 횟수만큼 반복하며, 상기 유해 DNS는,
    상기 특정 사이트의 도메인에 해당하는 IP 주소를 질의받으면 IP 주소를 응답하고,
    응답된 IP 주소가 상기 정상 IP 주소 데이터베이스에 포함되지 않은 경우, 상기 응답된 IP 주소는 위조 사이트의 IP 주소로 검출되는유해 DNS 검출 방법.
  2. 유해 DNS(Domain Name Server)를 검출하는 방법으로서,
    정상 DNS와 상기 유해 DNS가 연결된 네트워크에 접속된 유해 DNS 탐지부가 소스 서비스 포트가 UDP(User Datagram Protocol) 53번이고 사용자 단말로 향하는 DNS 응답 패킷의 소스 IP 주소를 수집하는 단계,
    상기 DNS 응답 패킷으로부터 도메인과 소스 IP 주소를 추출하는 단계,
    추출한 소스 IP 주소가 상기 도메인을 사용하는 위조 사이트의 IP 주소와 일치하는지 판단하는 단계, 그리고
    일치하면, 상기 소스 IP 주소를 상기 유해 DNS로 검출하는 단계
    를 포함하는 유해 DNS 검출 방법.
  3. 제1항에 있어서,
    상기 수집하는 단계는,
    상기 소스 서비스 포트가 UDP(User Datagram Protocol) 53번인 DNS 응답 패킷을 수집하는 유해 DNS 검출 방법.
KR1020150161410A 2015-11-17 2015-11-17 유해 dns 검출 방법 KR20160027945A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150161410A KR20160027945A (ko) 2015-11-17 2015-11-17 유해 dns 검출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150161410A KR20160027945A (ko) 2015-11-17 2015-11-17 유해 dns 검출 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020140116451A Division KR101623570B1 (ko) 2014-09-02 2014-09-02 위조 사이트 검출 방법과 이에 대한 보안 시스템

Publications (1)

Publication Number Publication Date
KR20160027945A true KR20160027945A (ko) 2016-03-10

Family

ID=55539180

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150161410A KR20160027945A (ko) 2015-11-17 2015-11-17 유해 dns 검출 방법

Country Status (1)

Country Link
KR (1) KR20160027945A (ko)

Similar Documents

Publication Publication Date Title
CN107426242B (zh) 网络安全防护方法、装置及存储介质
RU2668710C1 (ru) Вычислительное устройство и способ для обнаружения вредоносных доменных имен в сетевом трафике
KR101391781B1 (ko) 웹 트랜잭션 밀집도 기반 에이치티티피 봇넷 탐지 장치 및 방법
KR101623570B1 (ko) 위조 사이트 검출 방법과 이에 대한 보안 시스템
EP3275151B1 (en) Collecting domain name system traffic
US9817969B2 (en) Device for detecting cyber attack based on event analysis and method thereof
JP2020515962A (ja) Apt攻撃に対する防御
JP4768021B2 (ja) IPネットワークにおいて標的被害者自己識別及び制御によってDoS攻撃を防御する方法
KR102045468B1 (ko) 네트워크 데이터 분석에 기반한 비정상 연결 행위 탐지 장치 및 방법
CN101505247A (zh) 一种共享接入主机数目的检测方法和装置
CN106685899B (zh) 用于识别恶意访问的方法和设备
CN105915532A (zh) 一种失陷主机的识别方法及装置
CN107566420B (zh) 一种被恶意代码感染的主机的定位方法及设备
KR101702102B1 (ko) 인터넷 연결 장치, 중앙 관리 서버 및 인터넷 연결 방법
CN106790073B (zh) 一种Web服务器恶意攻击的阻断方法、装置及防火墙
KR101072981B1 (ko) 분산 서비스 거부 공격의 방어 시스템
KR20070072835A (ko) 실시간 웹로그 수집을 통한 웹해킹 대응 방법
KR20130105769A (ko) 악성 도메인 탐지 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
JP5743822B2 (ja) 情報漏洩防止装置及び制限情報生成装置
JP6007308B1 (ja) 情報処理装置、情報処理方法及びプログラム
KR20160027945A (ko) 유해 dns 검출 방법
JP5966076B1 (ja) 情報処理装置、情報処理方法及びプログラム
KR101005093B1 (ko) 클라이언트 식별 방법 및 장치
JP6105797B1 (ja) 情報処理装置、情報処理方法及びプログラム
KR100870871B1 (ko) 액세스레벨에서의 유해트래픽 차단장치 및 보안시스템

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application