KR102119718B1 - 의심스러운 전자 메시지를 검출하기 위한 기술 - Google Patents

의심스러운 전자 메시지를 검출하기 위한 기술 Download PDF

Info

Publication number
KR102119718B1
KR102119718B1 KR1020170114995A KR20170114995A KR102119718B1 KR 102119718 B1 KR102119718 B1 KR 102119718B1 KR 1020170114995 A KR1020170114995 A KR 1020170114995A KR 20170114995 A KR20170114995 A KR 20170114995A KR 102119718 B1 KR102119718 B1 KR 102119718B1
Authority
KR
South Korea
Prior art keywords
message
feature
content feature
content
database
Prior art date
Application number
KR1020170114995A
Other languages
English (en)
Other versions
KR20180031570A (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 레타르우스 게엠베하
Publication of KR20180031570A publication Critical patent/KR20180031570A/ko
Application granted granted Critical
Publication of KR102119718B1 publication Critical patent/KR102119718B1/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/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • 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
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • H04L51/12
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/164Implementing security features at a particular protocol layer at the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/144Detection or countermeasures against botnets
    • 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/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/308Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information retaining data, e.g. retaining successful, unsuccessful communication attempts, internet access, or e-mail, internet telephony, intercept related information or call content

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 개시는 의심스러운 전자 메시지를 검출하는 방법에 관한 것이다. 상기 방법은 복수의 메시지 송신기들 및 복수의 메시지 수신기들과 통신하는 메시징 서버에서 수행되고, 상기 복수의 메시지 송신기들로부터 적어도 하나의 메시지 수신기로 송신된 전자 메시지들을 수신하는 단계; 각각의 수신된 메시지로부터 적어도 하나의 메시지 송신기 특징 및 적어도 하나의 메시지 컨텐츠 특징을 추출하는 단계; 상기 추출된 적어도 하나의 메시지 송신기 특징 및 적어도 하나의 메시지 컨텐츠 특징을 데이터베이스에 기록하는 단계; 상기 데이터베이스에 기록된 상기 메시지 컨텐츠 특징에 기초하여, 현재의 메시지와 관련될 수 있는 특정 컨텐츠 특징이 과거에 이미 기록되었는지 여부를 판정하는 단계; 상기 특정 컨텐츠 특징이 이미 과거에 기록되었다면, 상기 데이터베이스에 기록된 메시지 송신기 특징에 기초하여, 상기 특정 컨텐츠 특징과 연관될 수 있는 메시지 송신기들의 개수를 판정하는 단계; 및 상기 특정 컨텐츠 특징과 연관될 수 있는 상기 판정된 메시지 송신기들의 개수가 미리 결정된 임계 값을 초과하면 상기 현재 메시지를 의심스러운 것으로 분류하는 단계를 포함한다.

Description

의심스러운 전자 메시지를 검출하기 위한 기술{Technique for Detecting Suspicious Electronic Messages}
본 발명은 일반적으로 정보 기술의 보안 형태에 관한 것이다. 특히, 본 발명은 악의적인 전자 메시지를 검출하는 기술에 관한 것이다.
전자 메일 메시지(또는 간단히 말해 이메일), 인스턴트 메시지, 전자 팩스 메시지 등과 같은 전자 메시지는 네트워크로 연결된 많은 컴퓨터 장치를 통해 멀웨어 또는 스팸을 확산하는 데 자주 사용된다. 이러한 맥락에서, 용어 "멀웨어" 또는 "악의적인 소프트웨어"는 컴퓨터 운영, 데이터에 민감한 정보, 또는 사설 또는 회사 컴퓨터 시스템에의 접근을 방해하는 데 사용되는 소프트웨어 또는 소프트웨어 일부를 의미한다. 전자 메시지에 내장되거나 첨부되어 전자 메시지를 통해 배포되는 멀웨어는 무엇보다도 바이러스, 웜, 트로이 목마, 랜섬웨어(ransomware), 스케어웨어(scareware), 애드웨어(adware) 및/또는 기타 악의적인 프로그램을 포함할 수 있다. "스팸"이라는 용어는 대다수의 메시지 수신기에 보내지며 일반적으로 원하지 않는 광고 컨텐츠 또는 사용자가 요청하지 않은 다른 유형의 스팸 컨텐츠를 포함하는 원치 않는 메시지를 나타낸다.
스팸 메일과 같은 스팸 메시지는 종종 봇넷(botnet) 또는 "좀비 네트워크"에 의해 전송된다. 봇넷 또는 좀비 네트워크는 해커가 악의적인 목적으로 액세스하여 사용할 수 있는 감염된 컴퓨터 장치의 네트워크이다. 예를 들어, 해커가 봇넷 컴퓨터 장치를 사용하여 스팸 공격을 익명의 방법으로 수행하거나 분산 서비스 거부(DDoS) 공격에 참여할 수 있다. 그러한 공격은 원래의 해커로부터가 아니고, 분산된 많은 감염 컴퓨터에서 시작되기 때문에, 그러한 공격을 식별하고 통제하기가 어렵다. 실제로 종래의 멀웨어 방지 시스템이나 스팸 필터가 그러한 봇넷 공격을 검출할 수 있을 때까지는 시간이 걸린다. 그러나 시간이 많이 경과할수록, 더 많은 스팸 메시지 또는 악성 컨텐츠가 인터넷을 통해 확산되어 컴퓨터를 감염시킬 수 있다.
US2009/0265786A1은 레이블이 없는 이메일의 세트에 기초하는 자동 봇넷 스팸 서명 생성 기술을 설명한다. 이 기술은 다음과 같이 작동한다: 레이블이 없는 전자 메일의 세트가 입력으로 사용되며 이메일의 세트에 포함된 URL이 추출되어 그들의 도메인에 따라 복수의 URL 그룹으로 그룹화된다. 그런 다음 생성된 URL 그룹을 분석하여 기본 봇넷을 가장 잘 나타내는 그룹을 판정한다. 봇넷의 특성을 가장 잘 나타내는(즉, 많은 수의 분산된 송신기들 간에 가장 강한 일시적 상관관계를 나타내는) URL 그룹이 선택된다.
따라서, 통신 네트워크에서 의심스럽거나 악의적인 전자 메시지를 빠르고 효율적인 방법으로 검출할 수 있는 새로운 검출 기술의 필요성이 대두되고 있다.
제1 형태에 따르면, 의심스러운 전자 메시지를 검출하는 방법이 제공되고, 이 방법은 복수의 메시지 송신기들 및 복수의 메시지 수신기들과 통신하는 메시징 서버에서 수행된다. 상기 방법은 상기 복수의 메시지 송신기들로부터 적어도 하나의 메시지 수신기로 송신된 전자 메시지들을 수신하는 단계; 각각의 수신된 메시지로부터 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 추출하는 단계; 상기 추출된 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 데이터베이스에 기록하는 단계; 상기 데이터베이스에 기록된 상기 메시지 컨텐츠 특징(CF)에 기초하여, 현재의 메시지와 관련될 수 있는 특정 컨텐츠 특징이 과거에 이미 기록되었는지 여부를 판정하는 단계; 상기 특정 컨텐츠 특징이 이미 과거에 기록되었다면, 상기 데이터베이스에 기록된 메시지 송신기 특징(AF)에 기초하여, 상기 특정 컨텐츠 특징과 연관될 수 있는 메시지 송신기들의 개수(N)를 판정하는 단계; 및 상기 특정 컨텐츠 특징과 연관될 수 있는 상기 판정된 메시지 송신기들의 개수가 미리 결정된 임계 값(N1)을 초과하면 상기 현재 메시지를 의심스러운 것으로 분류하는 단계를 포함한다.
본 명세서에서, 용어 "전자 메시지"(또는 "메시지"로 약칭함)는 광범위하게 해석될 수 있다. "전자 메시지" 또는 "메시지"는 기호, 알파벳 및/또는 숫자, 그래픽 요소 등의 형태로 된 메시지를 포함하며 스팸 컨텐츠 또는 멀웨어를 끼워넣거나 확산하는 데에 사용될 수 있는 모든 디지털 데이터 항목 또는 모든 디지털 데이터 일부를 의미할 수 있다. 예를 들어, 전자 메시지로는 전자 메일 메시지, 인스턴트 메시지 또는 전자 팩스 메시지가 있을 수 있다.
또한, "메시지 송신기" 또는 "메시지 송신기들"은 스마트폰, 태블릿, 퍼스널 컴퓨터 및/또는 임의의 다른 개인용 또는 기업용 컴퓨터 장치와 같이, 전자 메시지를 전송하도록 구성된 임의의 전자 장치 또는 장치일 수 있다. 적어도 하나의 "메시지 수신기"는 스마트폰, 태블릿, 개인용 컴퓨터 및/또는 임의의 다른 개인 또는 회사 컴퓨터 장치와 같이, 전자 메시지를 수신하도록 구성된 임의의 장치일 수 있다.
또한 스팸 메시지 또는 악의적인 메시지일 가능성이 가장 높은 메시지를 "의심스러운 메시지"라고 한다. 발생 빈도 및 전송된 메시지의 컨텐츠에 따라 메시지는 스팸 메시지 또는 악성 메시지로 간주된다. 본 발명에 따르면, 특정 메시지 컨텐츠가 스팸 및/또는 악의적인지 여부를 추정하기 위해, 복수의 메시지 송신기로부터 복수의 메시지 수신기로의 메시지 흐름 내에서 상이한 메시지 컨텐츠의 발생 빈도가 검출된다.
상기 방법은 각각의 추출된 메시지 송신기 특징 및 메시지 컨텐츠 특징에 대한 타임스탬프를 생성하는 단계와, 추출된 메시지 송신기 특징 및 메시지 컨텐츠 특징과 함께 상기 타임스탬프를 상기 데이터베이스에 기록하는 단계를 더 포함할 수 있다. 상기 생성된 타임스탬프는 상기 추출된 메시지 송신기 특징과 상기 하나 이상의 전자 메시지에 의해 전달된 추출된 메시지 컨텐츠 특징이 메시징 서버에서 발생하는 시간을 나타낼 수 있다. 추출된 메시지 송신기 특징 및 추출된 메시지 컨텐츠 특징을 대응하는 타임스탬프와 함께 기록함으로써, 과거의 특정 시간 간격 동안 상이한 메시지 송신기와 관련하여 컨텐츠 특징의 시간 발생(즉, 시간 발생 패턴)을 추적하는 것이 가능하다.
메시지 송신기 특징 및 메시지 컨텐츠 특징을 기록하는 단계는 타임스탬프된 메시지 송신기 특징 및 메시지 컨텐츠 특징을 적어도 하나의 인덱스 데이터 구조로 구성하는 단계를 더 포함할 수 있다. 동일한 타임스탬프가 할당된 복수의 동일한 메시지 송신기 특징 및 복수의 동일한 메시지 컨텐츠 특징은 인덱스 데이터 구조에 단 한 번만 기록될 수 있다. 일 실시예에 따르면, 타임스탬프된 메시지 송신기 특징 및 메시지 컨텐츠 특징은 2개의 개별적인 인덱스 데이터 구조로 기록될 수 있다. 제1 인덱스 데이터 구조는 타임스탬프된 메시지 컨텐츠 특징의 데이터 세트를 포함할 수 있고, 제2 인덱스 데이터 구조는 타임스탬프된 메시지 컨텐츠 특징 및 메시지 어드레스 특징의 데이터 세트를 포함할 수 있다.
현재 메시지로부터 추출된 특정 컨텐츠 특징이 데이터베이스에서 이미 이용 가능한지 여부를 판정하기 위해, 현재의 메시지와 연관된 특정 컨텐츠 특징과 데이터베이스 내의 기록된 컨텐츠 특징 사이의 동일성 또는 유사성 검사가 수행된다. 상기 동일성 또는 유사성 검사는 데이터베이스 내의 동일하거나 유사한 컨텐츠 특징 기록을 검색하는 것을 포함할 수 있다. 데이터베이스가 상술한 바와 같이 2개의 인덱스 데이터 구조를 포함하는 경우, 제1 인덱스 데이터 구조에서 적어도 하나의 동일하거나 유사한 컨텐츠 특징에 대한 룩업(look-up)이 수행될 수 있다. 데이터베이스 내의 동일하거나 유사한 컨텐츠 특징 기록에 대한 룩업은 과거에 미리 결정된 시간 창과 연관된 컨텐츠 특징 기록으로 제한될 수 있다. 다음에, 이 시간 창을 룩업 검출 창이라고 한다. 룩업 검출 창은 마지막 몇 시간으로 제한될 수 있다.
특정 컨텐츠 특징과 연관될 수 있는 다수의 메시지 송신기를 판정하는 단계는 특정 컨텐츠 특징과 관련될 수 있는 데이터베이스 내의 메시지 송신기 특징을 검색하는 단계를 포함할 수 있다. 데이터베이스가 상술한 바와 같이 2개의 인덱스 데이터 구조를 포함하는 경우, 메시지 송신기 특징에 대한 룩업은 제2 인덱스 데이터 구조에서 수행될 수 있다. 다시 말하자면, 데이터베이스의 룩업은 사전 판정된 룩업 검출 창 내의 메시지 송신기 특징 기록으로 제한될 수 있다. 메시지 송신기 특징 기록은 메시지 송신기를 나타내기 때문에, 발견된 메시지 송신기 특징으로부터 얼마나 많은 메시지 송신기가 같거나 비슷한 메시지 컨텐츠를 보냈는지를 쉽게 얻을 수 있다. 판정된 수의 메시지 송신기가 미리 결정된 임계 값을 초과하는 경우, 이 컨텐츠는 봇넷에서 유래한 스팸 컨텐츠이거나 악의적 컨텐츠라고 추정할 수 있다.
미리 정해진 임계 값은 미리 설정되거나 동적으로 조정될 수 있다. 미리 결정된 임계 값의 조정은 선택된 룩업 검출 창 및/또는 메시지 송신기가 판정될 특정 컨텐츠 특징에 의존할 수 있다. 임계 값은 통계적인 유의 수준에 따라 설정되거나 조정될 수 있다. 즉, 스팸 컨텐츠 또는 악성 컨텐츠를 의심스럽지 않은 컨텐츠로 잘못 분류할 확률이 5% 미만, 바람직하게는 1% 미만이 되도록 하는 임계 값을 설정할 수 있다.
상기 분류 단계는 다음의 단계: 현재 메시지를 의심스러운 메시지로서 태깅하는 단계; 컨텐츠를 의심스럽거나 악성 컨텐츠로서 블랙리스트에 등록하는 단계 중 적어도 하나를 더 포함할 수 있다..
하나의 구현 변형 예에 따르면, 현재 메시지를 의심스러운 것으로 분류한 후에, 상기 방법은 현재 메시지를 차단하는 단계; 현재 메시지를 격리하는 단계; 및/또는 현재 메시지를 AV 분석되게 하는 단계를 포함할 수 있다. AV 분석 결과, 의심스러운 메시지가 의심스럽지 않다고 생각되는 경우, 메시지는 의도된 메시지 수신기에게 라우팅된다.
추출된 메시지 송신기 특징은 메시지 송신기의 어드레스 또는 어드레스 일부를 나타낼 수 있다. 따라서, 추출된 메시지 송신기 특징은 메시지의 송신기를 식별하는데 사용될 수 있다. 일 변형 예에 따르면, 추출 메시지 송신기 특징은 송신기 어드레스 또는 그 일부의 해시 값일 수 있다.
메시지 컨텐츠 특징은 메시지의 첨부, 메시지의 제목 라인 컨텐츠, 메시지에 포함된 URL 또는 URL 일부 및/또는 메시지에 포함된 다른 컨텐츠를 나타낼 수 있다. 따라서, 추출된 메시지 컨텐츠 특징은 메시지의 컨텐츠를 식별하는데 사용될 수 있다. 일 변형 예에 따르면, 메시지 컨텐츠 특징은 메시지의 첨부의 해시 값, 메시지의 제목 라인 컨텐츠, 메시지에 포함된 URL 또는 URL 일부 및/또는 메시지에 포함된 다른 컨텐츠일 수 있다.
제2 형태에 따르면, 컴퓨터 프로그램 제품이 컴퓨터 장치(예를 들어, 메시징 서버)상에서 실행될 때, 상기 방법을 수행하기 위한 프로그램 코드 부분을 갖는 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 (비일시적) 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
제3 형태에 따르면, 의심스러운 전자 메시지를 검출하기 위한 메시징 서버가 제공되며, 상기 메시징 서버는 복수의 메시지 송신기 및 복수의 메시지 수신기와 통신한다. 상기 메시징 서버는 상기 복수의 메시지 송신기들로부터 적어도 하나의 메시지 수신기로 전송된 전자 메시지들을 수신하도록 구성되며; 각각의 수신된 메시지로부터 적어도 하나의 메시지 송신기 특징 및 적어도 하나의 메시지 컨텐츠 특징을 추출하도록 구성된 분석 유닛; 상기 추출된 적어도 하나의 메시지 송신기 특징 및 적어도 하나의 메시지 컨텐츠 특징을 데이터베이스에 기록하도록 구성된 기록 유닛; 상기 데이터베이스에 기록된 상기 메시지 컨텐츠 특징에 기초하여, 현재 메시지와 연관될 수 있는 특정 컨텐츠 특징이 이미 과거에 기록되었는지 여부를 판정하고, 상기 특정 컨텐츠 특징이 과거에 이미 기록되었다면, 상기 데이터베이스에 기록된 상기 메시지 송신기 특징에 기초하여, 상기 특정의 컨텐츠 특징과 연관될 수 있는 메시지 송신기들의 개수를 더 판정하도록 구성된 판정 유닛; 및 상기 특정 컨텐츠 특징과 연관될 수 있는 상기 판정된 메시지 송신기의 개수가 미리 결정된 임계 값을 초과하면 상기 현재 메시지를 의심스러운 것으로 분류하도록 구성된 분류 유닛을 포함한다.
메시징 서버는 각각의 추출된 메시지 송신기 특징 및 메시지 컨텐츠 특징에 대해 디지털 타임스탬프를 제공하도록 구성된 타임스탬핑 유닛을 더 포함할 수 있다.
메시징 서버는 데이터베이스를 저장하도록 구성된 데이터 저장 장치를 더 포함할 수 있다.
메시징 서버는 전술한 방법을 수행하도록 구성된 분산 컴퓨터 장치를 포함하는 단일의 컴퓨터 장치 또는 컴퓨터 시스템으로서 구현될 수 있다.
본 명세서에 기술되는 본 발명의 추가의 상세 사항, 형태 및 이점은 다음의 도면으로부터 명백해질 것이다:
도 1은 본 발명의 예시적인 실시예에 따른 의심스러운 전자 메시지를 검출하도록 구성된 메시징 서버를 나타내는 블록도이다.
도 2a-2c는 본 발명의 예시적인 실시예에 따른 의심스러운 전자 메시지를 검출하는 방법을 나타내는 흐름도이다.
도 3은 도 2a-2c의 방법의 응답 행동이 종래의 스팸 및 멀웨어 검출 기술의 응답 행동과 비교되는 타임 라인을 나타낸다.
이하의 설명에서, 제한이 아닌 설명의 목적으로, 본 명세서에 제시된 기술의 철저한 이해를 제공하기 위해 구체적인 상세 사항이 제시된다. 개시된 기술이 이런 특정 상세 사항들에서 벗어나는 다른 실시예들에서도 실시될 수 있음은 당업자에게 명백할 것이다.
도 1은 의심스러운 전자 메시지를 검출하기 위한 후술되는 기술을 구현하도록 설계된 메시지 서버(1000)의 예시적인 실시예를 블록도 형태로 도시한다.
스팸 메시지 또는 악의적인 메시지일 가능성이 가장 높은 메시지를 의심스러운 메시지라고 한다. 발생 빈도 및 전송된 메시지의 내용에 따라서, 메시지는 스팸 메시지 또는 악성 메시지로 간주된다. 후술되는 바와 같이, 메시징 서버(1000)는 특정 메시지 컨텐츠가 스팸 및/또는 악의적인지를 평가하기 위해서 복수의 메시지 송신기들(110-110m)로부터 복수의 메시지 수신기들(120-120k)로의 메시지 흐름 내에서 상이한 메시지 내용의 발생 빈도를 순서대로 평가하도록 설계된다.
도 1에 도시된 바와 같이, 메시징 서버(1000)는 (인터넷과 같은) 통신 네트워크의 일부인 복수의 메시지 송신기들(110-110m) 및 복수의 메시지 수신기들(120-120k)과 통신한다. 도 1에서 m개의 상이한 메시지 송신기들(110-110m)이 임의의 개수의 메시지들(101, 102, 103)을 메시징 서버(1000)에 송신하기 위해 네트워크에서 이용 가능할 수 있음을 나타내기 위해 메시지 송신기들(110 및 110m)만을 나타내었고, 이 때 m은 2 이상의 정수이다. 마찬가지로, 도 1은 메시지 수신기(120 및 120k)만을 도시한다. 그러나 k개의 상이한 메시지 수신기는 복수의 메시지 송신기(110-110m)에 의해 송신된 메시지(101, 102, 103)를 수신하기 위해 메시징 서버(1000)와 통신할 수 있음이 명백하며, 이때 k는 2 이상의 정수이다. 메시지 송신기들(110-110m) 및 메시지 수신기들(120-120k)은 (PDA, 셀 폰, 스마트폰, 노트북과 같은) 휴대용 사용자 단말기 또는 고정 컴퓨터 장치와 같이, 전자 메시지들(101, 102, 103)을 송/수신할 수 있는 전자 장치들의 형태로 각각 구현될 수 있다.
메시징 서버(1000)는 메시지 송신기들(110-110m)로부터 전송된 전자 메시지들(101, 102, 103)을 연속적으로 수신하고 수신 메시지들(101, 102, 103)을 의도된 메시지 수신기들(120-120k)로 라우팅하도록 설계된다. 따라서, 복수의 메시지 송신기들(110-110m)로부터 메시징 서버(1000)를 통해 복수의 메시지 수신기들(120-120k)로의 메시지들(101, 102, 103)의 연속적인 흐름이 있다. 이 흐름을 도 1에서 굵은 화살표로 나타낸다. 메시징 서버(1000)는 스팸 및 악의적인 행동에 관해서 수신 메시지(101, 102, 103)를 분석하도록 구성되기 때문에, 모든 수신 메시지(101, 102, 103)가 의도한 메시지 수신기들(120-120k)로 라우팅되는 것은 아님은 명백하다. 오히려, 악의적인 것으로 밝혀지거나 또는 스팸 메시지로서 명확하게 간주될 수 있는 메시지(101, 102, 103)는 필터링되어, 대응하는 메시지 수신기(120-120k)로 전송되지 않을 수 있다. 메시징 서버(1000)의 필터링 동작은 도 1의 점선 화살표로 표시된다.
계속 도 1을 참조하여, 메시징 서버(1000)의 구조 및 기능을 더 설명한다. 메시징 서버(1000)는 분석 유닛(1010), 타임스탬핑 유닛(1020), 기록 유닛(1030), 판정 유닛(1040), 분류 유닛(1050) 및 데이터베이스(1060)를 포함한다. 메시징 서버(1000)는 제1 인터페이스(1080) 및 제2 인터페이스(1090)을 더욱 포함한다. 선택적으로, 메시징 서버(1000)는 보안 유닛(1070)을 포함할 수 있다. 도 1에 도시된 바와 같이, 유닛들(1010 내지 1070)은 서로 및 인터페이스(1080 및 1090)와 통신한다.
분석 유닛(1010), 스탬핑 유닛(1020), 기록 유닛(1030), 판단 유닛(1040), 분류 유닛(1050) 및 보안 유닛(1070)은 별도의 소프트웨어 모듈, 하드웨어 모듈 또는 소프트웨어/하드웨어 결합 모듈로 구현될 수 있다. 대안적으로, 분석 유닛(1010), 타임 스탬핑 유닛(1020), 기록 유닛(1030), 판정 유닛(1040) 및 분류 유닛(1050)은 또한 공통으로 설계된 소프트웨어 및/또는 하드웨어 모듈의 서브 모듈로서 구현될 수 있다. 당업자라면 상기 언급된 유닛들이 프로그램 마이크로 프로세서, 주문형 집적 회로(ASIC), 디지털 신호 프로세서(DSP) 또는 범용 컴퓨터와 관련하여 기능하는 소프트웨어를 사용하여 구현될 수 있다는 것을 이해할 것이다.
제1 통신 인터페이스(1080)는 메시지 송신기들(110-110m)로부터 전자 메시지들(101, 102, 103)을 수신하고 수신된 메시지들(101, 102, 103)을 분석 유닛(1010)에 제공하도록 구성된다. 또한, 제2 통신 인터페이스(1090)는 메시징 서버(1000)에 의해 수신되고 메시징 서버(1000)에 의해 차단되지 않는 메시지(101, 102, 103)를 예정된 메시지 수신기들(120-120k)에 송신하도록 구성된다. 두 통신 인터페이스(1080, 1090)는 한쪽에서는 메시지 송신기들(110-110m)과 메시징 서버(1000) 사이 그리고 다른 쪽에서는 메시징 수신기들(120-120k)과 메시징 서버(1000) 사이에서 메시지 통신이 실현되는 방법에 따라서, 무선 통신 인터페이스 (예를 들어, 무선 송신 인터페이스) 및/또는 유선 통신 인터페이스의 형태로 구현될 수 있다.
다른 변형 예에 따르면, 제1 및 제2 인터페이스(1080, 1090)는 또한 환경 (즉, 메시지 송신기들(110-110m) 및 메시지 수신기들(120-120k))과 통신하도록 설계된 단일의 공통 인터페이스로서 실현될 수 있다.
보안 유닛(1070)은 메시징 서버(1000)에 의해 수신된 각각의 전자 메시지(101, 102, 103)에 대해 안티 바이러스 분석(AV 분석)을 제공하도록 구성된 안티 바이러스 분석 모듈(AV 분석 모듈)을 포함할 수 있다. AV 분석 모듈로는 블랙리스트 및 화이트리스트에 저장된 공지의 서명에 기초하여 메시지(101, 102, 103)에 대한 서명 스캔을 적어도 수행하도록 설계된 상업적으로 이용 가능한 임의의 AV 분석 모듈이 사용될 수 있다. 서명 일치와 함께, AV 분석 모듈은 또한 메시지들(101, 102, 103)의 악의적인 행동을 검출하기 위한 휴리스틱 안티바이러스 검출 기술 및/또는 에뮬레이션 기술을 구현할 수도 있다. AV 분석 모듈은 또한 악의적인 컨텐츠를 포함하는 것으로 판명된 메시지들(101, 102, 103)을 걸러내고 차단하도록 더욱 구성된다.
또한, 보안 유닛(1070)은 스팸 메시지를 걸러 내도록 구성된 적어도 하나의 스팸 필터를 포함할 수 있다. 따라서, 보안 유닛(1070)은 스팸 메시지 및 악성 메시지를 차단하고, 악의적이거나 스팸 메시지가 아니라고 판명된 메시지들만 통과시키도록 구성된다.
분석 유닛(1010)은 제1 인터페이스(1080)와 통신한다. 분석 유닛(1010)은 제1 인터페이스(1080)로부터 수신된 착신 메시지(101, 102, 103)를 가로채고 이 착신 메시지(101, 102, 103)를 그 컨텐츠와 관련하여 분석하도록 설계된다. 즉, 분석 유닛(1010)은 각 메시지(101, 102, 103)에 대해 메시지(101, 102, 103)에 의해 운반되는 특정 컨텐츠와 연관될 수 있는 적어도 하나의 메시지 컨텐츠 특징(CF)을 추출하도록 설계된다. 추출된 메시지 컨텐츠 특징(CF)은 메시지(101, 102, 103)의 제목 라인 컨텐츠, 메시지(101, 102, 103)에 첨부되거나 포함된 메시지 컨텐츠 및 그 일부 중 적어도 하나를 나타낼 수 있다. 있다. 이러한 메시지 컨텐츠는 예를 들어, 메시지에 포함된 메시지 첨부 또는 URL을 포함할 수 있다.
또한, 분석 유닛(1010)은 각각의 수신된 메시지(101, 102, 103)로부터 메시지 송신기 특징을 추가적으로 추출하도록 구성된다. 메시지 송신기 특징은 메시지 송신기(110-110m)의 어드레스 또는 어드레스 일부를 나타내는 어드레스 특징(AF)일 수 있으며, 메시지 송신기로부터 메시지(101, 102, 103)가 발신된다. 컨텐츠 특징(CF) 및 주소 특징(AF)은 해시 값으로 제공될 수 있다. 예를 들어, 컨텐츠 특징(CF) 및 어드레스 특징(AF)은 각각 MD5 해시 값으로서 제공될 수 있다.
타임스탬핑 유닛(1020)은 각 메시지(101, 102, 103)에 대한 타임스탬프를 생성하고 제공하도록 구성된다. 타임스탬프는 미리 결정된 시간 정확도로 제공된다. 예를 들어, 1초 내지 60초, 바람직하게는 5초 내지 10초, 보다 바람직하게는 10초의 시간 정확도가 고려될 수 있다. 각각의 제공된 타임스탬프는 고려된 메시지(101, 102, 103) (및 결과적으로 고려된 메시지(101, 102, 103)로부터 추출된 어드레스 특징(AF) 및 컨텐츠 특징(CF))가 메시징 서버(1000)에서 발생하는 시점을 나타낸다. 미리 정해진 타임스탬프의 정확도 범위 내에서 수신된 메시지와 연관될 수 있는 추출된 컨텐츠 및 주소 특징에는 동일한 타임스탬프(ts)가 제공된다.
기록 유닛(1030)은 타임스탬핑 유닛(1020) 및 분석 유닛(1010)과 통신한다. 기록 유닛(1030)은 분석 유닛(1010)에 의해 분석된 각 메시지(101, 102, 103)에 대해 해당 타임스탬프(ts)뿐만 아니라 해당 어드레스 및 컨텐츠 특징(AF, CF)을 수신한다. 기록 유닛(1030)은 데이터베이스(1060)에 해당 타임스탬프와 함께 어드레스 및 컨텐츠 특징을 기록하도록 구성된다. 따라서, 각각의 수신된 메시지(101, 102, 103)에 대해 타임스탬프(ts), 컨텐츠 특징(CF) 및 관련 어드레스 특징(AF)을 포함하는 고유의 관련 데이터(ts, CF, AF)의 세트가 데이터베이스(1060)에 기록된다. 데이터베이스 성능을 향상시키기 위해, 적어도 하나의 특징 (즉, 어드레스 특징(AF), 컨텐츠 특징(CF) 또는 타임스탬프(ts))이 상이한 데이터의 세트(ts, CF, AV)만을 데이터베이스(1060)에 기록한다. 즉, 상이한 메시지(101, 102, 103)로부터 추출되지만, 동일한 세트의 컨텐츠 특징(CF), 어드레스 특징(AF) 및 타임스탬프(ts) (즉, 동일한 특징 조합을 갖는 추출된 세트)를 나타내는 상이한 세트의 데이터는 데이터베이스(1060)에 한 번만 기록된다. 동일한 특징 조합을 갖는 상이한 메시지(101, 102, 103)로부터 데이터 세트를 추출하는 것은 쉽지 않음에 유의한다. 예를 들어, 동일한 메시지 송신기(110-110m)에서 발신되고 각 메시지에서 동일한 메시지 내용을 전달하는 뉴스레터는 동일한 특징 조합(ts, CF, AF)으로 이어질 수 있다.
도 1에 도시한 일 실시예에 따르면, 기록 유닛(1030)은 수신된 어드레스 특징(AF), 컨텐츠 특징(CF) 및 관련된 타임스탬프(ts)를 2개의 개별적인 인덱스 데이터 구조에 기록하도록 설계된다. 제1 인덱스 데이터 구조(IDX1)에서, 타임스탬프된 컨텐츠 특징(ts, CF)은 기록되는 반면, 제2 인덱스 데이터 구조 IDX2에는 어드레스 특징(ts, CF, AF)과 함께 타임스탬프된 컨텐츠 특징이 기록된다. 데이터베이스 성능을 향상시키기 위해 반복되는 데이터 세트(ts, CF) 및 (ts, CF, AF)는 해당 인덱스 데이터 구조(IDX1 및 IDX2)에 한 번만 기록된다. 이러한 데이터 구조화의 이점은 하기 도 2a-2c와 관련하여 논의될 것이다.
판정 유닛(1040)은 분석 유닛(1010)과 통신한다. 판정 유닛(1040)은 메시지(101, 102, 103)로부터 추출된 컨텐츠 특징(CF)(및 선택적으로 어드레스 특징(AF))를 수신하도록 구성된다. 더욱, 판정 유닛(1040)은 추출된 컨텐츠 특징(CF)에 대해 생성된 타임스탬프(ts)를 수신할 수 있다. 판정 유닛(1040)은 또한 현재 수신된 메시지(예를 들어, 도 1의 메시지(101))로부터 추출된 각각의 특정 컨텐츠 특징(CF)에 대해, 이 컨텐츠 특징(CF)이 과거에 복수의 상이한 어드레스 특징(AF)과 관련하여 데이터베이스(1060)에 이미 기록되었는지 여부를 판정하도록 더욱 구성된다. 데이터베이스(1060)는 이전에 수신된 메시지들의 상관된 어드레스 특징(AF) 및 컨텐츠 특징(CF)의 세트들을 포함하기 때문에, 데이터베이스 룩업은 특정 컨텐츠 특징(CF)과 연관될 수 있는 모든 이전에 기록된 어드레스 특징(AF)(또는 그 일부)의 판정을 가능하게 한다. 다음에, 어드레스 특징(AF)으로부터, 과거에 동일한 특정 컨텐츠를 전송한 메시지 송신기들(110-110m)을 식별하는 것이 가능하다. 봇넷으로부터의 공격은 단시간에 걸쳐 복수의 상이한 메시지 송신기들(110-110m)에 의해 특징되기 때문에, 상이한 어드레스 특징(AF)의 판정을 짧은 룩업 검출 창으로 제한하는 것으로 충분하다. 예를 들어, 지금부터 최근 10시간, 바람직하게는 최근 5시간, 보다 바람직하게는 최근 1시간을 커버하는 룩업 검출 창이 미리 설정될 수 있다.
분류 유닛(1050)은 판정 유닛(1040)에 의해 판정된 상이한 어드레스 특징(AF)을 수신하고 그로부터 특정 메시지 컨텐츠 특징(CF)과 연관될 수 있는 N개의 상이한 메시지 송신기(110-100m)를 유도하도록 구성된다. 이 수가 미리 정해진 임계 값을 초과하면, 분류 유닛(1050)은 현재의 메시지를 의심스러운 것으로 분류한다.
유닛들(1010 내지 1060)의 기능은 도 1 및 도 2의 흐름도와 관련하여 더 설명된다. 흐름도는 복수의 메시지 송신기들(110-110m)로부터 복수의 메시지 수신기들(120-120k)로 송신된 의심스러운 전자 메시지들을 검출하는 방법을 도시한다.
이 방법은 복수의 메시지 송신기들(110-110m)에 의해 송신된 전자 메시지들(101, 102, 103)이 메시징 서버(1000)에 의해 인터페이스(1080)를 통해 수신되는 단계(210) (도 2a 참조)에서 시작한다. 인터페이스(1080)에 의해 수신된 각 메시지(101, 102, 103)는 후속 메시지 분석을 위해 분석 유닛(1010)으로 라우팅된다.
후속 단계(220)에서, 분석 유닛(1010)은 각각의 수신 메시지(101, 102, 103)로부터 메시지 송신기 특징 및 메시지의 컨텐츠 특징(CF)을 추출한다. 상술한 바와 같이, 메시지 송신기 특징은 메시지 송신기 어드레스를 나타내는 해시 값(예컨대, MD5 해시 값)일 수 있다. 또한, 추출된 컨텐츠 특징(CF)은 제목 라인 컨텐츠 및/또는 메시지에 포함되거나 첨부된 메시지 컨텐츠를 나타내는 해시 값 (예를 들어, MD5가 값을 가짐)일 수 있다. 또한, 타임스탬프(ts)는 각 메시지에 대해 타임스탬핑 유닛(1020)에 의해 제공되고, 대응하는 컨텐츠 특징(CF) 및 관련 어드레스 특징(AF)이 추출된다.
각 고려된 각각의 메시지(101, 102, 103)에 대해, 대응하는 타임스탬프(ts)뿐만 아니라 추출된 어드레스 특징(AF) 및 컨텐츠 특징(CF)이 기록 유닛(1030)에 공급된다. 후속하는 제3 단계(230)에서, 기록 유닛(1030)은 대응하는 타임스탬프(ts)와 함께 추출된 어드레스 특징(AF) 및 컨텐츠 특징(CF)을 데이터베이스(1060)에 기록한다. 메시지(101, 102, 103)가 메시징 서버(1000)에 의해 연속적으로 수신되기 때문에, 대응하는 타임스탬프(ts)와 함께 대응하는 어드레스 특징(AF) 및 컨텐츠 특징(CF)이 연속적으로 데이터베이스(1060)에 기록된다. 따라서, 시간이 경과함에 따라 다수의 타임스탬프된 어드레스 및 컨텐츠 특징을 포함하는 데이터 세트가 기록될 수 있다.
추출된 컨텐츠 특징(CF)은 판정 유닛(1040)에 또한 공급된다. 판정 유닛(1040)은, 현재 수신된 메시지(101)로부터 추출된 새로운 컨텐츠 특징(CF)을 수신하면, 현재 메시지(101)와 연관된 컨텐츠 특징(CF)이 과거에, 즉 이미 수신된 메시지에 대해 데이터베이스(1060)에 이미 기록되었는지를 판정하는 것으로 시작한다(단계 240). 즉, 고려되는 컨텐츠 특징(CF)에 대한 데이터베이스 기록이 이미 데이터베이스(1060)에 존재하는지가 판정된다. 판정 유닛(1040)이 동일한 컨텐츠 특징(CF)에 대한 이전의 기록이 데이터베이스(1060)에 존재한다고 판단한 경우, 판정 유닛(1040)은 얼마나 많은 메시지 송신기들(110-110m)이 이 특정 컨텐츠 특징(CF)과 연관될 수 있는지를 판정한다.
판정 단계(240)는 도 2b 및 2c를 참조하여 더 설명된다. 도 2b는 판정 알고리즘을 흐름도의 형태로 더 상세하게 도시한다. 판정 유닛(1040)은 동일한 컨텐츠 특징이 데이터베이스(1060)에 이미 기록되었는지를 판정하기 위해 제1 인덱스 데이터 구조(IDX1)에서 데이터베이스 룩업을 수행한다. 일반적으로, 봇넷 공격이 단기간 내에 많은 수의 메시지(101, 102, 103)를 대개 생성하기 때문에 컨텐츠 특징(CF)에 대한 룩업을 과거에 짧은 기간으로 제한하는 것으로 충분하다. 상술한 바와 같이, 메시지 분류를 위한 충분한 통계를 얻기 위해서는 룩업을 최근 10시간, 더 바람직하게는 최근 5시간, 더 바람직하게는 최근 1시간의 기록으로 제한하는 것이 충분해야 한다. 동일한 컨텐츠 특징(CF)이 발견될 수 없는 경우, 알고리즘은 이 시점에서 정지한다(단계 246). 이 방법은 후속 메시지로부터 도출된 새로운 컨텐츠 특징(CF)에 대한 새로운 룩업을 진행할 것이다.
그러나, 판정 유닛(1040)이 동일한 컨텐츠 특징 기록을 찾을 수 있는 경우, 판정 유닛(1040)은 단계 250으로 진행한다(도 2c 참조). 즉, 판정 유닛(1040)은 고려된 컨텐츠 특징(CF)에 대해 고려된 컨텐츠 특징과 관련된 기록된 어드레스 특징(AF)를 판정하기 위해 데이터베이스(1060)에서 제2 룩업을 수행한다(단계 252). 제2 룩업은 컨텐츠 특징(CF)와 함께 어드레스 특징(AF)을 포함하는 제2 데이터 인덱스 구조(IDX2)에서 수행된다. 다시 룩업은 가까운 과거에 (예를 들어, 상술한 바와 같이 최근 몇 시간까지) 기록된 특징으로 제한될 수 있다. 두 번째 룩업의 결과로서, 고려되는 컨텐츠 특징(CF)과 관련될 수 있는 상이한 어드레스 특징(AF)의 리스트를 획득하게 된다.
획득된 리스트는 분류 유닛(1050)에 공급되어, 리스트에 포함된 어드레스 특징(AF)에 기초하여 현재 메시지(101)를 분류한다. 분류 유닛(1050)이 발견된 상이한 어드레스 특징(AF)의 개수(N) (따라서 동일한 컨텐츠를 송신한 메시지 송신기(110-110m)의 개수)이 소정의 임계 값(N1)을 초과하는 것을 검출하면(도 2c의 판정 253), 분류 유닛(1050)은 메시지(101)를 의심스러운 것으로 분류하고(단계 262), 현재 메시지(101)는 추가 동작을 받는다(단계 266). 이러한 추가 동작은 예정된 메시지 수신기(120-120k)에 경고하기 위해 메일을 수상한 메일로 태깅(tagging)하는 단계를 포함할 수 있다. 대안적으로, 현재 메시지(101)는 메시지 흐름의 하류에 배치된 보안 유닛(1070)에 의해 걸러내거나 격리되도록 특정한 방법으로 태깅될 수 있다(도 1 참조). 또 다르게, 현재 메시지(101)는 스팸으로 태깅될 수 있다. 전술한 메시지 태깅은 현재 메시지(101)가 의심스럽다고 판명된 것을 나타내는 대응 피드백 신호(도 1, 파선 화살표)를 수신하면, 현재 메시지(101)를 가로채는 분석 유닛(1010)에서 수행될 수 있다.
그러나 발견된 상이한 어드레스 특징(AF)의 개수(N)가 임계 값(N1)보다 작거나 같은 경우, 현재 메시지(101)는 의심스럽지 않은 것으로 분류되고(도 2c의 단계 264), 더 이상의 동작은 요구되지 않는다. 이 경우, 분류 유닛(1050)은 현 메시지(101)가 의심스럽지 않은 것으로 판명된 것을 나타내는 피드백 신호를 분석 유닛(1010)에 전송할 수 있다. 현재의 메시지(101)는 의무적 AV 체크를 위해 보안 유닛(1070)으로 라우팅될 수 있거나 또는 예정된 메시지 수신기(120-120k)에 직접 라우팅될 수 있다.
전술한 2 단계식 룩업 프로세스는 본 검출 방법의 성능을 상당히 개선하는데 왜나하면 현재의 메시지(101)가 새로운 메시지 컨텐트를 또는 이전 메시지들에 의해 이미 운반된 메시지 컨텐츠만을 운반하는지를 판정하기 위해서, 많은 컴퓨터 리소스를 필요로 하지 않는 빠른 룩업인 제1 룩업이 사용될 수 있기 때문이다. 메시지 내용이 새로운 것으로 판명되면(즉, 이전 메시지 내용과 다름), 현재 메시지(101)는 부트넷(bootnet) 공격의 일부를 형성하지 않는다고 가정할 수 있으므로, 알고리즘은 더욱 값비싼 두 번째 룩업을 실행하기 전에 중지될 수 있다. 반면에, 메시지 컨텐츠가 데이터베이스에 이미 존재하는 것으로 판명되면, 현재 메시지(101)가 그러한 공격의 일부인 것을 배제할 수 없으므로, 특정 정확도 수준의 의심스럽지 않은 메시지를 의심스러운 메시지(즉, 스팸 또는 악성 메시지)와 구별하기 위해서 제2 룩업이 필요로 한다.
설명된 방법의 정확성을 더 높이기 위한 일 실시예에 따르면, 상이한 신뢰성있는 메시지 송신기에 의해 전송된 상이한 메시지의 일부일 수 있는, 회사 로고와 같은 신뢰할 수 있는 메시지 컨텐츠 특징을 포함하는 화이트리스트가 추가로 제공될 수 있다. 이 방법은 이 메시지를 보낸 신뢰할 수 있는 메시지 송신기의 개수가 미리 결정 임계 값보다 클 경우 이 메시지를 의심스러운 것으로 분류한다. 오류가 있는 분류는 추출된 메시지 컨텐츠 특징을 화이트리스트에 기록된 컨텐츠 특징과 비교함으로써 피할 수 있다. 컨텐츠 기능이 화이트리스트에서 알려진 경우 메시지는 악성으로 분류되지 않는다.
도 3을 참조하여, 전술한 검출 기술의 이점을 더 설명한다. 도 3은 수직으로 동작하는 타임 라인을 포함하는 도면을 나타내고, 여기서 t2는 특정 컨텐츠 특징(CF1)을 운반하는 스팸 메시지 또는 악성 메시지가 처음으로 나타나는 시점을 정의한다. 시점 t2에서 컨텐츠를 스팸 또는 악성으로 식별하기 위해 어떤 적절한 AV 패턴도 이용가능하지 않기 때문에, 메시지는 의심스럽지 않다고 간주한다.
동일한 특정 컨텐츠 특징(CF1)을 갖는 메시지를 송신하는 메시지 송신기(110-110m)의 개수(N)는 t2에서 시작하여 더 증가한다. 이후의 시점 t1에서, 본 방법은 특정 메시지 컨텐츠(CF1)에 책임이 있는 메시지 송신기의 개수가 미리 정해진 임계 값을 초과하는 것을 검출한다. 특정 컨텐츠 특징(CF1)과 연관될 수 있는 검출된 다수의 상이한 메시지 송신기들(110-110m)로 인해, t1 이후의 시점들에서 발생하는 모든 메시지들은 본 방법에 의해 의심스러운 것으로 분류된다.
따라서, 특정 컨텐츠 특징(CF1)과 상이한 메시지 송신기(110-110m) 사이의 검출된 상관관계에 기초하여, t1에서 새로운 봇넷 공격이 이미 검출될 수 있다. 따라서, 본 방법으로 악성 메시지 또는 스팸 메시지의 최초 발생과 그 검출 사이의 검출 갭 Δ1은 작게 유지될 수 있다. 현재의 방법과는 달리, 종래의 AV 검출 기술은 새로운 위협을 검출하기 위해 적절한 AV 서명 업데이트를 기다려야 한다. 이러한 업데이트는 얼마의 시간이 걸리므로 악의적인 메시지나 스팸 메시지의 최초 발생과 그 검출 사이에 상당히 더 긴 검출 갭 Δ2를 얻게 된다(도 3 참조).
위의 논의에서 볼 때, 본 기술은 기존의 AV 검출기술 및/또는 스팸 필터(그림 1 참조)와 같은 기존 보안 기술과 결합하여 봇넷 공격에 대한 최상의 보호를 얻을 수 있다. 더욱이, 본 검출 기술은 미리 정해진 임계 값(N1) 및 룩업 검출 창 (즉, 기록된 컨텐츠 및 어드레스 특징(AF)이 검출 알고리즘에 의해 룩업되고 고려되는 시간)과 같은 몇몇 검출 파라미터들에만 기초하기 때문에 에러에 대해 강하고 신뢰성이 있다.
여기에 제시된 기술은 특정 실시예와 관련하여 설명되었지만, 당업자는 본 발명이 본 명세서에 설명되고 도시된 특정 실시예에 한정되지 않다는 것을 인식할 것이다. 본 개시는 단지 예시일 뿐이라는 것을 이해해야 한다. 따라서, 본 발명은 본 명세서에 첨부된 특허 청구 범위의 범주에 의해서만 제한되는 것으로 의도된다.
110: 메시지 송신기 120: 메시지 수신기
1000: 메시징 서버 1010: 분석 유닛
1020: 타임스탬핑 유닛 1030: 기록 유닛
1040: 판정 유닛 1050: 분류 유닛
1070: 보안 유닛 1080: 인터페이스

Claims (16)

  1. 의심스러운 전자 메시지를 검출하는 방법에 있어서,
    상기 방법은 복수의 메시지 송신기들 및 복수의 메시지 수신기들과 통신하는 메시징 서버에서 수행되는 것으로,
    상기 복수의 메시지 송신기들로부터 적어도 하나의 메시지 수신기로 송신된 전자 메시지들을 수신하는 단계;
    각각의 수신된 메시지로부터 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 추출하는 단계;
    상기 추출된 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 데이터베이스에 기록하는 단계;
    상기 데이터베이스에 기록된 상기 메시지 컨텐츠 특징(CF)에 기초하여, 현재의 메시지와 관련될 수 있는 특정 컨텐츠 특징이 과거에 이미 기록되었는지 여부를 판정하는 단계;
    상기 특정 컨텐츠 특징이 이미 과거에 기록되었다면, 상기 데이터베이스에 기록된 메시지 송신기 특징(AF)에 기초하여, 상기 특정 컨텐츠 특징과 연관될 수 있는 메시지 송신기들의 개수(N)를 판정하는 단계; 및
    상기 특정 컨텐츠 특징과 연관될 수 있는 상기 판정된 메시지 송신기들의 개수가 미리 결정된 임계 값(N1)을 초과하면 상기 현재 메시지를 의심스러운 것으로 분류하는 단계;를 포함하며,
    상기 메시지 송신기 특징(AF) 및 메시지 컨텐츠 특징(CF)은 두 개의 개별적인 인덱스 데이터 구조에 타임 스탬프(ts)와 함께 기록되고, 제1 인덱스 데이터 구조(IDX1)는 타임스탬프된 메시지 컨텐츠 특징(CF)의 데이터 세트(ts, CF)를 포함하고, 제2 인덱스 데이터 구조(IDX2)는 타임스탬프된 메시지 컨텐츠 특징(CF) 및 메시지 송신자 특징(AF)의 데이터 세트(ts, CF, AF)를 포함하는 방법.
  2. 제1항에 있어서, 타임스탬프(ts)를 생성하는 단계 및 상기 타임스탬프(ts)를 상기 추출된 메시지 송신기 특징(AF) 및 메시지 컨텐츠 특징(CF)과 함께 상기 데이터베이스에 기록하는 단계를 더 포함하는 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서, 상기 특정 컨텐츠 특징이 상기 데이터베이스에 이미 기록되었는지 여부를 판정하는 단계는:
    상기 현재 메시지와 관련되는 상기 메시지 컨텐츠 특징(CF)과 상기 데이터베이스에 기록된 메시지 컨텐츠 특징(CF) 간의 동일성이나 유사성 체크를 실행하는 단계를 포함하는 방법.
  6. 제5항에 있어서, 데이터베이스 룩업은 상기 특정 컨텐츠 특징과 동일하거나 유사한 컨텐츠 특징 기록이 과거에 미리 결정된 시간 창 동안 상기 데이터베이스에 이미 존재하는지 여부를 판정하기 위해 수행되는 방법.
  7. 제5항에 있어서, 상기 특정 컨텐츠 특징과 동일하거나 유사한 메시지 컨텐츠 특징 기록이 미리 결정된 시간 창 동안 상기 데이터베이스에 이미 존재하는 경우 상기 미리 결정된 시간 창 동안 얼마나 많은 메시지 송신기 특징(AF)이 기존의 컨텐츠 특징 기록에 관련될 수 있는지 판정하는 단계를 더 포함하는 방법.
  8. 제1항에 있어서, 상기 분류 단계는:
    상기 현재 메시지를 의심스러운 메시지로 태깅하는 단계; 및
    상기 현재 메시지의 컨텐츠를 스팸이나 의심스러운 컨텐츠로서 블랙리스트에 등록하는 단계 중 적어도 하나를 더 포함하는 방법.
  9. 제1항에 있어서, 상기 현재 메시지가 의심스러운 것으로 분류되면, 상기 방법은:
    상기 현재 메시지를 차단하는 단계; 및
    상기 현재 메시지를 AV 분석되게 하는 단계
    중 적어도 하나를 더 포함하는 방법.
  10. 제9항에 있어서, 상기 AV 분석으로 상기 메시지가 악성이 아니라는 것을 밝힌 경우 상기 현재 메시지를 의도한 메시지 수신기로 라우팅하는 단계를 더 포함하는 방법.
  11. 제1항에 있어서, 상기 적어도 하나의 추출된 메시지 송신기 특징(AF)은 송신기 어드레스 또는 송신기 어드레스 일부를 나타내는 방법.
  12. 제1항에 있어서, 상기 적어도 하나의 추출된 메시지 컨텐츠 특징(CF)은 메시지의 첨부, 메시지의 제목 라인 컨텐츠, 메시지에 포함된 URL 및/또는 그 일부를 나타내는 방법.
  13. 제1항, 제2항, 제5항 내지 제12항 중 어느 한 항에 따른 방법을 실행하기 위한 프로그램이 저장된 컴퓨터 판독 가능한 기록매체.
  14. 제13항에 있어서, 상기 컴퓨터 판독 가능한 기록매체는 비일시적 컴퓨터 판독 가능한 기록 매체인 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
  15. 의심스러운 전자 메시지를 검출하기 위한 메시징 서버에 있어서,
    상기 메시징 서버는 복수의 메시지 송신기 및 복수의 메시지 수신기와 통신하고, 상기 메시징 서버는 상기 복수의 메시지 송신기들로부터 적어도 하나의 메시지 수신기로 전송된 전자 메시지들을 수신하도록 구성되고, 상기 서버는:
    각각의 수신된 메시지로부터 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 추출하도록 구성된 분석 유닛;
    상기 추출된 적어도 하나의 메시지 송신기 특징(AF) 및 적어도 하나의 메시지 컨텐츠 특징(CF)을 데이터베이스에 기록하도록 구성된 기록 유닛;
    상기 데이터베이스에 기록된 상기 메시지 컨텐츠 특징(CF)에 기초하여, 현재 메시지와 연관될 수 있는 특정 컨텐츠 특징이 이미 과거에 기록되었는지 여부를 판정하고, 상기 특정 컨텐츠 특징이 과거에 이미 기록되었다면, 상기 데이터베이스에 기록된 상기 메시지 송신기 특징(AF)에 기초하여, 상기 특정 컨텐츠 특징과 연관될 수 있는 메시지 송신기들의 개수(N)를 더 판정하도록 구성된 판정 유닛; 및
    상기 특정 컨텐츠 특징과 연관될 수 있는 상기 판정된 메시지 송신기의 개수(N)가 미리 결정된 임계 값(N1)을 초과하면 상기 현재 메시지를 의심스러운 것으로 분류하도록 구성된 분류 유닛;을 포함하며,
    상기 메시지 송신기 특징(AF) 및 메시지 컨텐츠 특징(CF)은 두 개의 개별적인 인덱스 데이터 구조에 타임 스탬프(ts)와 함께 기록되고, 제1 인덱스 데이터 구조(IDX1)는 타임스탬프된 메시지 컨텐츠 특징(CF)의 데이터 세트(ts, CF)를 포함하고, 제2 인덱스 데이터 구조(IDX2)는 타임스탬프된 메시지 컨텐츠 특징(CF) 및 메시지 송신자 특징(AF)의 데이터 세트(ts, CF, AF)를 포함하는 메시징 서버.
  16. 제15항에 있어서, 각 추출된 메시지 송신기 특징(AF) 및 메시지 컨텐츠 특징(CF)에 대해 타임스탬프(ts)를 제공하도록 구성된 타임스탬핑 유닛을 더 포함하는 메시징 서버.
KR1020170114995A 2016-09-19 2017-09-08 의심스러운 전자 메시지를 검출하기 위한 기술 KR102119718B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP16189472.0 2016-09-19
EP16189472.0A EP3297221B1 (en) 2016-09-19 2016-09-19 Technique for detecting suspicious electronic messages

Publications (2)

Publication Number Publication Date
KR20180031570A KR20180031570A (ko) 2018-03-28
KR102119718B1 true KR102119718B1 (ko) 2020-06-05

Family

ID=57003361

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170114995A KR102119718B1 (ko) 2016-09-19 2017-09-08 의심스러운 전자 메시지를 검출하기 위한 기술

Country Status (8)

Country Link
US (1) US10572664B2 (ko)
EP (1) EP3297221B1 (ko)
JP (1) JP7049087B2 (ko)
KR (1) KR102119718B1 (ko)
CA (1) CA2977807C (ko)
ES (1) ES2699956T3 (ko)
LT (1) LT3297221T (ko)
SG (1) SG10201706810PA (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6502461B1 (ja) * 2017-11-08 2019-04-17 ヤフー株式会社 不正メール判定装置、不正メール判定方法、およびプログラム
US11861304B2 (en) * 2019-05-13 2024-01-02 Mcafee, Llc Methods, apparatus, and systems to generate regex and detect data similarity
US11050698B1 (en) * 2020-09-18 2021-06-29 Area 1 Security, Inc. Message processing system with business email compromise detection
US11425077B2 (en) * 2020-10-06 2022-08-23 Yandex Europe Ag Method and system for determining a spam prediction error parameter
CN115238175B (zh) * 2022-07-18 2023-08-15 中移互联网有限公司 消息审核方法、装置和电子设备
US11916858B1 (en) * 2022-09-30 2024-02-27 Sophos Limited Method and system for outbound spam mitigation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215977A1 (en) * 2003-03-03 2004-10-28 Goodman Joshua T. Intelligent quarantining for spam prevention
US20040260922A1 (en) * 2003-06-04 2004-12-23 Goodman Joshua T. Training filters for IP address and URL learning
US20090265786A1 (en) * 2008-04-17 2009-10-22 Microsoft Corporation Automatic botnet spam signature generation
US20100161734A1 (en) * 2008-12-22 2010-06-24 Yahoo! Inc. Determining spam based on primary and secondary email addresses of a user
US20110314546A1 (en) * 2004-04-01 2011-12-22 Ashar Aziz Electronic Message Analysis for Malware Detection

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040073617A1 (en) * 2000-06-19 2004-04-15 Milliken Walter Clark Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
JP3871941B2 (ja) * 2002-02-22 2007-01-24 日本電気通信システム株式会社 携帯電話のメールサーバーにおける迷惑メール自動処分方法、メールサーバー及びプログラム
US7603472B2 (en) * 2003-02-19 2009-10-13 Google Inc. Zero-minute virus and spam detection
US7748038B2 (en) * 2004-06-16 2010-06-29 Ironport Systems, Inc. Method and apparatus for managing computer virus outbreaks
US7694150B1 (en) * 2004-06-22 2010-04-06 Cisco Technology, Inc System and methods for integration of behavioral and signature based security
US7870205B2 (en) * 2005-07-01 2011-01-11 0733660 B.C. Ltd. Electronic mail system with pre-message-retrieval display of message metadata
US20090026578A1 (en) 2007-07-27 2009-01-29 Micrel, Inc. Vertical NPN Transistor Fabricated in a CMOS Process With Improved Electrical Characteristics
KR101045330B1 (ko) * 2008-12-24 2011-06-30 한국인터넷진흥원 네트워크 기반의 http 봇넷 탐지 방법
KR101077136B1 (ko) * 2009-09-28 2011-10-26 한국인터넷진흥원 히스토리 기반 DDoS 대응 방법
US8549642B2 (en) * 2010-01-20 2013-10-01 Symantec Corporation Method and system for using spam e-mail honeypots to identify potential malware containing e-mails
US10574630B2 (en) * 2011-02-15 2020-02-25 Webroot Inc. Methods and apparatus for malware threat research
JP5668034B2 (ja) * 2012-09-04 2015-02-12 ビッグローブ株式会社 電子メール監視装置、送信メールサーバ、電子メール監視方法およびプログラム
KR20140127036A (ko) * 2013-04-24 2014-11-03 (주)네오위즈게임즈 스팸 필터링 서버 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215977A1 (en) * 2003-03-03 2004-10-28 Goodman Joshua T. Intelligent quarantining for spam prevention
US20040260922A1 (en) * 2003-06-04 2004-12-23 Goodman Joshua T. Training filters for IP address and URL learning
US20110314546A1 (en) * 2004-04-01 2011-12-22 Ashar Aziz Electronic Message Analysis for Malware Detection
US20090265786A1 (en) * 2008-04-17 2009-10-22 Microsoft Corporation Automatic botnet spam signature generation
US20100161734A1 (en) * 2008-12-22 2010-06-24 Yahoo! Inc. Determining spam based on primary and secondary email addresses of a user

Also Published As

Publication number Publication date
CA2977807A1 (en) 2018-03-19
CA2977807C (en) 2019-02-26
EP3297221B1 (en) 2018-11-14
LT3297221T (lt) 2018-12-27
JP7049087B2 (ja) 2022-04-06
SG10201706810PA (en) 2018-04-27
JP2018074570A (ja) 2018-05-10
US10572664B2 (en) 2020-02-25
US20180082062A1 (en) 2018-03-22
KR20180031570A (ko) 2018-03-28
EP3297221A1 (en) 2018-03-21
ES2699956T3 (es) 2019-02-13

Similar Documents

Publication Publication Date Title
KR102119718B1 (ko) 의심스러운 전자 메시지를 검출하기 위한 기술
US10218740B1 (en) Fuzzy hash of behavioral results
US10581898B1 (en) Malicious message analysis system
US10397246B2 (en) System and methods for malware detection using log based crowdsourcing analysis
US8762537B2 (en) Multi-dimensional reputation scoring
EP2115688B1 (en) Correlation and analysis of entity attributes
US11882140B1 (en) System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US20130247192A1 (en) System and method for botnet detection by comprehensive email behavioral analysis
US20100306846A1 (en) Reputation based load balancing
US8719352B2 (en) Reputation management for network content classification
US10659493B2 (en) Technique for detecting malicious electronic messages
WO2008091980A1 (en) Web reputation scoring
Iyer et al. Email spoofing detection using volatile memory forensics
KR101535503B1 (ko) 상용 이메일 기반 악성코드 감염단말 탐지 방법
US11924228B2 (en) Messaging server credentials exfiltration based malware threat assessment and mitigation
Zamil et al. A behavior based algorithm to detect spam bots
EP4258147A1 (en) Network vulnerability assessment

Legal Events

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