KR101048159B1 - 봇넷 탐지 및 차단 시스템 및 방법 - Google Patents

봇넷 탐지 및 차단 시스템 및 방법 Download PDF

Info

Publication number
KR101048159B1
KR101048159B1 KR1020090017304A KR20090017304A KR101048159B1 KR 101048159 B1 KR101048159 B1 KR 101048159B1 KR 1020090017304 A KR1020090017304 A KR 1020090017304A KR 20090017304 A KR20090017304 A KR 20090017304A KR 101048159 B1 KR101048159 B1 KR 101048159B1
Authority
KR
South Korea
Prior art keywords
botnet
hash
list
unit
storage unit
Prior art date
Application number
KR1020090017304A
Other languages
English (en)
Other versions
KR20100098242A (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 KR1020090017304A priority Critical patent/KR101048159B1/ko
Publication of KR20100098242A publication Critical patent/KR20100098242A/ko
Application granted granted Critical
Publication of KR101048159B1 publication Critical patent/KR101048159B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • Bioethics (AREA)
  • Automation & Control Theory (AREA)
  • Virology (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 봇넷에 의한 스팸의 대량발송을 IP를 근거로 미리 차단하는 동시에 봇넷의 멤버쉽 규모를 효과적으로 판단할 수 있는 봇넷 탐지 및 차단 시스템에 대한 것으로서, 더욱 상세히는 봇넷이 공통 타겟으로 삼는 URL의 해쉬(hash)값을 근거로 IP들에 대하여 리스트를 작성하고 상기 리스트를 근거로 필터링함과 동시에 봇넷의 멤버쉽 규모를 용이하게 파악할 수 있는 봇넷 탐지 및 차단 시스템에 대한 것이다. 본 발명에 따르면 봇넷에 의해 전송되는 집단 메일 트래픽에 대하여 메일의 내용을 일일이 확인하지 않고 타겟 URL이 동일한 IP를 집단으로 리스트를 구성하여, 상기 리스트에 대응하는 봇넷을 용이하게 구분할 수 있을 뿐 아니라 상기 IP를 근거로 봇넷을 파악하여 계산상 복잡도를 감소시킴으로써 신속한 봇넷의 차단이 이루어지도록 하는 효과가 있다.
Figure R1020090017304
봇넷(botnet), IP, 해쉬(hash)

Description

봇넷 탐지 및 차단 시스템 및 방법{System and method for spamming botnet by detecting and intercepting botnet}
본 발명은 봇넷에 의한 스팸의 대량발송을 IP를 근거로 미리 차단하는 동시에 봇넷의 멤버쉽 규모를 효과적으로 판단할 수 있는 봇넷 탐지 및 차단 시스템에 대한 것으로서, 더욱 상세히는 봇넷이 공통 타겟으로 삼는 URL의 해쉬 값을 근거로 IP들에 대하여 리스트를 작성하고 상기 리스트를 근거로 필터링함과 동시에 봇넷의 멤버쉽 규모를 용이하게 파악할 수 있는 봇넷 탐지 및 차단 시스템에 대한 것이다.
봇넷이 컴퓨터 과학 분야에서 전 세계적인 문제로 떠오르고 있다. 악성 코드에 감염된 일반 사용자들의 PC(= compromised PC or Bot)들이 네트워크로 연결되어 하나의 일괄적인 행동을 동시다발적으로 수행하는 것을 봇넷이라고 하는데, 도 1에 도시된 바와 같이 수백 만대의 감염 PC들(bot)이 소수의 조종자(bot-master)에 의해 임의대로 조작되는 것이 대표적인 특징이다. 수백 만대의 PC가 개인의 의지로 조작 가능하므로 악용될 소지가 매우 높고 그 파괴력도 어마어마한 것이 사실이다. 실제로 봇넷(Botnet)은 주로 대량 스팸 메일 발송, 분산된 서비스 거부 공격(DDoS), 악성 코드의 확산을 목적으로 사용되며 전 세계적으로 인터넷이 보편화된 요즘 각종 online service에 막대한 피해를 입히고 있다.
봇넷들이 여러 방면에서 악영향을 끼치고 있다고는 하지만 이를 잡아내는 것은 결코 쉬운 일이 아니다. 봇넷의 핵심적인 특성인 "분산성"과 "유저 의존성" 때문이다. 하나 혹은 소수의 PC들이 같은 태스크(task: 악의적 행동)를 반복적으로 수행한다면 이를 찾아내는 일은 크게 어렵지 않다. 하지만 수백 만대의 PC가 같은 태스크를 1~2번씩 수행한다면 이 태스크를 수행하는 주체를 찾아내는 일은 매우 어려울 것이다. 심지어는 그런 악의적 태스크가 수행되고 있는지 조차 모를 수도 있다. 또 하나 고려해야 할 점은 태스크에 동원되는 밧(bot)들은 일반 유저들의 개인 PC라는 것이다. 이들은 자발적으로 태스크에 참여하는 것이 아니기 때문에 단순히 조종자가 명령을 내리는 순간에 컴퓨터가 켜져 있을 경우에만 태스크에 참여하게 된다. 쉽게 말해 각각의 밧들이 언제 켜져 있고(참여), 언제 꺼져(비 참여) 있을지 아무도 예측할 수 없다.
이렇듯 봇넷은 매우 광범위하고 불규칙적이며 예측이 힘든 특징을 가지고 있으면서 인터넷 환경에 미치는 악영향은 매우 크기 때문에 최근 컴퓨터 과학 분야에서 핫 이슈로 떠오르는 분야이다.
봇넷에 관련된 연구는 네트워크, 보안, 데이터 마이닝 등 다양한 분야에서 지금까지도 활발하게 이루어 지고 있다. 하지만 그 연구들이 봇넷의 정확한 크기와 행동패턴(behavioral pattern), 전개패턴(evolution pattern)등을 명확하게 밝혀내 지는 못하고 있는 실정이다.
초기의 연구는 대부분 네트워크 패킷 플로우(network packet flow)에 집중되어 있었다. 그 중에는 조종자가 봇넷에게 명령을 내리는 C&C(Command and Control) 서버에 직접 들어가 메시지 전송 체계와 botnet의 규모를 확인했던 IRC Infiltration 방식, 그리고 DNS Lookup information과 같이 external trace를 이용해 봇넷의 특성을 알아보는 연구가 있었다.
하지만 네트워크 트래픽에 관련된 연구만으로 정확한 봇넷의 행동 패턴을 파악하기엔 부족하였다. 인터넷 시스템 구성상 PC들(즉 bot-master와 bot들)이 주고 받는 패킷의 정확한 내용을 파악하기 힘들기 때문이다. 현실적으로 네트워크 단에서 PC들이 주고 받는 패킷을 모두 열어 확인해 본다는 것은 불가능한 일이다.
최근 봇넷에 대한 연구는 네트워크 트래픽에서 스팸 메일 로그 분석으로 많이 옮겨 오는 추세이다. 메일 로그를 이용한 연구는 메일의 내용을 (네트워크 패킷에 비해) 손쉽게 확인할 수 있고, 메일의 최종 발신자와 메일 수신자를 정확하게 파악할 수 있다. 이로 인해 IP들의 집단적 움직임을 보다 명확하게 파악할 수 있고, 메일 내용의 유사성을 통해 IP들의 특정 봇넷 멤버쉽 여부를 확실하게 잡아낼 수 있다는 장점이 있다.
이메일 로그를 이용한 최초의 연구는 target URL의 일치를 통해 봇넷을 찾아보았던 연구가 있었다. 하지만 이들이 지적한 pivot point가 되는 IP의 역할을 밝히지 못했던 점이 아쉬움으로 남는다. 스팸 메일의 발송 특징들을 클러스터링해 봇넷을 탐색했던 연구는 메일의 내용 확인을 통한 정확한 봇넷 멤버쉽의 구분 없이 IP의 활동 패턴만을 분석하여, IP가 봇넷의 중복 감염이나 2개 이상의 봇넷의 동시 활동에 대한 대비가 없었던 것이 아쉬웠다.
이후 메일 로그를 통한 봇넷 연구는 더욱 활발해지고 발전되었는데, 그 중 하나가 메일 로그 분석에 dynamic IP의 영향력을 파악하려는 시도가 있었으나, aggressive sampling rate로 제약 받는 data 상황으로 한정되어 실용성이 낮았고, 메일의 특정 feature를 뽑아 signature의 개념을 도입하여 봇넷을 탐지하거나, AutoRE라는 spam filtering system을 제안하기도 하였다. 이 시스템은 유사한 URL 형태를 보이는 메일들을 한데 묶을 수 있는 regular expression을 사용하여 filtering rate를 높였지만 유사 URL에 대한 검색에는 한계가 있었다.
이처럼 메일 로그를 사용한 봇넷 연구들이 활발하게 진행되고 있지만, 전체적으로 세밀한 봇넷의 행동 패턴은 좀처럼 파악하지 못하고 있는 실정이다.
따라서, 본 발명은 봇넷이 대량의 스팸 메일 발송에 동원된다는 점에 착안하여, 대량의 스팸 메일 로그를 통해 일부 필요한 정보를 추출하여 특정 봇넷을 용이하게 구분하고, IP와 해쉬를 이용하여 특정봇넷에 속한 IP들의 활동을 용이하게 차단할 수 있는 시스템 및 방법을 제공하는데 그 목적이 있다.
또한, 본 발명은 대량의 메일 로그 속에서 봇넷에 의해 발송된 스팸 메일을 찾아내고 이들을 발송한 최종 발송자(bot)들의 유사 발송 행동을 파악해 각각의 봇넷 멤버쉽을 밝혀 각 봇넷의 활동을 효과적으로 차단하는 시스템 및 방법을 제공하는데 그 목적이 있다.
더하여, 본 발명은 각 봇넷들의 구체적인 규모와 스팸 발송 패턴을 찾아내고 시간의 흐름에 따른 봇넷의 확장 또는 소멸에 따라 자체적으로 시스템을 갱신하여 용이하게 대처할 수 있는 시스템 및 방법을 제공하는데 그 목적이 있다.
또한, 본 발명은 특정 봇넷이 URL의 변형을 통해 웹페이지 링크를 우회하는 방법으로 스팸메일을 발송하더라도 용이하게 이를 탐지하여 해당 봇넷의 활동을 기록하고 차단할 수 있는 시스템 및 방법을 제공하는데 그 목적이 있다.
상기한 과제를 달성하기 위하여 본 발명에 따른 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메 일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 봇넷 행동 탐지 및 차단 시스템은, 봇넷식별정보와 매칭되는 IP 리스트를 저장하는 저장부와, 상기 저장부로부터 특정 봇넷의 IP 리스트를 로드하고, 상기 IP 리스트에 설정된 IP가 포함되는 메일 트래픽을 필터링하는 IP 필터링부와, 상기 이메일 로그를 추출하여 상기 저장부의 봇넷식별정보와 비교하여 기설정된 수준 이상으로 봇넷활동이 검출되면 상기 봇넷식별정보에 매칭되는 IP 리스트를 상기 저장부로부터 상기 IP 필터링부에 로드하도록 제어하는 탐지부로 구성될 수 있다.
이때, 상기 봇넷식별정보는 봇넷이 타겟으로 하는 URL을 포함할 수 있으며, 상기 탐지부는
Figure 112009012532118-pat00001
를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장부로부터 상기 필터링부에 로드하도록 하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 한다.
또한, 상기 탐지부는 실시간으로 상기 P-Value 값을 계산하여 기설정된 임계값 이상으로 복귀하는 경우 상기 IP 필터링부를 제어하여 상기 특정 봇넷에 포함된 IP의 메일 트래픽을 필터링하지 않을 수 있다.
한편, 본 발명에 따른 봇넷 탐지 및 차단 시스템은 상기 IP 필터링부에 의해 필터링된 메일 트래픽의 로그에서 URL을 포함하는 샘플 해쉬를 추출하는 해쉬 샘플러부와, 상기 해쉬 샘플러부에서 추출된 샘플 해쉬를 근거로 상기 IP 필터링부에 필터링되지 않은 메일 트래픽의 해쉬와 비교하여, 일치하는 경우 필터링하고 상기 필터링부에 로드된 IP 리스트에 상기 필터링 되지 않은 메일 트래픽의 IP를 추가하여 갱신시키는 해쉬 필터링부를 더 포함할 수도 있다.
이때, 상기 IP 필터링부는 상기 해쉬 필터링부에 의해 갱신된 IP 리스트와 대응하는 상기 저장부에 저장된 IP 리스트를 갱신시킬 수 있다.
또한, 상기 해쉬 필터링부는 상기 IP 필터링부에 로드된 IP 리스트에 대응하는 상기 저장부에 저장된 봇넷식별정보에 상기 샘플 해쉬에 대한 정보를 추가하여 갱신시킬 수 있다.
더하여 본 발명에 따른 봇넷 탐지 및 차단 시스템은, 상기 해쉬 필터링부를 통해 필터링되지 않은 메일 트래픽의 로그에서 URL을 포함하는 해쉬를 추출하여 동일한 해쉬를 가진 IP를 묶어 벡터를 생성하고, 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 각 벡터에 포함된 IP와 해쉬를 하나로 묶어 새로운 봇넷식별정보와 IP 리스트를 생성하여 상기 저장부에 갱신시키는 임시 해쉬 저장부를 더 포함할 수 있다.
이때, 상기 임시 해쉬 저장부는 상이한 두 벡터에 포함된 단위 시간 동안 스팸 메일을 발송한 IP 개수의 분포, mail 개수의 분포 및 IP histogram을 확률분포로 변환하고, 각 벡터에서 동일한 종류의 확률분포를 각각 p와 q로서 D(p||q) + D(q||p)에 대입하여 각 확률분포에 대한 D(p||q) + D(q||p)의 KL_Divergence 값을 합산하여 상기 연관도를 구하며,
Figure 112009012532118-pat00002
인 것을 특징으로 할 수 있다.
또한, 상기 임시 해쉬 저장부는 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
Figure 112009012532118-pat00003
를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 할 수 있다.
한편, 상기 탐지부는 상기 저장부에 저장된 IP 리스트의 IP 마다 위험도를 부가하여, 상기 IP가 발송하는 메일 트래픽의 지속 여부에 따라 상기 위험도를 지수적으로 감소시켜 기설정된 임계치보다 낮은 경우에 해당하는 IP를 상기 IP 리스트에서 삭제할 수 있으며, 상기 위험도는
Figure 112009012532118-pat00004
이며,
상기 Ri,t는 t시간에 i번 IP가 가지는 위험도이며, 상기 i는 상기 IP 리스트 에 포함된 IP의 번호이며, 상기 t는 시간이며, 상기 H는 상기 IP 리스트에 저장된 모든 IP가 발송하는 스팸 메일간격 분포도의 신뢰도 95% 구간이 되는 포인트(=반감기)인 것을 특징으로 한다.
본 발명의 다른 실시예에 따른 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 봇넷 행동 탐지 및 차단 시스템은, 봇넷식별정보와 매칭되는 IP 리스트를 저장하는 저장부와, 상기 이메일 로그를 추출하여 상기 봇넷식별정보와 비교하는 탐지부와, 상기 탐지부의 비교 결과 기설정된 수준 이상으로 봇넷 활동이 검출되면 상기 메일 트래픽을 수신하여 URL을 포함하는 해쉬를 추출하며, 이후 수신되는 메일 트래픽의 해쉬가 동일한 IP 끼리 묶어 벡터를 생성하며, 상이한 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 상기 벡터를 통합하여 생성된 새로운 IP 리스트와 상기 해쉬를 포함하는 봇넷식별정보를 상기 저장부에 갱신시키는 임시 해쉬 저장부를 포함할 수 있다.
이때, 상기 임시 해쉬 저장부는 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
Figure 112009012532118-pat00005
를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 할 수 있다.
또한, 상기 임시 해쉬 저장부는 상기 새로운 IP 리스트의 IP 마다 위험도를 부가하여, 상기 IP가 발송하는 메일 트래픽의 지속 여부에 따라 상기 위험도를 지수적으로 감소시켜 기설정된 임계치보다 낮은 경우에 해당하는 IP를 상기 IP 리스트에서 삭제할 수 있으며, 상기 위험도는
Figure 112009012532118-pat00006
이며,
상기 Ri,t는 t시간에 i번 IP가 가지는 위험도이며, 상기 i는 상기 IP 리스트에 포함된 IP의 번호이며, 상기 t는 시간이며, 상기 H는 상기 IP 리스트에 저장된 모든 IP가 발송하는 스팸 메일간격 분포도의 신뢰도 95% 구간이 되는 포인트(=반감기)인 것을 특징으로 한다.
본 발명의 또 다른 실시예에 따른 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 방법은 봇넷의 활동 여부를 탐지하는 탐지부가 상기 이메일 로그에 포함된 해쉬를 기설정된 봇넷식별정보와 비교하는 제 1단계와, 상기 제 1단계의 결과 상기 해쉬가 봇넷식별정보와 비교하여 기설정된 수준 이상으로 봇넷 활동이 검출되면 상기 탐지부가 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장하는 저장부를 제어하여 상기 IP 리스트를 IP에 대응하는 메일 트래 픽을 필터링하는 IP 필터링부에 로드하도록 하는 제 2단계와, 상기 탐지부가 상기 메일 트래픽을 상기 IP 필터링부에 전달하는 제 3단계와, 상기 IP 필터링부가 상기 IP 리스트를 근거로 상기 메일 트래픽의 IP와 비교하여 상기 메일 트래픽의 필터링 여부를 결정하는 제 4단계로 이루어질 수 있다.
이때, 상기 봇넷식별정보는 봇넷이 타겟으로 하는 URL에 대한 해쉬 정보를 포함할 수 있으며, 상기 제 1단계는 상기 해쉬가 상기 봇넷식별정보와 일치하는 경우 상기 탐지부가
Figure 112009012532118-pat00007
를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장부로부터 상기 필터링부에 로드하도록 하는 단계를 더 포함하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 할 수 있다.
또한, 상기 제 4단계는 상기 IP 필터링부가 상기 P-Value 값이 기설정된 임계값 이상으로 복귀하는 경우 상기 탐지부의 제어에 의해 상기 특정 봇넷에 포함된 IP의 메일 트래픽을 필터링하지 않는 것을 특징으로 할 수 있다.
또한, 상기 봇넷 탐지 및 차단 방법은 로그에서 해쉬를 추출하는 해쉬 샘플러부가 상기 IP 필터링부에 의해 필터링된 메일 트래픽의 로그에서 URL을 포함하는 샘플 해쉬를 추출하는 제 5단계와, 상기 제 5단계에서 추출된 샘플 해쉬를 근거로 필터링하는 해쉬 필터링부가 상기 IP 필터링부에 필터링되지 않은 메일 트래픽의 해쉬를 상기 샘플 해쉬와 비교하여 일치하는 경우 필터링하고 상기 필터링부에 로드된 IP 리스트에 상기 필터링 되지 않은 메일 트래픽의 IP를 추가하여 갱신시키는 제 6단계를 더 포함할 수 있다.
이때, 상기 제 6단계에서 상기 IP 필터링부가 상기 해쉬 필터링부에 의해 갱신된 IP 리스트와 대응하는 상기 저장부에 저장된 IP 리스트를 갱신시키는 제 7단계를 더 포함할 수 있다.
더하여, 상기 제 6단계에서 상기 해쉬 필터링부가 상기 IP 필터링부에 로드된 IP 리스트에 대응하는 상기 저장부에 저장된 봇넷식별정보에 상기 샘플 해쉬에 대한 정보를 추가하여 갱신시키는 제 8단계를 더 포함할 수 있다.
한편, 상기 제 6단계에서 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 생성시키는 임시 해쉬 저장부가 상기 해쉬 필터링부를 통해 필터링되지 않은 메일 트래픽의 로그에서 URL을 포함하는 해쉬를 추출하여 동일한 해쉬를 가진 IP를 묶어 벡터를 생성하고, 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 각 벡터에 포함된 IP와 해쉬를 하나로 묶어 새로운 봇넷식별정보와 IP 리스트를 생성하여 상기 저장부에 갱신시키는 제 9단계를 더 포함할 수도 있다.
이때, 상기 제 9단계는 상기 임시 해쉬 저장부가 상이한 두 벡터에 포함된 단위 시간 동안 스팸 메일을 발송한 IP 개수의 분포, mail 개수의 분포 및 IP histogram을 확률분포로 변환하고, 각 벡터에서 동일한 종류의 확률분포를 각각 p 와 q로서 D(p||q) + D(q||p)에 대입하여 각 확률분포에 대한 D(p||q) + D(q||p)의 KL_Divergence 값을 합산하여 상기 연관도를 구하는 단계를 더 포함하며,
Figure 112009012532118-pat00008
인 것을 특징으로 할 수 있다.
또한, 상기 제 9단계는 상기 임시 해쉬 저장부가 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
Figure 112009012532118-pat00009
를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키는 제 10단계를 더 포함하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 할 수 있다.
본 발명은 봇넷에 의해 전송되는 집단 메일 트래픽에 대하여 메일의 내용을 일일이 확인하지 않고 타겟 URL이 동일한 IP를 집단으로 리스트를 구성하여, 상기 리스트에 대응하는 봇넷을 용이하게 구분할 수 있을 뿐 아니라 상기 IP를 근거로 봇넷을 파악하여 계산상 복잡도를 감소시킴으로써 신속한 봇넷의 차단이 이루어지 도록 하는 효과가 있다.
또한, 본 발명은 상기 봇넷에 속하지만 등록되지 않아 필터링 되지 않는 IP들에 대하여 상기 리스트에 포함된 IP들이 타겟으로 하는 URL을 추출하여 추가적인 상기 봇넷에 속한 IP들을 필터링함으로써 봇넷에 추후 포함되는 밧들도 필터링하여 차단할 수 있는 효과가 있다.
더하여, 본 발명은 상기 봇넷이 URL 변형(variation)을 통해 기등록된 타겟 URL과 동일한 웹페이지를 링크하면서도 상기 타겟 URL의 해쉬와 일치하지 않아 필터링되지 않은 IP들에 대해서도 상기 해쉬 값을 추출하여 필터링되지 않은 IP의 URL에 대한 해쉬와 비교하도록 하여 IP 뿐만 아니라 해쉬를 통한 복수의 필터링 과정을 통해 봇넷의 멤버쉽을 용이하게 파악할 수 있는 효과가 있다.
이외에도, 본 발명은 IP를 이용한 필터링부와 해쉬 값을 이용하는 필터링부 사이에 피드백 과정이 이루어지도록 함으로써 상기 리스트에 등록되지 않고 상기 필터링 과정 중에서 추가적으로 필터링 되는 IP들을 상기 리스트에 갱신시켜 봇넷의 확산에 대해 실시간으로 대응할 수 있는 자체 학습효과를 가지는 시스템을 제공할 수 있다.
또한, 본 발명은 IP 또는 URL을 포함하는 해쉬 값을 통해 필터링 과정을 진행함으로써 시스템 구성상 복잡도를 기존 시스템에 비해 크게 감소시킬 수 있으며, 이를 통한 시스템 구성 비용을 현저히 감소시킬 수 있는 효과가 있다.
본 발명에 따른 봇넷 탐지 및 차단 시스템은 적어도 하나 이상의 메일 서버와 연결되어 상기 메일 서버에 수신되는 메일 트래픽이 봇넷에 의한 스팸 메일인지를 파악하기 위해 제안된 것이다.
이때, 상기 메일 트래픽은 데이터가 실시간으로 끊임없이 생성되고 전송되는스트림(stream) 형식의 데이터로서, 본 발명은 상기 메일 트래픽을 실시간으로 분석하여 봇넷의 활동여부를 파악할 수 있을 뿐 아니라 상기 봇넷(botnet)에 속해 밧(bot)으로 활동하는 IP에 대한 정보를 효과적으로 필터링하여 차단할 수 있도록 한다.
본 발명에 따른 봇넷 탐지 및 차단 시스템은 상술한 바와 같이 스트림 데이터(stream data)에 초점을 맞추고 있으며, 도 2에 도시된 바와 같이 Input Log Stream에 입력되는 상기 메일 트래픽으로부터 메일 로그를 실시간으로 추출하여 시스템 처리 과정을 밟고 차단되지 않은 나머지 로그 스트림(log stream)을 포함하는 메일 트래픽은 봇넷에 의한 스팸 메일이 아닌 것으로 판단하여 시스템을 통과해 빠져나가도록 하거나, 본 시스템과 연결된 타 스팸 필터링 시스템과 연결하여 스팸 메일 판단을 받도록 할 수 있다.
본 발명에 따른 봇넷 탐지 및 차단 시스템의 구성을 도 2를 참고하여 상세히 살펴보면, 해쉬를 포함하는 봇넷식별정보와 매칭되는 IP 리스트를 저장하는 저장부(BN Repositroy)(102)와, 상기 저장부로부터 특정 봇넷의 IP 리스트를 로드하고 상기 IP 리스트에 설정된 IP가 포함되는 메일 트래픽을 필터링하는 IP 필터링부(IP Filter)(103)와, 상기 이메일 로그를 추출하여 상기 봇넷식별정보와 비교하고 일치하는 경우 상기 봇넷식별정보에 매칭되는 IP 리스트를 상기 저장부로부터 상기 IP 필터링부에 로드하도록 제어하는 탐지부(Out Breaking Detector)(101)로 구성될 수 있다.
상기 탐지부(101)는 IP의 집단 행동을 잡아내는 모듈로서, 특정 해쉬값을 가지고 스패밍(spamming)을 하고 있는 IP들이 집단적으로 대량의 스팸을 보내고 있는지를 파악한다. 다시 말해, 특정 봇넷이 특정 해쉬값을 포함하고 있는 스팸 메일의 대량 발송을 시작했는지를 검출한다.
상기 특정 해쉬값은 스팸 메일이 지정하는 타겟 URL에 대한 해쉬값일 수 있으며, 상기 봇넷식별정보에 포함될 수 있다. 상기 탐지부(101)는 상기 봇넷식별정보를 스팸 메일을 필터링하는 다른 모듈로부터 획득할 수 있으며, 하기에서 설명하는 메일 트래픽에서 URL을 포함하는 해쉬 샘플을 추출하여 상기 봇넷식별정보로서 등록할 수도 있다.
한편, 상기 탐지부(101)는 집단 발송을 시작했는지에 대한 판단을 P-value 값을 통해 알아낼 수 있는데, 상기 P-value는 통계학에서 사용하는 특정 기준 값으로 정상 행동 패턴(자연 발생적)을 유지할때는 일정 수치 이상을 유지하다가 이상 행동 패턴(인위적 조작)을 보이면 정해진 수치 이하로 떨어지게 된다.
상기 P-value는 하기의 수학식 1에 의해 계산된다.
Figure 112009012532118-pat00010
TN : 전체 유효 IP 개수
BN : 해당 봇넷의 IP 개수
IN : 단위시간당 입력 stream을 통해 관찰된 모든 IP의 수
HIT : IN 중 BN에 포함된 IP의 개수
상기 P-value 값의 의미는 시스템이 확보한 유효 IP들 중 현재 단위시간에 들어온 IP 개수 만큼 뽑았을 때, 특정 봇넷에 속한 IP의 개수가 입력 스트림으로 들어오는 메일 트래픽의 로그에서 발견된 만큼이 발생할 가능성을 의미한다. 다시 말해, 단위 시간 동안 들어온 입력 스트림속에서 관찰된 특정 봇넷 소속의 IP의 개수가 자연 발생적으로 가능한 수치인지를 판단하는 기준이 된다. 자연 발생적으로 가능한 수치이면 봇넷이 활동을 하지 않고 있는 것이고, 자연 발생적으로 가능한 수치가 아니면 인위적 조작에 의해 동시 집단적으로 활동하고 있다는 뜻이 되어 봇넷이 활동을 하고 있다고 판단하는 것이다.
상기 IP 필터링부(103)는 상기 탐지부에서 활동이 감지된 봇넷이 나타나면 상기 특정 봇넷의 IP 리스트(A)를 상기 저장부로부터 IP 필터링부에 올리게 된다. IP 리스트(A)가 상기 IP 필터링부(103)에 올라오게 되면, 상기 IP 필터링부(103)는 상기 IP 리스트(A)에 포함된 IP를 근거로 메일 트래픽을 필터링하게 된다.
이후, 상기 IP 필터링부(103)에 의해 필터링된 메일 트래픽과 그렇지 않은 메일 트래픽에 대하여, 해쉬값을 근거로 추가적인 필터링 과정을 진행할 수 있다. 이를 통해, 상기 메일 트래픽이 타겟으로 하는 URL의 해쉬값을 추출하여, URL의 변형(variation)을 막거나 상기 IP 리스트(A)에 등록되지 않아 상기 IP 필터링부(103)에 의해 필터링되지 않은 메일 트래픽을 상기 해쉬값을 근거로 필터링할 수 있다.
이와 같은 해쉬를 통한 필터링 과정은 상기 IP 필터링부에 의해 필터링된 메일 트래픽의 로그에서 URL을 포함하는 샘플 해쉬를 추출하는 해쉬 샘플러부(hash sampler)와, 상기 해쉬 샘플러부에서 추출된 샘플 해쉬를 근거로 상기 IP 필터링부에 필터링되지 않은 메일 트래픽의 해쉬와 비교하여 일치하는 경우 필터링하고 상기 필터링부에 로드된 IP 리스트에 상기 필터링 되지 않은 메일 트래픽의 IP를 추가하여 갱신시키는 해쉬 필터링부(hash filter)를 통해 이루어질 수 있다.
상기 해쉬 샘플러부는 URL 변형(variation)을 잡아내는 것이다. URL 변형이란 봇넷이 스팸 메일을 발송할 때 기존 스팸 필터링 시스템에 쉽게 잡히지 않기 위해 타겟 URL을 여러 개의 변종으로 만들어 나누어 뿌리는 것을 말한다. 예를 들면 어떤 봇넷이 www.aaa.com 이라는 사이트를 광고하고자 하는데, 모든 스팸 메일에 www.aaa.com이라는 주소를 넣었다가 해당 URL이 블랙 리스트에 올라 버리게 되면 모든 광고가 소용이 없어지게 된다. 이를 피하기 위해 원래 구축된 웹 사이트의 주소(www.aaa.com) 이외에 다른 수십가지의 URL variation(abc.aaa.com, abd.aaa.com, acd.aaa.com 등)을 만들어 web page redirection을 통해 원래 목적의 사이트로 이동시키는 방법을 사용한다.
따라서, 봇넷의 URL 변형기술을 잡아 내기 위해 상기 해쉬 샘플러부는 상기 IP 필터링부에 의해 필터링된 IP를 가진 메일 트래픽의 샘플 해쉬를 추출하여 상기 해쉬 필터링부에 전송함으로써 상기 IP 리스트에 포함되지 않아 상기 IP 필터링부에 의해 필터링 되지 않은 IP를 가진 메일 트래픽에 대하여 필터링 할 수 있도록 한다.
우선, 기본적인 해쉬 샘플러부(104)와 해쉬 필터링부(105)의 동작을 도 3(A)를 통해 상세히 설명하면, IP 필터링부(103)에 포함된 IP 리스트(110)에 IP B에 대한 정보가 포함되지 않아 IP B는 필터링되지 않는다. 그러나 상기 IP B는 상기 IP 리스트(110)에 포함된 상기 IP A와 동일한 URL을 포함하고 있어 동일한 봇넷에 포함되어 있을 가능성이 매우 높다.
따라서, 상기 IP 필터링부(103)는 IP A를 포함하는 메일 트래픽을 필터링하여 상기 해쉬 샘플러부(104)에 전달하며, 상기 해쉬 샘플러부(104)는 상기 IP A를 포함하는 메일 트래픽의 메일 로그에서 URL(www.ABC.com)을 포함하는 해쉬를 추출하여 상기 해쉬 필터링부(105)에 전달하도록 한다.
이후, 상기 해쉬 필터링부(105)는 상기 해쉬 샘플러부(104)에서 전달된 해쉬 정보를 가지고, 상기 해쉬와 동일한 URL(www.ABC.com)에 대한 해쉬를 포함하는 상기 IP B에 대한 필터링을 수행하여 상기 IP B이 전송하는 메일 트래픽을 차단할 수 있다.
이후, 상기 해쉬 필터링부(106)는 상기 IP B를 상기 IP 필터링부(103)에 있 는 IP 리스트(110)에 갱신시키고(①), 후속적으로 상기 IP B가 전송하는 메일 트래픽이 상기 IP 필터링부(103)에서 필터링될 수 있도록 할 수 있다. 더하여 상기 IP 필터링부(103)는 상기 해쉬 필터링부(105)에 의해 갱신된 IP 리스트(110)를 근거로 상기 저장부(102)에 저장된 IP 리스트(111)를 갱신시켜(②), 차후에 상기 IP B가 추가된 IP 리스트(111)에 대응하는 봇넷이 활동할 경우 상기 IP B에 의한 메일 트래픽 전송이 IP 필터링부(103)에서 필터링될 수 있도록 하여 프로세스 과정을 단축 시킴과 동시에 IP 리스트(111)를 실시간으로 시스템 자체적으로 갱신하여 효율적으로 봇넷의 활동을 차단할 수 있다.
한편, 도 3(B)에 도시된 바와 같이 상기 해쉬 샘플러부(104)와 해쉬 필터링부(105)를 통해 상술한 URL 변형을 차단할 수 있는데, 조종자(bot-master)가 상기 IP 리스트(110)에 기등록된 IP C를 가지는 밧을 통해 IP A의 URL(www.ABC.com)을 AAA.ABC.com 으로 변형하여 스팸 메일을 전송하는 경우 상기 IP C는 상기 IP 필터링부(103)에 의해 필터링된다.
이후, 상기 IP C를 통해 상술한 바와 같이 해쉬 샘플러부(104)는 기존 URL의 변형 형태인 URL(AAA.ABC.com)을 추출할 수 있게 된다. 상기 변형 URL(AAA.ABC.com)은 상기 해쉬 샘플러부(104)에 의해 상기 해쉬 필터링부(105)에 등록되고, 상기 IP 필터링부(103)에 의해 필터링되지 않으면서 상기 IP A의 URL 정보와 동일하지 않아 상기 해쉬 필터링부(105)에 의해 필터링되지 않는 IP D에 대해서도 상기 변형 URL(AAA.ABC.com)를 추출하여 상기 해쉬 필터링부(105)에 등록시킴으로써 상기 IP D를 포함하는 메일 트래픽을 효과적으로 필터링할 수 있다. 더하 여, 상기 해쉬 필터링부(105)는 상기 IP C와 마찬가지로 상기 IP D도 상기 IP 필터링부(103)의 IP 리스트(110)에 등록시켜(①), 후발적으로 IP D에 의해 발송되는 메일 트래픽을 필터링하도록 하며, IP 필터링부(103)는 갱신된 IP D를 포함하는 IP 리스트(110)를 근거로 저장부(102)의 IP 리스트(111)를 갱신시켜(②) 다양한 URL 변형에 대하여 자체적인 확장이 이루어지도록 함으로써 효과적인 필터링 과정이 이루어지도록 할 수 있다.
한편, 상기 해쉬 필터링부는 상기 해쉬 샘플러부로부터 전달받은 URL을 포함하는 해쉬를 봇넷식별정보로서 생성하여, 필터링된 IP가 포함된 IP 리스트에 매칭되도록 상기 저장부에 저장하도록 할수도 있어, 상기 탐지부가 상기 봇넷식별정보를 이용하여 변형 URL을 통해 메일 트래픽을 발생시킬 경우 초기에 탐지부에 의해 감지하도록 할 수 있다.
상술한 과정을 이용하여, 초기 집단 활동으로 감지되어 봇넷으로 판단된 IP 셋(set) 뿐만 아니라, 초기 셋과 같은 내용을 광고하는 후발 발송 IP들도 지속적으로 상기 IP 리스트에 갱신하여 하나의 멤버쉽으로 묶어낼 수 있어 보다 정확하게 봇넷의 멤버쉽을 찾아낼 수 있다. 또한, 상기 해쉬 샘플러부를 통해 모든 IP에 대하여 URL을 포함하는 해쉬 값을 추출하고, 상기 해쉬 필터링부에 갱신시키도록 함으로써 변형 URL에 대해서도 효과적인 필터링이 이루어질 수 있다.
더하여, 상기 IP 필터링부는 상기 해쉬 샘플러부와 해쉬 필터링부를 통해 모든 IP가 발송하는 메일 트래픽에 대하여 피드백 과정을 거쳐 봇넷 여부를 재차 확인하여 IP 리스트에 등록되지 않은 IP를 추가적으로 상기 IP 리스트에 등록하여 갱 신시킴으로써, 실시간으로 활동하는 봇넷의 IP 멤버쉽을 보다 확실하게 찾아내고 차단할 수 있다.
한편, 도 2의 상기 탐지부(101)는 상기 IP 필터링부와 해쉬 필터링부에 필터링되어 봇넷으로 판단된 IP 리스트 중 상기 IP 필터링부에 의해 기설정된 시간동안 상기 저장부에 갱신이 이루어지지 않거나 상기 IP 필터링부에 로드되지 않아 현재 활동이 끝났다고 판단되는 IP 리스트를 상기 저장부에서 따로 저장 및 관리할 수 있다.
상기 탐지부는 저장되어 관리를 받는 모든 IP 리스트에 포함된 각각의 IP에 대하여 시간의 흐름에 따라 각각 위험도를 부여할 수 있다. 위험도란 봇넷 활동성 지수라고 볼 수 있는데, 위험도가 높으면 현재 혹은 가까운 미래에 다시 봇넷 활동에 참여할 수 있음을 나타내며, 위험도가 낮으면 앞으로 활동할 가능성이 낮다는 뜻이 된다. 상기 탐지부는 상기 위험도가 일정 기준 이하로 떨어지게 되면 더 이상 봇넷 활동에 참여하는 IP가 아니라고 판단되어 상기 저장부에 저장된 IP 리스트에서 삭제할 수 있다.
상기 봇넷의 위험도 계산은 반감기를 사용하여 시간의 흐름에 따라 지수적으로 감소된다. 반감기는 상기 IP 리스트에 저장된 모든 IP 의 발송 패턴을 근거로 하여 구하게 되는데, 상기 IP 리스트에 저장된 특정 IP(spamming IP)가 발송하는 스팸메일 사이 간격(inter-arrival time)의 분포를 통해 2 SD(standard deviation)을 넘어서는 포인트가 반감기가 된다.
위험도 계산은 다음 수학식 2와 같이 계산될 수 있다.
Figure 112009012532118-pat00011
이며,
상기 Ri,t는 t시간에 i번 IP가 가지는 위험도이며, 상기 i는 상기 IP 리스트에 포함된 IP의 번호이며, 상기 t는 시간이며, 상기 H는 상기 IP 리스트에 저장된 모든 IP가 발송하는 스팸 메일간격 분포도의 신뢰도 95% 구간이 되는 포인트(=반감기)이다.
상기 수학식 2에 따라 삭제된 IP는 상술한 필터링 프로세스 과정을 통해 다시 봇넷 활동 IP로 상기 탐지부에 의해 적발될 수 있으며, 상기 탐지부는 위험도를 새로 부여 하여 반감기를 통해 위험도를 확인할 수 있다.
한편, 상기 탐지부를 통해 상기 P-value를 만족시키지 못하여 IP 필터링부와 해쉬 필터링부를 통한 필터링 과정을 거치지 않거나, 상기 IP 필터링부와 해쉬 필터링부에 의해서도 필터링되지 않은 메일 트래픽은 임시 해쉬 저장부에 저장될 수 있다.
상술한 바와 같이 봇넷 활동 여부는 상기 탐지부에서 상기 봇넷에 의한 메일 트래픽의 메일 로그가 상기 봇넷식별정보와 일치하거나, 상기 P-value를 만족시키는 경우여야 하는데, 봇넷 활동 초기여서 봇넷식별정보가 없거나 상기 P-value를 만족 시키지 못하는 경우 상기 임시 해쉬 저장부로 해당 메일 트래픽이 저장된다.
즉, 상기 임시 해쉬 저장부는 봇넷의 초기 활동에 따라 새로운 봇넷식별정보와 IP 리스트를 생성시킬 수 있다. 이 과정을 도 4를 통해 상세히 설명하기로 한 다.
상기 도 4를 참고하면, 상기 임시 해쉬 저장부(106)는 상기 탐지부(101) 또는 본 시스템의 필터링 과정을 통해 필터링되지 않은 메일 트래픽으로부터 해쉬를 추출하여 같은 해쉬를 발송하는 IP들을 따로 모아 벡터 형태로 관리할 수 있다. 도시한 바와 같이, 상기 임시 해쉬 저장부(106)는 해쉬 A를 발송하는 IP-set A와 해쉬 B를 발송하는 IP-set B로 묶어서 벡터 A와 벡터 B를 생성시킬 수 있다.
이때, 상기 벡터 A와 벡터 B는 상술한 바와 같이 URL 변형을 통해 상기 해쉬에 포함된 URL이 동일한 웹 페이지를 타겟으로 지정할 수 있는데, 이와 같은 경우 상기 벡터 A와 벡터 B가 동일한 봇넷에 속할 가능성이 매우 높다. 따라서, 상기 벡터 A와 벡터 B의 연관성을 조사하여 상기 벡터 A와 벡터 B가 동일한 봇넷에 속한 것인지를 판단하고, 동일한 봇넷에 속한 벡터들이라고 판단될 경우 상기 벡터 A와 벡터 B를 통합할 필요가 있다.
상기 임시 해쉬 저장부(106)는 상기 벡터 A와 벡터 B의 연관성을 판단하기 위하여 KL_Divergence를 이용하여 상기 벡터 A와 벡터 B의 연관도를 수치화할 수 있다. 상기 연관도를 나타내기 위해서, 상기 임시 해쉬 저장부(106)는 벡터 A와 벡터 B에 각각 포함된 단위 시간 동안 메일 트래픽을 발생한 IP 개수의 분포와, mail 개수의 분포와 IP histogram을 확률분포로 변환하여 사용한다. 상기 세가지 확률분포을 이용하게 되면, 동일한 시기에 IP 규모가 유사한 벡터가 비슷한 양의 IP로 비슷한 양의 메일을 발송한 연관성 있는 벡터를 찾을 수 있다. 이와 같은 방법을 사용하는 이유는 서로 같은 조종자(bot-master)에게 조종당하는 수많은 밧들이 같은 시기에 명령을 받아 활동을 시작하고, 혹 그들이 서로 다른 target URL을 광고하도록 명령을 받았더라도 발송하는 시간과 시간당 메일을 발송하는 패턴이 굉장히 유사하기 때문이다.
따라서, 상기 임시 해쉬 저장부(106)는 세가지 확률분포마다 동일한 확률분포끼리 벡터 A의 확률분포 p와 벡터 B의 확률분포 q로서 하기 수학식 3에 대입하여 KL_Divergence 값을 구할 수 있다.
Figure 112009012532118-pat00012
상기 KL_Divergence는 대칭적(symmetric)이지 않다. 그러므로 비대칭한 벡터 A와 벡터 B의 확률분포에 대한 KL_Divergence 값을 구하기 위해서 D(p||q) + D(q||p)를 사용한다.
이렇게 해서 구한 KL_Divergence 값은 두 확률 분포가 일치하면 0, 서로 다를수록 큰 값을 갖게 된다. 따라서, 상기 세가지 확률분포에 대하여 구해진 각 KL_Divergence 값을 취합하여 기설정된 값(threshold) 이하인 경우 상기 벡터 A와 벡터 B는 연관성이 높다고 판단하여 상기 벡터 A와 벡터 B를 합칠 수 있다. 반대로, 기설정된 값 이상인 경우 상기 벡터 A와 벡터 B는 서로 연관성이 없는 벡터이며 각기 다른 봇넷에 속한 벡터로 판단하여, 벡터 A와 B의 IP 셋을 합치지 않고 그대로 유지한다.
이후, 상기 임시 해쉬 저장부(106)는 상기 벡터 A와 벡터 B가 합쳐진 경우 상기 벡터 A와 벡터 B에 포함된 IP와 해쉬를 취합하여 IP 리스트 및 봇넷식별정보를 생성할 수 있다. 반면에, 상기 벡터 A와 B가 연관성이 없어 서로 독립된 상태로 유지된 경우 각각의 IP 셋과 해쉬를 포함하는 봇넷식별정보를 그대로 유지한다.
이와 같이, 상기 임시 해쉬 저장부(106)는 저장된 모든 벡터 사이의 연관도를 구하여 상술한 바와 같이 합치거나 벡터 그대로 보존하여 새로운 IP 리스트와 봇넷식별정보를 생성할 수 있다. 이후, 상기 임시 해쉬 저장부(106)는 새로운 IP 리스트에 포함된 IP가 지속적으로 전달되어 상기 P-value를 만족하는 경우 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부(102)에 올려 상기 탐지부의 제어에 의해 새로운 봇넷에 대한 필터링이 이루어지도록 하며, 새로운 IP 리스트에 포함된 IP가 이후로 발견되지 않는 경우 상기 위험도를 부여하여 삭제하도록 할 수 있다.
도 5는 본 발명에 따른 봇넷 탐지 및 차단 시스템에 대한 전체 순서도를 도시한 도면으로서, 상기 도 5를 참고하여 상세히 설명하면 Input Log Stream을 통해 전송되는 메일 트래픽을 수신한 상기 탐지부(101)는 상기 메일 트래픽의 메일 로그로부터 해쉬를 추출하여 일치하는 봇넷식별정보가 있는지 상기 저장부(102)를 검색할 수 있다(①). 일치하는 봇넷식별정보가 있는 경우 상기 봇넷식별정보에 대응하는 IP 리스트를 상기 IP 필터링부(103)에 로드하게 되고, 상기 IP 필터링부(103)는 상기 메일 로그로부터 IP를 추출하여 일치하는 IP가 포함된 경우 상기 메일 트래픽을 필터링하게 된다(②).
필터링된 IP를 포함하는 메일 트래픽은 해쉬 샘플러부로 전송되며, 상기 해쉬 샘플러부(104)는 URL을 포함하는 해쉬 샘플을 추출하여 상기 해쉬 필터링 부(105)로 전송할 수 있다(③). 이때, 상기 해쉬 샘플러부(104)에 의해 추출되는 해쉬는 상기 IP가 타겟으로 하는 URL이 복수인 경우 복수로 추출하여 상기 해쉬 필터링부(105)에 복수의 URL 정보를 전송할 수도 있다.
상기 해쉬 필터링부(105)는 상기 해쉬 샘플러부(104)로부터 전송된 해쉬를 가지고 상기 IP 필터링부(103)에 의해 필터링되지 않은 메일 트래픽의 해쉬와 비교하여 상기 전송된 해쉬와의 비교를 통해 일치하는 경우 필터링하도록 할 수 있다(④). 이때, 상기 해쉬 필터링부(105)를 통해 필터링된 메일 트래픽이 포함하는 IP는 상기 IP 필터링부(103)에 로드된 IP 리스트에 추가하여 갱신시킬 수 있으며, 상기 IP 필터링부(103)는 갱신된 IP 리스트를 상기 저장부(102)에 업로드하여 상기 저장부(102)의 IP 리스트를 갱신시킬 수 있다(⑤).
이후, 상기 해쉬 필터링부(105)에 의해서도 필터링 되지 않은 메일 트래픽의 해당 메일 로그에 해쉬가 포함되어 있는지 여부에 따라 해쉬가 포함된 경우 임시 해쉬 저장부(106)로 전송된다(⑥).
상기 임시 해쉬 저장부(106)는 해쉬 필터링부에 의해서도 필터링되지 않은 메일 트래픽을 실시간으로 수신하여 해쉬가 일치하거나 해쉬 변형(hash variation)에 의해 연관성 있는 메일 트래픽끼리 묶어 새로운 IP 리스트와 봇넷식별정보를 생성하여 새롭게 등장한 봇넷에 대한 등록을 할 수 있다.
이후, 상기 임시 해쉬 저장부(106)로 상기 IP 리스트에 저장된 IP를 포함하는 메일 트래픽이 지속적으로 수신되어 상기 P-value를 만족하는 경우 상기 임시 해쉬 저장부(106)는 상기 IP 리스트와 봇넷식별정보를 상기 저장부(102)에 올려 새 로운 봇넷에 대한 탐지가 이루어지도록 등록할 수 있다(⑦).
한편, 상기 해쉬 필터링부(105)를 통해 필터링되지 않은 메일 트래픽이 해쉬를 가지지 않는 경우 봇넷에 의한 메일 발송이 아니라고 판단된 메일 트래픽은 contents filter(107)로 전송될 수 있다. 상기 contents filter(107)로 전송된 메일 트래픽은 타겟 URL을 가지고 있지 않거나 타겟 URL이 있어도 봇넷의 특성이 분산된 IP들의 집단 발송에 의한 스팸 메일이 아닌 소수 IP에 의한 대량 발송으로 판단된 것들이다. 이러한 메일 트래픽들은 기존의 spam filtering 기술인 contents filter(107)에 의해 스팸 여부를 판단받게 되며 이마저도 통과하면 정상 메일로 구분이 된다.
도 1은 봇넷(botnet)의 구성을 도시한 구성도.
도 2는 본 발명에 따른 봇넷 탐지 및 차단 시스템의 구성도.
도 3은 본 발명에 따른 봇넷 탐지 및 차단 시스템의 필터링 과정을 도시한 구성도.
도 4는 본 발명에 따른 봇넷 탐지 및 차단 시스템의 필터링 대상 봇넷에 대한 생성과정을 도시한 구성도.
도 5는 본 발명에 따른 봇넷 탐지 및 차단 시스템의 전체 플로우를 도시한 도면.
***도면의 주요 부분에 대한 부호의 설명***
101: 탐지부 102: 저장부
103: IP 필터링부 104: 해쉬 샘플러부
105: 해쉬 필터링부 106: 임시 해쉬 저장부
107: contents filter 110: IP 필터링부의 IP 리스트
111: 저장부의 IP 리스트

Claims (26)

  1. 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 봇넷 행동 탐지 및 차단 시스템에 있어서,
    봇넷식별정보와 매칭되는 IP 리스트를 저장하는 저장부;
    상기 저장부로부터 특정 봇넷의 IP 리스트를 로드하고, 상기 IP 리스트에 설정된 IP가 포함되는 메일 트래픽을 필터링하는 IP 필터링부; 및
    상기 이메일 로그를 추출하여 상기 저장부의 봇넷식별정보와 비교하여 기설정된 수준 이상으로 봇넷활동이 검출되면, 상기 봇넷식별정보에 매칭되는 IP 리스트를 상기 저장부로부터 상기 IP 필터링부에 로드하도록 제어하는 탐지부를 포함하고,
    상기 IP 필터링부에 의해 필터링된 메일 트래픽의 로그에서 URL을 포함하는 샘플 해쉬를 추출하는 해쉬 샘플러부; 및
    상기 해쉬 샘플러부에서 추출된 샘플 해쉬를 근거로 상기 IP 필터링부에 필터링되지 않은 메일 트래픽의 해쉬와 비교하여, 일치하는 경우 필터링하고 상기 필터링부에 로드된 IP 리스트에 상기 필터링 되지 않은 메일 트래픽의 IP를 추가하여 갱신시키는 해쉬 필터링부를 더 포함하는 봇넷 탐지 및 차단 시스템.
  2. 청구항 1에 있어서,
    상기 봇넷식별정보는 봇넷이 타겟으로 하는 URL을 포함하는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  3. 청구항 1에 있어서,
    상기 탐지부는
    Figure 112009012532118-pat00013
    를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장부로부터 상기 필터링부에 로드하도록 하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  4. 청구항 3에 있어서,
    상기 탐지부는 실시간으로 상기 P-Value 값을 계산하여 기설정된 임계값 이상으로 복귀하는 경우 상기 IP 필터링부를 제어하여 상기 특정 봇넷에 포함된 IP의 메일 트래픽을 필터링하지 않는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  5. 삭제
  6. 청구항 1에 있어서,
    상기 IP 필터링부는 상기 해쉬 필터링부에 의해 갱신된 IP 리스트와 대응하는 상기 저장부에 저장된 IP 리스트를 갱신시키는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  7. 청구항 1에 있어서,
    상기 해쉬 필터링부는 상기 IP 필터링부에 로드된 IP 리스트에 대응하는 상기 저장부에 저장된 봇넷식별정보에 상기 샘플 해쉬에 대한 정보를 추가하여 갱신시키는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  8. 청구항 1에 있어서,
    상기 해쉬 필터링부를 통해 필터링되지 않은 메일 트래픽의 로그에서 URL을 포함하는 해쉬를 추출하여 동일한 해쉬를 가진 IP를 묶어 벡터를 생성하고, 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 각 벡터에 포함된 IP와 해쉬를 하나로 묶어 새로운 봇넷식별정보와 IP 리스트를 생성하여 상기 저장부에 갱신시키는 임시 해쉬 저장부를 더 포함하는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  9. 청구항 8에 있어서,
    상기 임시 해쉬 저장부는 상이한 두 벡터에 포함된 단위 시간 동안 스팸 메일을 발송한 IP 개수의 분포, mail 개수의 분포 및 IP histogram을 확률분포로 변환하고, 각 벡터에서 동일한 종류의 확률분포를 각각 p와 q로서 D(p||q) + D(q||p)에 대입하여 각 확률분포에 대한 D(p||q) + D(q||p)의 KL_Divergence 값을 합산하여 상기 연관도를 구하며,
    Figure 112009012532118-pat00014
    인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  10. 청구항 8에 있어서,
    상기 임시 해쉬 저장부는 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
    Figure 112009012532118-pat00015
    를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  11. 청구항 1에 있어서,
    상기 탐지부는 상기 저장부에 저장된 IP 리스트의 IP 마다 위험도를 부가하여, 상기 IP가 발송하는 메일 트래픽의 지속 여부에 따라 상기 위험도를 지수적으로 감소시켜 기설정된 임계치보다 낮은 경우에 해당하는 IP를 상기 IP 리스트에서 삭제하는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  12. 청구항 11에 있어서,
    상기 위험도는
    Figure 112009012532118-pat00016
    이며,
    상기 Ri,t는 t시간에 i번 IP가 가지는 위험도이며, 상기 i는 상기 IP 리스트에 포함된 IP의 번호이며, 상기 t는 시간이며, 상기 H는 상기 IP 리스트에 저장된 모든 IP가 발송하는 스팸 메일간격 분포도의 신뢰도 95% 구간이 되는 포인트(=반감기)인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  13. 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 봇넷 행동 탐지 및 차단 시스템에 있어서,
    봇넷식별정보와 매칭되는 IP 리스트를 저장하는 저장부;
    상기 이메일 로그를 추출하여 상기 봇넷식별정보와 비교하는 탐지부;
    상기 탐지부의 비교 결과 기설정된 수준 이상으로 봇넷 활동이 검출되면 상기 메일 트래픽을 수신하여 URL을 포함하는 해쉬를 추출하며, 이후 수신되는 메일 트래픽의 해쉬가 동일한 IP 끼리 묶어 벡터를 생성하며, 상이한 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 상기 벡터를 통합하여 생성된 새로운 IP 리스트와 상기 해쉬를 포함하는 봇넷식별정보를 상기 저장부에 갱신시키는 임시 해쉬 저장부
    를 포함하는 봇넷 탐지 및 차단 시스템.
  14. 청구항 13에 있어서,
    상기 임시 해쉬 저장부는 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
    Figure 112009012532118-pat00017
    를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  15. 청구항 13에 있어서,
    상기 임시 해쉬 저장부는 상기 새로운 IP 리스트의 IP 마다 위험도를 부가하여, 상기 IP가 발송하는 메일 트래픽의 지속 여부에 따라 상기 위험도를 지수적으로 감소시켜 기설정된 임계치보다 낮은 경우에 해당하는 IP를 상기 IP 리스트에서 삭제하는 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  16. 청구항 15에 있어서,
    상기 위험도는
    Figure 112009012532118-pat00018
    이며,
    상기 Ri,t는 t시간에 i번 IP가 가지는 위험도이며, 상기 i는 상기 IP 리스트에 포함된 IP의 번호이며, 상기 t는 시간이며, 상기 H는 상기 IP 리스트에 저장된 모든 IP가 발송하는 스팸 메일간격 분포도의 신뢰도 95% 구간이 되는 포인트(=반감기)인 것을 특징으로 하는 봇넷 탐지 및 차단 시스템.
  17. 적어도 하나 이상의 메일 서버와 연결되어 실시간 스트림(stream) 형태로 수신되는 메일 트래픽으로부터 이메일 로그를 추출하여 봇넷에 의한 스팸메일을 차단하는 방법에 있어서,
    봇넷의 활동 여부를 탐지하는 탐지부가 상기 이메일 로그에 포함된 해쉬를 기설정된 봇넷식별정보와 비교하는 제 1단계;
    상기 제 1단계의 결과 상기 해쉬가 봇넷식별정보와 비교하여 기설정된 수준 이상으로 봇넷 활동이 검출되면 상기 탐지부가 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장하는 저장부를 제어하여 상기 IP 리스트를 IP에 대응하는 메일 트래픽을 필터링하는 IP 필터링부에 로드하도록 하는 제 2단계;
    상기 탐지부가 상기 메일 트래픽을 상기 IP 필터링부에 전달하는 제 3단계; 및
    상기 IP 필터링부가 상기 IP 리스트를 근거로 상기 메일 트래픽의 IP와 비교하여 상기 메일 트래픽의 필터링 여부를 결정하는 제 4단계를 포함하고,
    로그에서 해쉬를 추출하는 해쉬 샘플러부가 상기 IP 필터링부에 의해 필터링된 메일 트래픽의 로그에서 URL을 포함하는 샘플 해쉬를 추출하는 제 5단계; 및
    상기 제 5단계에서 추출된 샘플 해쉬를 근거로 필터링하는 해쉬 필터링부가 상기 IP 필터링부에 필터링되지 않은 메일 트래픽의 해쉬를 상기 샘플 해쉬와 비교하여 일치하는 경우 필터링하고 상기 필터링부에 로드된 IP 리스트에 상기 필터링 되지 않은 메일 트래픽의 IP를 추가하여 갱신시키는 제 6단계를 더 포함하는 봇넷 탐지 및 차단 방법.
  18. 청구항 17에 있어서,
    상기 봇넷식별정보는 봇넷이 타겟으로 하는 URL에 대한 해쉬 정보인 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  19. 청구항 17에 있어서,
    상기 제 1단계는 상기 해쉬가 상기 봇넷식별정보와 일치하는 경우 상기 탐지부가
    Figure 112009012532118-pat00019
    를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 봇넷식별정보에 매칭되는 IP 리스트를 저장부로부터 상기 필터링부에 로드하도록 하는 단계를 더 포함하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  20. 청구항 19에 있어서,
    상기 제 4단계는 상기 IP 필터링부가 상기 P-Value 값이 기설정된 임계값 이상으로 복귀하는 경우 상기 탐지부의 제어에 의해 특정 봇넷에 포함된 IP의 메일 트래픽을 필터링하지 않는 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  21. 삭제
  22. 청구항 17에 있어서,
    상기 제 6단계에서 상기 IP 필터링부가 상기 해쉬 필터링부에 의해 갱신된 IP 리스트와 대응하는 상기 저장부에 저장된 IP 리스트를 갱신시키는 제 7단계를 더 포함하는 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  23. 청구항 17에 있어서,
    상기 제 6단계에서 상기 해쉬 필터링부가 상기 IP 필터링부에 로드된 IP 리스트에 대응하는 상기 저장부에 저장된 봇넷식별정보에 상기 샘플 해쉬에 대한 정보를 추가하여 갱신시키는 제 8단계를 더 포함하는 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  24. 청구항 17에 있어서,
    상기 제 6단계에서 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 생성시키는 임시 해쉬 저장부가 상기 해쉬 필터링부를 통해 필터링되지 않은 메일 트래픽의 로그에서 URL을 포함하는 해쉬를 추출하여 동일한 해쉬를 가진 IP를 묶어 벡터를 생성하고, 벡터 사이의 연관도를 KL_Divergence를 통해 계산하여 상기 연관도가 기설정된 임계치 이하인 경우 각 벡터에 포함된 IP와 해쉬를 하나로 묶어 새로운 봇넷식별정보와 IP 리스트를 생성하여 상기 저장부에 갱신시키는 제 9단계를 더 포함하는 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  25. 청구항 24에 있어서,
    상기 제 9단계는 상기 임시 해쉬 저장부가 상이한 두 벡터에 포함된 단위 시간 동안 스팸 메일을 발송한 IP 개수의 분포, mail 개수의 분포 및 IP histogram을 확률분포로 변환하고, 각 벡터에서 동일한 종류의 확률분포를 각각 p와 q로서 D(p||q) + D(q||p)에 대입하여 각 확률분포에 대한 D(p||q) + D(q||p)의 KL_Divergence 값을 합산하여 상기 연관도를 구하는 단계를 더 포함하며,
    Figure 112010087724913-pat00020
    인 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
  26. 청구항 24에 있어서,
    상기 제 9단계는 상기 임시 해쉬 저장부가 상기 새로운 IP 리스트에 포함된 IP를 가진 메일 트래픽이 지속적으로 상기 해쉬 필터링부로부터 전송되어
    Figure 112010087724913-pat00021
    를 통해 상기 P-Value 값이 기설정된 임계값 이하일 때 상기 새로운 IP 리스트와 봇넷식별정보를 상기 저장부에 갱신시키는 제 10단계를 더 포함하며, TN은 단위시간동안 측정된 유효 IP 개수이며, BN은 상기 IP 리스트의 IP 개수이며, IN은 단위시간당 입력 스트림을 통해 관찰된 모든 IP의 수이며, HIT는 IN 중 BN에 포함된 IP의 개수인 것을 특징으로 하는 봇넷 탐지 및 차단 방법.
KR1020090017304A 2009-02-27 2009-02-27 봇넷 탐지 및 차단 시스템 및 방법 KR101048159B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090017304A KR101048159B1 (ko) 2009-02-27 2009-02-27 봇넷 탐지 및 차단 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090017304A KR101048159B1 (ko) 2009-02-27 2009-02-27 봇넷 탐지 및 차단 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20100098242A KR20100098242A (ko) 2010-09-06
KR101048159B1 true KR101048159B1 (ko) 2011-07-08

Family

ID=43005250

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090017304A KR101048159B1 (ko) 2009-02-27 2009-02-27 봇넷 탐지 및 차단 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101048159B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101322692B1 (ko) 2013-07-19 2013-10-28 (주)지란지교소프트 스팸 메일을 발송한 봇넷 탐지 방법 및 시스템

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101036750B1 (ko) 2011-01-04 2011-05-23 주식회사 엔피코어 좀비행위 차단 시스템 및 방법
CN106709777A (zh) * 2015-11-18 2017-05-24 阿里巴巴集团控股有限公司 一种订单聚类方法及装置,以及反恶意信息的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060179113A1 (en) 2005-02-04 2006-08-10 Microsoft Corporation Network domain reputation-based spam filtering
US20080320095A1 (en) 2007-06-25 2008-12-25 Microsoft Corporation Determination Of Participation In A Malicious Software Campaign

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060179113A1 (en) 2005-02-04 2006-08-10 Microsoft Corporation Network domain reputation-based spam filtering
US20080320095A1 (en) 2007-06-25 2008-12-25 Microsoft Corporation Determination Of Participation In A Malicious Software Campaign

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101322692B1 (ko) 2013-07-19 2013-10-28 (주)지란지교소프트 스팸 메일을 발송한 봇넷 탐지 방법 및 시스템

Also Published As

Publication number Publication date
KR20100098242A (ko) 2010-09-06

Similar Documents

Publication Publication Date Title
CN109951500B (zh) 网络攻击检测方法及装置
US10218740B1 (en) Fuzzy hash of behavioral results
CN107040517B (zh) 一种面向云计算环境的认知入侵检测方法
Wan et al. Feature-selection-based ransomware detection with machine learning of data analysis
Haddadi et al. Benchmarking the effect of flow exporters and protocol filters on botnet traffic classification
CN111131137B (zh) 可疑封包检测装置及其可疑封包检测方法
EP2863611B1 (en) Device for detecting cyber attack based on event analysis and method thereof
Robinson et al. Ranking of machine learning algorithms based on the performance in classifying DDoS attacks
CN110519150B (zh) 邮件检测方法、装置、设备、***及计算机可读存储介质
US20090282478A1 (en) Method and apparatus for processing network attack
CN108183888B (zh) 一种基于随机森林算法的社会工程学入侵攻击路径检测方法
JP6408395B2 (ja) ブラックリストの管理方法
CN111259204A (zh) 基于图算法的apt检测关联分析方法
Gascon et al. Reading between the lines: content-agnostic detection of spear-phishing emails
Khan et al. A hybrid technique to detect botnets, based on P2P traffic similarity
CA2977807C (en) Technique for detecting suspicious electronic messages
Fallah et al. Android malware detection using network traffic based on sequential deep learning models
CN106302450A (zh) 一种基于ddos攻击中恶意地址的检测方法及装置
KR101045330B1 (ko) 네트워크 기반의 http 봇넷 탐지 방법
KR101048991B1 (ko) 봇넷 행동 패턴 분석 시스템 및 방법
KR101048159B1 (ko) 봇넷 탐지 및 차단 시스템 및 방법
Vural et al. Mobile botnet detection using network forensics
KR101488271B1 (ko) Ids 오탐 검출 장치 및 방법
Bijalwan et al. Botnet Forensic: Issues, Challenges and Good Practices.
JP5531064B2 (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: 20140625

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150513

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180704

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190704

Year of fee payment: 9