KR20190117526A - 손상된 범위 식별을 위한 다중-신호 분석 - Google Patents

손상된 범위 식별을 위한 다중-신호 분석 Download PDF

Info

Publication number
KR20190117526A
KR20190117526A KR1020197023658A KR20197023658A KR20190117526A KR 20190117526 A KR20190117526 A KR 20190117526A KR 1020197023658 A KR1020197023658 A KR 1020197023658A KR 20197023658 A KR20197023658 A KR 20197023658A KR 20190117526 A KR20190117526 A KR 20190117526A
Authority
KR
South Korea
Prior art keywords
range
detection result
online service
predetermined
behavior
Prior art date
Application number
KR1020197023658A
Other languages
English (en)
Other versions
KR102433425B1 (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 KR20190117526A publication Critical patent/KR20190117526A/ko
Application granted granted Critical
Publication of KR102433425B1 publication Critical patent/KR102433425B1/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/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
    • 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
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N7/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Measurement Of Resistance Or Impedance (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Measurement Of Current Or Voltage (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Storage Device Security (AREA)

Abstract

다중-신호 분석을 통해 온라인 서비스 내에서 손상된 디바이스 및 사용자 계정을 검출하는 것은 더 적은 거짓 양성(false positive) 및 따라서 컴퓨팅 자원 및 인간 분석가 자원의 더 정확한 할당을 허용한다. 디바이스, 계정 또는 프로세스에 관련된, 분석의 개별 범위가 지정되고, 일정 시간 기간에 걸친 다수의 거동은 지속되는(그리고 느리게 작동하는) 위협뿐만 아니라 무차별(brute force)(그리고 빠르게 작동하는) 위협을 검출하도록 분석된다. 손상된 것으로 의심되는 범위에 개별적으로 영향을 주도록 분석가에 경고되고, 분석가는 그에 따라 그 범위를 해결한다.

Description

손상된 범위 식별을 위한 다중-신호 분석
온라인 서비스는, 해당 온라인 서비스 내에서 디바이스를 손상시켜 디바이스의 기능을 파괴하거나 해당 서비스들에 저장된 민감한 데이터를 손상시키려는 악성(malicious) 상대방으로부터의 거의 일정한 위험 아래에 놓여있다. 손상된 디바이스는 외부 디바이스로 데이터가 유출될 수 있거나, 가령, 예를 들어, 봇넷(botnet)의 부분으로서 악성 상대방에 의해 다양한 작업을 수행하도록 명령을 받을 수 있다. 온라인 서비스 내에서 손상된 개별 호스트를 식별하는 것은 자원 및 시간 집약적인 동작일 수 있으며, 이는, 온라인 서비스에 배포된 대책에도 불구하고, 악성 상대방이 오랜 시간 기간 동안 하나 이상의 디바이스를 제어하게 할 수 있다. 현재 SIEM(Security Information and Event Management) 시스템은 일부 손상된 디바이스를 놓치거나, 보안 디바이스를 손상된 것으로 잘못 식별할 수 있고, 이는 악성 상대방이 제어 상태를 유지하는 시간의 양을 연장하고, 온라인 서비스를 다시 보호하는 데 필요한 처리 자원을 증가시킨다.
이 요약은 아래의 상세한 설명 섹션에서 더욱 설명되는 개념들의 선택을 간략화된 형태로 소개하기 위해 제공된다. 이 요약은 청구되는 주제의 모든 중요 특징 또는 필수 특징을 식별하기 위한 것도 아니고, 청구되는 주제의 범위를 결정하는 데 도움을 주려고 의도된 것도 아니다.
손상된 호스트 머신을 검출하기 위한 프로세서 실행 가능 명령어를 포함하는 컴퓨터 판독 가능 저장 디바이스, 시스템 및 방법들 본 명세서에 제공된다. 보안 신호는, 보안중인 온라인 서비스에서 소정의 작동에 대한 이상 레벨(level of abnormality)을 결정하기 위해 신호 이상 분석기에 의해 수신된다. 대규모 온라인 서비스에서, 디바이스의 그룹은 적절히 동작할 때 동일하게 거동하는 것으로 예상되고, 따라서, 일반적이지 않은 거동은 더 큰 의심을 갖고서 처리된다. 스코어링된 검출 결과는 다양한 디바이스의 개체군 또는 서브-거동에 따라 집계되며, 이상 스코어는 다중-신호 분석기로 전달되고, 다중-신호 분석기는 롤링 시간 윈도우에 걸쳐 검출 결과를 수집하고, 소정의 디바이스가 손상되었다는 경고를 생성해야 하는지를 결정하기 위한 분석을 위해, 검출 결과를 디바이스에 기초한 다양한 범위로 분할한다.
범위의 윈도우 분석(windowed analysis)을 사용하여, 본 개시는 온라인 서비스에 대한 느리게 움직이는 진보된 지속적인 위협뿐만 아니라 집중적이고 빠르게 움직이는 공격을 개선된 신뢰도로 검출하는 컴퓨터-중심의 문제를 해결한다. 이로써, 컴퓨터-호스팅 데이터의 보안이 향상되고, 분석가 사용자의 관심을 의심스러운 위반에 더 효율적으로 할당하는 것 이외에, 악성 상대방을 대리하여 실행되는 프로세스와 대조적으로, 온라인 서비스의 처리 자원이 합법적인 프로세스에 더 효율적으로 할당된다.
예시들은 컴퓨터 프로세스, 컴퓨팅 시스템으로서, 또는 디바이스, 컴퓨터 프로그램 제품 또는 컴퓨터 판독 가능 매체와 같은 제조 물품으로서 구현된다. 일 양태에 따라, 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독 가능하고 컴퓨터 프로세스를 실행하기 위한 명령어를 포함하는 컴퓨터 프로그램을 인코딩하는 컴퓨터 저장 매체이다.
하나 이상의 양태의 세부 사항이 첨부 도면 및 이하의 상세한 설명에서 설명된다. 다른 특징 및 장점이 다음의 상세한 설명을 읽고 연관된 도면을 검토함으로써 명백해질 것이다. 다음의 상세한 설명은 단지 설명을 위한 것이며, 청구 범위를 제한하려는 것이 아님을 이해해야 한다.
첨부 도면은 본 개시에 통합되어 본 개시의 일부를 구성하며, 다양한 양태를 도시한다. 도면에서,
도 1은 본 개시가 실시될 수 있는 예시적인 환경을 도시한다.
도 2는 시그니처 이상 스코어러의 세부 사항을 도시한다.
도 3은 다중-신호 분석을 위한 윈도잉(windowing) 및 범위 정하기(scoping) 이벤트의 블록도이다.
도 4는 다중-신호 검출기의 세부 사항을 도시한다.
도 5는 온라인 서비스에서 손상된 호스트 범위를 검출하기 위한 예시적인 방법에 수반된 일반적인 단계를 나타내는 흐름도이다.
도 6은 이상에 기초하여 검출 결과를 스코어링하기 위한 예시적인 방법에 수반된 일반적인 단계를 나타내는 흐름도이다.
도 7은 손상된 범위의 다중-신호 검출을 위한 예시적인 방법에 수반된 일반적인 단계를 나타내는 흐름도이다.
도 8은 컴퓨팅 디바이스의 물리적 구성요소의 예를 도시하는 블록도이다.
도 9a 및 도 9b는 모바일 컴퓨팅 디바이스의 블록도이다.
다음의 상세한 설명은 첨부 도면들을 참조한다. 가능하다면, 도면들에서 동일한 참조 번호들이 사용되고, 다음의 설명은 동일하거나 유사한 요소들을 나타낸다. 예시들이 기술될 수 있지만, 수정, 개조 및 다른 구현이 가능하다. 예를 들어, 도면들에 도시된 요소들에 대체, 추가 또는 수정이 이루어질 수 있으며, 본 명세서에 설명된 방법은 개시된 방법에 단계들을 대체, 재정렬 또는 추가함으로써 변경될 수 있다. 따라서, 다음의 상세한 설명은 제한적이지 않고, 대신에, 적절한 범위는 첨부된 청구 범위에 의해 정의된다. 예시는 하드웨어 구현의 형태, 완전한 소프트웨어 구현의 형태 또는 소프트웨어 양태와 하드웨어 양태를 결합한 구현의 형태를 취할 수 있다. 그러므로, 다음의 상세한 설명은 제한적으로 해석되어서는 안 된다.
도 1은 본 개시가 실시될 수 있는 예시적인 환경(100)을 도시한다. 도시된 바와 같이, 온라인 서비스(110)는 이벤트 검출기(120)에 이벤트 시그니처를 통신하고, 이벤트 검출기(120)는 온라인 서비스(110)에서 발생하는 거동을 나타내는 검출 결과를 시그니처 이상 스코어러(130)에 제공하기 위해 다양한 검출 로직 설정을 사용한다. 시그니처 이상 스코어러(130)는 소정의 거동이 온라인 서비스(110)에 대해 얼마나 일반적인지 또는 일반적이지 않은지를 결정하고, 카운트 및 검출 결과를 신호 집계 캐시(140) 및 검출 결과 캐시(150)에 각각 저장한다.
다중-신호 검출기(160)는, 관찰된 거동이 온라인 서비스(110)에서 악성 활동 또는 양성 활동(benign activity)을 나타내는지 예측하여 결정하기 위해, 시그니처 이상 스코어러(130) 및 검출 결과 캐시(150)로부터의 이상 스코어 및 검출 결과(신규 그리고 이전에 각각 관찰됨)를 수용한다. 예측 결정은 다중-신호 결과 캐시(170)에 저장되고, 그들이 악성 거동을 나타낼 때, 경고 생성기(180)로 전송될 수 있다. 분석자 또는 관리 사용자에게 경고 생성기(180)로부터 경고가 전송되고, 부가적인 검토를 위해 검출 결과 캐시(150) 및 다중-신호 결과 캐시(170)에 캐싱된 결과에 액세스할 수 있다.
다양한 양태들에서, 시그니처 이상 스코어러(130) 및 다중-신호 검출기(160)는 총괄적으로 이상 검출기(190)로 지칭된다. 이상 검출기(190)는 온라인 서비스(110) 내에서 전용 디바이스 또는 그 안에 분산된 디바이스의 세트로서 호스팅될 수 있거나, 외부 디바이스 또는 디바이스 세트일 수 있다. 부가적으로, 이벤트 검출기(120)는 온라인 서비스(110), 이상 검출기(190), 제 3 자 서비스 및 이들의 조합의 부분일 수 있다. 마찬가지로, 이상 검출기에 의해 사용되는 캐시는 이상 검출기(190), 온라인 서비스(110) 또는 외부 저장 디바이스의 부분일 수 있다.
온라인 서비스(110), 이벤트 검출기(120), 캐시, 경고 생성기(180) 및 이상 검출기(190)는, 비제한적으로, 데스크톱 컴퓨터 시스템, 유선 및 무선 컴퓨팅 시스템, 모바일 컴퓨팅 시스템(예를 들어, 모바일, 전화, 넷북, 태블릿 또는 슬레이트형 컴퓨터, 노트북 컴퓨터 및 랩톱 컴퓨터), 핸드-헬드 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그래밍 가능 소비자 전자기기, 미니 컴퓨터, 프린터 및 메인프레임 컴퓨터를 포함하는 다수의 컴퓨팅 시스템을 예시한다. 이들 컴퓨팅 시스템의 하드웨어는 도 8, 도 9a 및 도 9b와 관련하여 더 상세히 논의된다.
온라인 서비스(110), 이벤트 검출기(120), 캐시, 경고 생성기(180) 및 이상 검출기(190)가 예시 목적으로 서로 원격으로 도시되지만, 다른 도시된 디바이스에 로컬적으로 호스팅되는 이들 도시된 디바이스 중 하나 이상의 몇몇의 구성이 가능하고, 각각의 도시된 디바이스가 그 디바이스의 다수의 인스턴스를 나타낼 수 있다는 것이 유의되어야 한다. 당업자에게 친숙한 다양한 서버 및 매개체는 도 1에 도시된 구성요소 시스템 사이에 위치하여, 이들 시스템 사이의 통신을 라우팅할 수 있으며, 이는 본 개시의 신규한 양태를 방해하지 않도록 도시되지 않는다.
온라인 서비스(110)는, IaaS(Infrastructure as a Service) ― 여기서 사용자는 온라인 서비스(110)의 디바이스 상에서 실행되는 소프트웨어 및 운영 체제를 제공함 ― ; PaaS(Platform as a Service) ― 여기서 사용자는 소프트웨어를 제공하고, 온라인 서비스(110)는 운영 체제 및 디바이스를 제공함 ―; 또는 SaaS(Software as a Service) ― 여기서 온라인 서비스(110)는 사용자를 위한 디바이스 상에서 실행되는 소프트웨어 및 운영 체제 양자를 제공함 ― 를 포함하지만 이에 제한되지 않는, "클라우드" 서비스를 다양한 사용자에게 제공하는, 클라우드 데이터 센터와 같은 네트워킹된 컴퓨팅 디바이스의 세트를 나타낸다.
다양한 검사 이벤트(audit event)가 온라인 서비스(110) 내의 디바이스에서 생성되고, SIEM(Security Information and Event Management) 내에서 검출 로직을 실행하는 다양한 이벤트 검출기(120)뿐만 아니라 다른 시스템 및 서비스로부터의 외부 검사 결과를 제공하는 외부 검출 시스템에 의해 처리된다. 다양한 검사 이벤트는 네트워크 통신 트레이, 에러 로그, 이벤트 로그, 시스템 커맨드 등을 포함하지만 이에 제한되지 않는다.
온라인 서비스(110)와 관련하여, 인증되지 않은 사용자 또는 프로그램(예를 들어, 바이러스)과 연관된 거동은 악성인 것으로 분류되는 반면, 인증된 사용자 또는 프로그램과 연관된 거동은 양성인 것으로 분류된다. 이들 거동을 분류하기 위해, 검출 결과는 이벤트 검출기로부터 이상 검출기(190)로 전달되고, 이상 검출기는 그의 결과를 신호 집계 캐시(140), 검출 결과 캐시(150) 및 다중-신호 결과 캐시(170)에 저장한다.
이상 검출기(190)는 다양한 머신 학습 접근법을 사용하여, 소정의 거동이 악성인지 또는 양성인지를 결정하기 위해 일정 시간 기간에 걸쳐 다수의 신호를 평가하는 모델을 개발한다. 이상 검출기의 시그니처 이상 스코어러(130) 및 다중-신호 검출기(160)의 동작은 도 2 및 4에 관련하여 더 상세히 논의된다.
소정의 거동이 악성이라고 결정한 것에 응답하여, 이상 검출기(190)는 그의 결정을 경고 생성기(180)로 전달한다. 경고 생성기(180)는 애플리케이션 메시지(예를 들어, SIEM 애플리케이션 내), 이메일(이메일 계정으로), 텍스트 또는 멀티-미디어 메시지(셀 또는 VoIP(Voice over Internet Protocol) 계정), 페이지(페이지 번호) 등을 포함하지만 이에 제한되지 않는 다양한 포맷으로 분석가 사용자에게 경고를 전송 및 제공할 수 있다. 거동을 악성인 것으로 분류하게 하는 이벤트에 대한 경고가 거의 실시간으로 (예를 들어, 처리 및 전송 시간을 고려하여) 제공되지만, 또한 나중의 룩업 및 검토를 위해 저장될 수 있다.
도 2는 시그니처 이상 스코어러(130)의 세부 사항을 도시한다. 시그니처 이상 스코어러(130)는 다양한 이벤트 검출기(120)로부터의 미가공 검출 결과를 수용하고, 집계된 이상 카운트를 신호 이상 캐시(140)에 출력하며, 이는 시그니처 이상 스코어러(130)가 스코어링된 검출 결과를 다중-신호 검출기(160)에 출력하는 방법을 업데이트하는데 사용된다. 시그니처 이상 스코어러(130)는, 소정의 거동이 새로운 것인지 또는 이전에 본 적이 있는지, 그리고 어느 정도까지 본 것인지를 구별한다.
미가공 검출 결과는 식별자 인식기(210)에 의해 수신되며, 이는 검출 결과와 함께 사용할 식별자를 결정한다. 미가공 검출 결과로부터의 다양한 필드 값들이 결합되어 식별자를 형성하고, 이는, 거동을 관찰한 디바이스의 역할, 거동을 관찰한 디바이스의 사용자, 거동 클래스, 거동 요청자(사용자 또는 프로세스), 거동 객체(사용자 또는 프로세스), 타임스탬프 또는 이벤트 신호에 존재하는 다른 필드 중 하나 이상을 포함할 수 있다. 예를 들어, 시간 D에서 유형 C의 디바이스에 대한 사용자 B 관리 허가를 승인하는 사용자 A의 거동은 ABCD의 식별자를 발생시킬 수 있다. 다양한 양태들에서, 식별자들은 필드 값들에 기초하여 생성되지만, 그 필드들의 평문 값(plaintext value)을 포함하지는 않는다. 예를 들어, 식별자를 형성할 때, 해싱 또는 암호화 알고리즘/함수가 필드 값에 적용된다.
개체군 집계기(population aggregator)(220)는 신호 집계 캐시(140)로부터 특정 식별자에 대한 과거 카운트(historical count)를 룩업하고, 그에 따라 카운트를 업데이트한다. 과거 카운트는 소정의 거동 유형의 이전에 관찰된 검출의 총수에 대한 개체군 카운트에 따라 그리고 소정의 식별자를 공유하는 이전에 관찰된 검출의 총수의 서브 개체군 카운트에 따라 집계된다.
검출 결과 스코어러(230)는, 관찰된 거동에 대한 과거 카운트에 기초하여, 적어도 하나 이상 스코어를 검출 결과에 추가한다. 이상 스코어는 소정의 거동에 대한 서브 개체군 카운트와 개체군 카운트 사이의 비율에 기초하여, 서브 개체군이 개체군의 더 큰 부분이 될 때, 거동의 이상이 감소되게 한다. 예를 들어, 이상 스코어는 공식 1에 도시된 포맷을 사용할 수 있으며, 여기서 x, y 및 z는 이상 스코어에 제공된 값에 영향을 주기 위해 상이한 양상에서 변동된다. 인지될 바와 같이, 공식 1은 이상에 대한 스코어를 할당하는 방법의 비 제한적인 예로서 제공된다.
공식 1 : 스코어 = x-((y·서브 개체군)÷(z·개체군))
스코어는 소정의 거동과 매칭하는 모든 이벤트에 대해 미가공 카운트, 또는 관찰된 거동을 요청한 사용자 또는 소정의 거동을 나타내는 온라인 서비스(110)의 개별 디바이스(호스트)에 대한 범위가 정해진 카운트를 사용하는 상이한 개체군 범위의 카운트에 따라 계산될 수 있다. 예시하자면, E1이 3 번(D1에 대해 2번 및 D2에 대해 1번) 관찰되고 E2가 D2에 대해 1번 관찰된, 온라인 서비스(110)의 디바이스(D1 및 D2) 상에서 발생하는 이벤트(E1 및 E2)가 고려된다. 도시된 예에서 미가공 개체군 카운트는 4인데, E1이 온라인 서비스(110)에서 3회 및 E2가 1번 발생하고, 서브 개체군 카운트는 3이고, E1 및 E2에 대해 각각 1이다. x, y 및 z 각각에 대해 1의 값을 갖는 공식 1을 사용하는 것은 0.25 [1-(1·3)÷(1·4)]인 E1에 대한 이상 스코어 및 0.75 [1-(1·1)÷(1·4)]인 E2에 대한 이상 스코어를 산출한다.
그러나, 예시적인 범위가 정해진 이상 스코어는 개체군에 대해 선택된 범위에 의존하여 미가공 카운트로부터 상이한 결과를 산출할 수 있다. 예시된 예에서 온라인 서비스(110)에서 2개의 별개의 디바이스(D1 및 D2)가 존재하기 때문에, 디바이스 카운트의 범위를 사용하여, 현재 예시에서 범위가 정해진 디바이스 개체군 카운트는 2일 것이다. E1이 양자의 디바이스에서 보여지기 때문에, 그의 서브 개체군 카운트는 2인 반면에, E2는 D2 상에서만 보여지고, 그래서 그의 서브 개체군 카운트는 1이다. x, y 및 z 각각에 대해 1의 값을 갖는 공식 1 및 별개의 디바이스의 범위를 사용하는 것은 0 [1-(1·2)÷(1·2)]인 E1에 대한 이상 스코어 및 0.5 [1-(1·1)÷(1·2)]인 E2에 대한 이상 스코어를 산출한다.
새로운 이벤트 또는 저개체군 이벤트가 허위 이상 스코어(spurious anomaly score)를 제공하는 것을 방지하기 위해, 일부 양태에서, 검사에서 매우 낮은 빈도의 이벤트를 (적어도 일시적으로) 배제하기 위해 임계치 필터가 사용된다. 일 예에서, 최근의 이벤트는 "디바운스(debounce)"되어, 거동의 다른 인스턴스가 관찰될 시간이 주어질 때까지, 거동의 제 1 관찰이 스코어링되지 않는다. 제 2 예에서, 개체군 임계치는, 이벤트의 개체군이 (예를 들어, 이상 검출기(190)의 시동 동안) 신뢰할 만한 결과를 제공하기에 너무 작은 경우, 0의 확률이 할당되도록 설정된다. 제 3 예에서, 서브 임계치는, 거동이 보여질(예를 들어, 새롭게 할당된 서브 개체군이 관찰할) 확률을 추정하는데 있어서 거동의 서브 개체군이 신뢰할 만한 결과를 제공하기에 너무 작은 경우에, (시스템 옵션에 의존하여) 최대 또는 최소 이상 스코어가 할당되도록 설정된다.
다양한 양태에서, 관찰된 거동은 롤링 시간 윈도우에 따라 설정되어, 개체군 또는 서브 개체군의 부분으로 간주되는 이벤트(및 그와 연관된 카운트)는 그들이 발생하는 때에 기초한다. 예를 들어, 과거 d 일(day) 동안 관찰된 거동만이 롤링 시간 원도우의 부분일 수 있고, 따라서 이상 스코어를 결정하기 위한 개체군 및 서브 개체군 카운트는 온라인 서비스(110)에 대한 관찰된 거동 모두보다는 최근 거동들에 기초할 수 있다. 신호 이상 스코어에 대한 롤링 윈도우는, 온라인 서비스(110)에서 무엇이 "정상" 동작으로 보이는지(예를 들어, 지난 달의 사용 패턴이 무엇인지)에 대한 기준을 제공한다.
부가적으로, 일정 시간 기간에 걸쳐 거동을 관찰함으로써, 온라인 서비스(110) 상에서 느리지 않으면 놓칠 수 있는 느리게 움직이는 공격이 관찰될 수 있다. 롤링 다중-신호 윈도우는, 거동에 대한 악성 패턴이 존재하는지를 결정하기 위해, 온라인 서비스(110)에서 소정의 디바이스 상에서 발생하는 모든 이벤트를 수집함으로써, APT(Advanced Persistent Threats)와 같이 저개체군 또는 느리게 움직이는 거동이 관찰되는 것을 보장한다.
도 3은 다중-신호 분석을 위한 윈도잉 및 범위 정하기 이벤트의 블록도(300)이다. 도시된 바와 같이, 관찰된 거동 및 그들의 연관된 식별자, 스코어, 특징 벡터, 타임스탬프 등을 나타내는 몇몇의 이벤트 블록(310)(개별적으로 310a-≪)이 제 1 상태의 구조(organization)(301) 및 제 2 상태의 구조(302)에 도시된다. 범위 정렬기(320)는, 분석을 위한 다중-신호 검출기(160)에 공급되는 몇몇의 범위 블록(330)(개별적으로, 330a-≪)을 포함하는 이벤트 블록(310)을 제 1 상태의 구조(301)에서 제 2 상태의 구조(302)까지 윈도잉 및 범위를 정하도록 구성된다. 다중-신호 검출기(160)는, 범위가 악성 활동(예를 들어, 손상된 디바이스, 제한된 파일에 액세스하는 사용자 계정, 대량의 데이터를 의심스러운 목적지로 전송하는 사용자 계정, 이상하게 작동하는 프로세스 등)과 연관되어 있는지 여부를 결정하기 위해 각각의 범위와 연관된 이벤트를 공급받는다.
제 1 상태의 구조(301)는 검출 결과 캐시(150) 또는 다른 저장 디바이스, 또는 시그니처 이상 스코어러(130)로부터의 이벤트의 스트림에 의해 사용될 수 있다. 개별 이벤트는, 도시된 예에서, 이벤트 블록(310a-h)과 같은 이전 시간 윈도우 내에 속하는 이벤트(예를 들어, 마지막 d 일 내에 타임스탬프를 갖는 이벤트), 및 예시된 예에서 이벤트 블록(310g-≪)과 같은 현재 시간 윈도우(예를 들어, 마지막 m 분) 내에 속하는 이벤트를 포함할 수 있다. 현재 시간 윈도우 외부에 있는 이벤트는, 추가 분석을 위해 제 2 상태의 구조(302)에 포함되지 않은 분석 윈도우보다 더 오랫 동안 저장된 그러한 이벤트를 포함한다.
분석가 또는 다른 관리 사용자는, 분석 윈도우가 얼마나 긴지 그리고 제 2 상태의 구조(302)에 대한 범위로서 무슨 속성이 사용되는지를 설정한다. 예를 들어, 디바이스 식별자, 디바이스 유형 또는 요청하는 사용자는 분석을 위해 다양한 이벤트 블록(310)을 상이한 범위 블록(330)으로 분리하는데 사용될 수 있다. 추가 분석을 위해 지정된 다양한 개별 이벤트 블록(310)(롤링 분석 윈도우 내에 있는 것)은 범위 정렬기(320)에 의해 지정된 범위 특징에 기초하여 범위 블록(330)에 배열된다.
예를 들어, 범위가 상이한 디바이스들에 대해 정의될 때, 제 1 범위 블록(330a)은 온라인 서비스(110)의 제 1 디바이스에 대응할 수 있고, 제 1 디바이스와 연관되고 추가 분석을 위해 지정된 이벤트 블록(310)(이벤트 블록(310a, 310d 및 310e))을 포함할 수 있다. 마찬가지로, 제 2 범위 블록(330b) 및 제 n 범위 블록(330≪)은 온라인 서비스(110)로부터의 제 2 및 제 n 디바이스에 각각 대응하고, 제 2 또는 제 n 디바이스와 연관되고 추가 분석을 위해 지정된 이벤트 블록(310)(이벤트 블록(310b, 310i, 310g 및 310h) 및 이벤트 블록(310c, 310f 및 310≪))을 포함할 것이다.
도시된 이벤트 블록(310)의 이벤트 블록(310j)은 도시된 범위 블록(330) 중 어느 것에도 할당되지 않는다. 다양한 양태들에서, 이벤트 블록(310)이 롤링 분석 윈도우 외부에 있을 때, 이벤트 블록(310)이 데이터 ― 데이터에 의해 이벤트들이 상이한 범위들에 할당됨 ― 를 누락할 때(예를 들어, 어떠한 디바이스 식별자도 이벤트 블록(310j)에 포함되지 않음), 또는 범위가 소정의 이벤트 블록(310)의 검출 결과 유형을 배제하도록 구성될 때(예를 들어, 범위는 일부 잠재적 거동만을 포함하도록 정의됨), 이벤트 블록(310)은 범위 블록(330)에 할당되지 않은 채로 남아있을 수 있다.
도 4는 다중-신호 검출기(160)의 세부 사항을 도시한다. 다중-신호 검출기(160)는 범위별로(scope-by-scope basis) 하나 이상의 스코어링된 검출 결과의 범위가 정해진 그룹(예를 들어, 디바이스별로, 사용자별로, 프로세스별로 범위 검출 결과)를 수신한다. 특징 추출기(410)는 분석될 범위에 대한 스코어링된 검출 결과의 수집을 수신하고, 소정의 범위가 악성 거동을 생성하는지를 결정하기 위해 예측 모델(420)에 의해 사용하기 위한 특징 벡터를 생성하기 위해 스코어링된 검출 결과로부터 다양한 특성을 추출하도록 구성된다.
특징 추출기(410)는, 예를 들어, 사용된 포트, 연결된 IP 어드레스, 디바이스 아이덴티티/유형, 사용자 아이덴티티, 프로세스 아이덴티티, 취해진 액션, 타임스탬프, 이상 스코어 등과 같은 스코어링된 검출 결과로부터 특성을 식별하도록 구성된다. 특성들은 예측 모델(420)에 대한 특징 벡터로서 사용하기 위해 숫자 값(즉, 특징)으로 변환된다. 예측 모델(420)은, 특징 벡터가 추출된 범위가 악성 거동을 나타내는지에 대한 신뢰도 스코어를 제공하기 위해, 소정의 특징 벡터에 대한 머신 학습 기술에 따라 트레이닝된 알고리즘이다.
예측 모델(420)은 다양한 머신 학습 기술 중 하나에 따라 연속적으로 재트레이닝될 수 있다. 당업자는, 감독(supervised), 반-감독(semi-supervised) 및 비감독(unsupervised) 학습 세션을 포함하는 본 개시와 관련하여 사용될 수 있는 다양한 머신 학습 기술에 친숙할 것이다. 다양한 양태들에서, 복수의 예측 모델(420)이 이용 가능할 수 있고, 다중-신호 검출기(160)(또는 분석가 또는 관리 사용자)는, 평가 데이터세트, 정밀도 아래의 영역(areas under precision) 및 리콜 곡선(recall curve) 또는 다른 메트릭에 따른 예측 모델의 정확성에 기초하여, 소정의 범위를 분석하기 위해, 그리고 다른 예측 모델(420)과 비교하기 위해, 복수의 예측 모델(420)로부터 하나 이상을 선택할 수 있다.
예측 모델(420)에 의해 생성된 신뢰도 스코어는 분석가 또는 관리 사용자에 의해 검토를 위해 및/또는 모델 트레이닝 목적으로, 다중-신호 결과 캐시(170)에 저장된다. 부가적으로, 경고 로직은, 검출 결과에 관련된 경고가 분석가 또는 관리 사용자에게 전송되어야 하는지 여부를 결정하는 데 사용된다. 소정의 범위가 악성 거동을 나타내고 있음을 범위에 대한 특징 벡터가 나타내는 신뢰도 임계치를, 예측 모델(420)에 의해 생성된 신뢰도 스코어가 만족시킬 때, 악성 거동을 상세하는 경고를 생성하기 위해 필요한 세부 사항 및 결정이 경고 생성기(180)에 통신될 것이다.
도 5는 온라인 서비스(110)에서 손상된 호스트 범위를 검출하기 위한 예시적인 방법(500)에 수반된 일반적인 단계를 나타내는 흐름도이다. 방법(500)은 동작(510)으로 시작되고, 여기서 이벤트에 대한 검출 결과가 수신된다. 검출 결과는 온라인 서비스(110)에서 다양한 거동을 식별하는 검출 로직에 따라 수신되고, 네트워크 통신 트레이스, 에러 로그, 이벤트 로그, 시스템 커맨드 등을 포함하지만 이에 제한되지 않는 하나 이상의 신호 또는 파일에 제공된 정보를 포함한다.
방법(500)은 동작(520)으로 진행하고, 여기서 검출 결과는 그들이 나타내는 거동이 롤링 시간 윈도우 내에 얼마나 이상한지에 따라 스코어링된다. 다양한 양태에서, 롤링 시간 윈도우 외부로부터의 거동은 검출 이벤트의 이상 스코어에 포함되어, 추가 분석을 위해 분석가 또는 다른 관리 사용자에 의해 지정된 가설(hypothetical) 또는 과거 거동(총괄적으로 과거 거동으로 지칭됨)을 포함한다.
동작(530)에서, 스코어링된 검출 결과는 다양한 범위로 구성된다. 범위는, 악성 활동이 소정의 부분으로 격리될 수 있는지를 분석하도록, 온라인 서비스(110)를 구성요소 부분으로 분할하기 위해 분석가 또는 다른 관리 사용자에 의해 선택된 하나 이상의 특성에 기초한 검출 결과의 분할을 포함한다. 예시적인 범위는 온라인 서비스(110) 내의 개별 디바이스/호스트, 사용자 계정 및 프로세스/애플리케이션을 포함하지만 이에 제한되지는 않는다. 소정의 범위에 속하지 않는 이벤트, 및 임계량을 초과하는 다수의 이벤트가 없는 범위는 현재 분석 라운드에서 제외될 수 있다.
동작(540)으로 진행하여, 다중-신호 검출 로직은 스코어링되고 범위가 정해진 검출 결과에 적용되어, 소정의 범위가 손상되었는지의 신뢰도를 결정한다. 다양한 트레이닝된 머신 학습 모델(인입 검출 신호를 기초하여 계속해서 재트레이닝 및 업데이트될 수 있음)은, 소정의 디바이스(또는 사용자 또는 프로세스)가 범위 내에서 제안된 스코어링된 검출 결과에 기초하여 악성으로 거동하는지 여부를 예측하여 결정하는데 사용된다. 범위에 제공된 검출 결과의 다양한 특성은 특징(다양한 특성의 숫자 표현)으로 변환되고, 거동이 악성인지에 관한 신뢰도 스코어를 생성하기 위해 예측 모델(420)에 공급된다.
결정(550)에서, 신뢰도 스코어는 분석가 또는 다른 관리 사용자에게 악성 거동을 경고할지에 대한 신뢰도 임계치와 비교된다. 신뢰도 스코어가 신뢰도 임계치를 만족시키는 것에 응답하여, 분석가 또는 다른 관리 사용자에게 경고해야 한다고 결정되고, 방법(500)은 동작(560)으로 진행된다. 그렇지 않으면, 신뢰도 스코어가 신뢰도 임계치를 만족시키지 않는 것에 응답하여, 방법(500)은 종료될 수 있지만, 후속 검출 결과를 수신하는 것에 응답하여 동작(510)으로부터 반복될 수 있다.
동작(560)에서, 경고가 생성되고 전송된다. 다양한 양태에서, 경고는 경고를 트리거한 거동 및 검출 결과뿐만 아니라 경고를 트리거하기 위해 분석된 범위를 식별한다. 예를 들어, 경고는, 시간 t에서, 사용자 A가 디바이스 C(범위)에 대해 사용자 B에게 관리 허가(거동)를 승인했다고 명시할 수 있다. 경고는, (예를 들어, SIEM 애플리케이션 내의) 애플리케이션 메시지, (이메일 계정으로의) 이메일, (셀 또는 VOIP(Voice over Internet Protocol) 계정으로의) 문자 또는 멀티-미디어 메시지, (페이저 번호로의) 페이지 등을 포함하지만 이에 제한되지 않는 복수의 포맷에 따라 생성 및 전송될 수 있다. 그 후, 방법(500)은 종료될 수 있지만, 후속 검출 결과의 수신에 응답하여 동작(510)으로부터 반복될 수 있다.
도 6은 이상에 기초하여 검출 결과를 스코어링하기 위한 예시적인 방법(600)에 수반된 일반적인 단계를 나타내는 흐름도이다. 방법(600)은 도 5의 동작(520)의 서브-단계의 일 예이다. 방법(600)은 동작(610)으로 시작되고, 여기서 검출 결과에 대한 식별자가 계산된다. 다양한 양태들에서, 검출 결과와 상이한 필드 값들(예를 들어, 소스 디바이스 네임, 목적지 IP 어드레스, 사용자, 액션 유형, 액션 효과, 타임스탬프)은 식별자를 생성하는데 사용된다. 식별자는 필드 값 자체(필드 네임의 유무에 관계없이) 또는 관찰된 거동에 대한 식별자로서 필드 값의 암호화 해시(cryptographic hash)와 같은 하나 이상의 필드 값 중 도출된 값을 사용할 수 있다.
동작(620)에서, 식별자에 대한 집계 카운트는 신호 집계 캐시(140)로부터 검색된다. 관찰된 거동의 개체군 및 소정의 거동에 대한 특정 서브 개체군에 대한 집계 카운트는 롤링 시간 윈도우에 기초하여 검색될 수 있어서, 카운트는 현재 시간으로부터 소정의 시간 기간 내에(예를 들어, 마지막 d 일 내에) 발생한 거동에 기초한다. 일부 양태에서, 분석가 사용자에 의해 정의된 과거 관찰된 거동은, 그들이 롤링 시간 윈도우에서 관찰되었는지 여부에 관계없이 개체군 카운트에 포함된다.
방법(600)은 동작(630)으로 진행하고, 여기서 집계 카운트는 신호 집계 캐시(140)에서 업데이트된다. 다양한 양태들에서, 다양한 개체군 및 서브 개체군(예를 들어, 디바이스 A, 사용자 B, 프로세스 C 및 이들의 조합에 대한 거동)에 대한 카운트는 특정 거동 또는 거동의 세트를 관찰하는 것에 응답하여 증분된다. 이러한 증분은, 특정 계정을 증분하게 하는 거동이 롤링 분석 윈도우의 부분으로 지정되는 한, 집계 카운트에 영향을 주고, 거동이 중지(age out)될 것이고, 따라서 거동이 과거 거동으로서 사용하도록 지정되지 않은 경우, 카운트가 감분될 것이다.
동작(640)에서, 검출 결과에 대한 이상 스코어가 계산된다. 다양한 양태에서, 분석가 또는 관리 사용자는 하나 이상의 공식(가령, 위에 소정의 공식 1)을 선택할 수 있다. 다양한 양태들에서, 소정의 분석 윈도우 내에서 온라인 서비스(110)에서 관찰된 모든 이벤트들의 미가공 카운트는 개체군 카운트로서 제공되는 반면, 다른 양태들에서, 온라인 서비스(110)의 분석가-정의된 범위에 따르는, 온라인 서비스(110)에서 관찰된 이벤트의 범위가 정해진 카운트는 개체군 카운트로서 제공된다. 부가적으로, 동작(610)에서 계산된 식별자를 공유하는 거동의 이전 관찰의 수에 대한 서브 개체군 카운트는 미가공 개체군 및 범위가 정해진 개체군(정의된 경우)에 대해 제공된다.
이상 스코어는, 소정의 거동이 이전에 관찰된 정도의 표현을 제공한다. 개체군 카운트(미가공 또는 범위가 정해짐)가 개체군 임계치 미만으로 떨어지는 양태에서, 이상 스코어에 대한 디폴트 값(예를 들어, 100 % 이상, 0 % 이상)은 분석가 선호도에 기초하여 할당될 수 있다. 마찬가지로, 서브 개체군 카운트가 서브 개체군 임계치 미만으로 떨어질 때, 이상 스코어에 대한 디폴트 값(예를 들어, 100 % 이상, 0 % 이상)이 할당될 수 있거나, 거동은 "디바운스"되어, 대기하고, 개체군 스코어를 할당하기 전에, 서브 개체군이 잠재적으로 성장하도록 허용할 수 있다.
이러한 이상 스코어, 개체군 카운트 및 서브 개체군 카운트 중 하나 이상은 이들이 기초한 검출 결과의 새로운 속성으로서 유지되고, 동작(650)에서 다중-신호 검출기(160)로 전송된다. 방법(600)은 동작(650) 후에 종료될 수 있고, 후속 검출 결과를 수신하는 것에 응답하여 동작(610)으로부터 반복될 수 있다.
도 7은 손상된 범위의 다중-신호 검출을 위한 예시적인 방법(700)에 수반된 일반적인 단계를 나타내는 흐름도이다. 방법(700)은 도 5의 동작(540)의 서브-단계의 일 예이다. 방법(700)은 동작(710)으로 시작되고, 여기서 하나 이상의 예측 모델(420)이 선택된다. 예측 모델(420)은: 분석에 이용 가능한 특징 세트; 다른 모델과 비교하여 정확성 또는 예측 정밀도; 분석할 원하는 거동; 이용 가능한 처리 자원; 생산, 트레이닝 또는 평가를 위해 모델을 배포하는지 여부 등을 포함하지만 이에 제한되지 않는 다수의 이유에 기초하여 선택된다. 하나 이상의 예측 모델(420)은, 분석가 또는 다른 관리 사용자가 온라인 서비스(110) 내에서 찾기 원하는 다양한 거동에 대응하는, 분석되는 소정의 범위에 대해 선택될 수 있다.
동작(720)에서, 선택된 예측 모델(420)의 특징 세트에 대응하는 스코어링된 검출 결과로부터 특성이 추출된다. 각각의 예측 모델(420)은 검출 결과로부터의 특성에 기초하여 온라인 서비스에서 다양한 거동을 인식하도록 트레이닝되고, 숫자 포맷으로(예를 들어, 숫자의 어레이로서) 하나 이상의 특성을 나타내는 소정의 특징 벡터와 연관될 수 있다. 특성이 숫자 값(예를 들어, 이상 스코어, 개체군 카운트), 텍스트 값(예를 들어, 사용자 네임, 액션 네임, 프로세스 네임) 및 의사-숫자 값(예를 들어, IP 어드레스, 타임스탬프)을 포함할 수 있기 때문에, 특성은 동작(730)에서 특징으로 변환하기 위해 스코어링된다. 당업자는, 특징으로서 사용하기 위해 비-숫자 값을 숫자 값으로 변환하는 다양한 동작에 친숙할 것이다. 다양한 양태들에서, 압축 또는 포맷팅 동작(예를 들어, 시그모이드 스쿼싱 함수(sigmoid squashing function))은 예측 모델(420)에 의한 소비를 위한 특징 값을 포맷하기 위해 특성의 숫자 변환(및 원래 숫자)에 적용된다.
동작(740)으로 진행하여, 선택된 예측 모델(420)은 특징 벡터에 전달되어, 검출 결과의 거동(들)이 악성인지 양성인지에 대한 신뢰도 스코어를 생성한다. 예측 모델(420)은, 출력으로서 신뢰도 스코어를 생성하기 위해 하나 이상의 특징 벡터(및 일부 양태들에서, 다른 예측 모델(420)의 출력)를 입력으로서 수용하는 알고리즘이다. 신뢰도 스코어는, 입력으로 표현되는 거동이 악성 또는 양성으로 분류될 수 있는지에 대한 확실성 레벨을 나타내는 예측이다. 다양한 양태에서, 예측 모델(420)은, 소정의 거동이 악성 또는 양성으로 처리되어야 하는지 여부를 예측하기 위해 연속적인 머신 학습 프로세스의 많은 시대에 걸쳐 개발되고, 연속적인 학습 단계에 걸쳐 시간이 지남에 따라, 분석가 또는 다른 관리 사용자로부터 수신된 피드백 및 다른 모델에 기초하여 자신의 예측을 적응시킬 수 있다.
일단 신뢰도 스코어가 생성되면, 이는 전송 또는 추후 사용을 위해 동작(750)에서 저장된다. 예를 들어, 신뢰도 스코어는, 머신 학습 프로세스의 다음 학습 단계에서 예측 모델(420)을 반복적으로 개선하기 위해 트레이닝 세트에서 사용하기 위해 다중-신호 결과 캐시(170)에 저장될 수 있다. 다른 예에서, 신뢰도 스코어는 경고 생성기(180)로의 전송을 위해 저장되며, 여기서 신뢰도 스코어 및 경고 로직에 기초하여, 관찰된 거동에 대한 경고를 생성할지 여부가 결정될 수 있다. 그 후, 방법(700)은 종료될 수 있고, 분석하기 위해 다른 범위의 검출 결과를 수신하는 것에 응답하여 동작(710)으로부터 반복될 수 있다.
구현예들이 컴퓨터 상의 운영 체제에서 실행되는 애플리케이션 프로그램과 함께 실행되는 프로그램 모듈의 일반적인 맥락에서 설명되었지만, 당업자는 양태가 또한 다른 프로그램 모듈과 함께 구현될 수도 있다는 것을 인식할 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 타입을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 다른 타입의 구조를 포함한다.
본 명세서에 설명된 양태 및 기능은 데스크톱 컴퓨터 시스템, 유무선 컴퓨팅 시스템, 모바일 컴퓨팅 시스템(예를 들어, 모바일 전화, 넷북, 태블릿 또는 슬레이트형 컴퓨터, 노트북 컴퓨터 및 랩톱 컴퓨터), 핸드-헬드 디바이스, 멀티 프로세서 시스템, 마이크로 프로세서 기반 또는 프로그래머블 가전 제품, 미니 컴퓨터, 및 메인 프레임 컴퓨터를 포함하지만 이에 한정되는 것은 아닌 복수의 컴퓨팅 시스템을 통해 동작할 수 있다.
또한, 일 양태에 따라, 본 명세서에 설명된 양태 및 기능은 분산 시스템(예를 들어, 클라우드 기반 컴퓨팅 시스템)을 통해 동작하고, 여기서 애플리케이션 기능성, 메모리, 데이터 저장 및 검색 및 다양한 프로세싱 기능이 인터넷 또는 인트라넷과 같은 분산 컴퓨팅 네트워크를 통해 서로 원격으로 동작된다. 일 양태에 따라, 다양한 유형의 사용자 인터페이스 및 정보가 온보드 컴퓨팅 디바이스 디스플레이를 통해 또는 하나 이상의 컴퓨팅 디바이스들과 관련된 원격 디스플레이 유닛을 통해 디스플레이된다. 예를 들어, 다양한 유형의 사용자 인터페이스 및 정보가 투영되는 벽면 상에 다양한 유형의 사용자 인터페이스 및 정보가 디스플레이되고 상호 작용된다. 구현예들이 실시되는 복수의 컴퓨팅 시스템과의 상호 작용은, 키스트로크 엔트리, 터치 스크린 엔트리, 음성 또는 다른 오디오 엔트리, 제스처 엔트리를 포함하고, 여기서 연관된 컴퓨팅 디바이스에는 컴퓨팅 디바이스의 기능을 제어하기 위해 사용자 제스처를 캡처 및 해석하기 위한 검출(예를 들어, 카메라) 기능이 장착된다.
도 8, 도 9a 및 도 9b 및 관련 설명은 예시들이 실시되는 다양한 동작 환경에 대한 설명을 제공한다. 그러나 도 8, 도 9a 및 도 9b에 대하여 도시되고 논의된 디바이스 및 시스템은 예시 및 설명을 위한 것으로, 본 명세서에 설명된 양태를 실시하는 데 사용될 수 있는 대다수의 컴퓨팅 디바이스 구성을 한정하는 것이 아니다.
도 8은 본 개시의 예시들이 실시될 수 있는 컴퓨팅 디바이스(800)의 물리적 컴포넌트(즉, 하드웨어)를 도시하는 블록도이다. 기본 구성에서, 컴퓨팅 디바이스(800)는 적어도 하나의 프로세싱 유닛(802) 및 시스템 메모리(804)를 포함할 수 있다. 일 양태에 따라, 컴퓨팅 디바이스의 구성 및 타입에 따라, 시스템 메모리(804)는 비제한적으로, 휘발성 저장 장치(예를 들어, 랜덤 액세스 메모리), 비휘발성 저장 장치(예를 들어, 판독 전용 메모리), 플래시 메모리, 또는 이러한 메모리들의 임의의 조합을 포함할 수 있다. 일 양태에 따라, 시스템 메모리(804)는 운영 체제(805) 및 소프트웨어 애플리케이션(850)을 실행하기에 적합한 하나 이상의 프로그램 모듈(806)을 포함한다. 일 양태에 따라, 시스템 메모리(804)는 이상 검출기(190)를 포함한다. 예를 들어, 운영 체제(805)는 컴퓨팅 디바이스(800)의 동작을 제어하는데 적합하다. 또한, 양태는 그래픽 라이브러리, 다른 운영 체제 또는 임의의 다른 애플리케이션 프로그램과 관련하여 실시되며, 임의의 특정 애플리케이션 또는 시스템에 한정되지 않는다. 이러한 기본 구성은 점선(808) 내의 컴포넌트로 도 8에 도시된다. 일 양태에 따라, 컴퓨팅 디바이스(800)는 추가적인 특징 또는 기능을 갖는다. 예를 들어, 일 양태에 따라, 컴퓨팅 디바이스(800)는, 예를 들어, 자기 디스크, 광 디스크 또는 테이프와 같은 추가의 데이터 저장 디바이스(제거 가능 및/또는 제거 불가)를 포함한다. 이러한 추가의 저장소는 제거 가능 저장 디바이스(809) 및 제거 불가 저장 디바이스(810)로 도 8에 도시된다.
위에서 언급한 바와 같이, 일 양태에 따라, 복수의 프로그램 모듈 및 데이터 파일이 시스템 메모리(804)에 저장된다. 프로세싱 유닛(802) 상에서 실행되는 동안, 프로그램 모듈(806)(예를 들어, 이상 검출기(190))은 도 5, 도 6 및 도 7에 도시된 방법(500, 600 및 700)의 하나 이상의 단계들을 포함하지만 이에 한정되는 것은 아닌 프로세스들을 수행한다. 일 양태에 따라, 다른 프로그램 모듈이 예에 따라 사용되며, 전자 메일 및 연락처 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드 시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터 지원 애플리케이션 프로그램 등과 같은 애플리케이션을 포함한다.
일 양태에 따라, 컴퓨팅 디바이스(800)는 키보드, 마우스, 펜, 사운드 입력 디바이스, 터치 입력 디바이스 등과 같은 하나 이상의 입력 디바이스(들)(812)를 갖는다. 디스플레이, 스피커, 프린터 등과 같은 출력 디바이스(들)(814)가 또한 일 양태에 따라 포함된다. 전술한 디바이스들은 예시적인 것이고, 다른 것들도 사용될 수 있다. 일 양태에 따라, 컴퓨팅 디바이스(800)는 다른 컴퓨팅 디바이스(818)와의 통신을 허용하는 하나 이상의 통신 연결(816)을 포함한다. 적합한 통신 연결(816)의 예는, 비제한적으로, 무선 주파수(RF) 송신기, 수신기 및/또는 송수신기 회로, 범용 직렬 버스(universal serial bus; USB), 병렬 및/또는 직렬 포트를 포함한다.
본 명세서에 사용되는 바와 같은 컴퓨터 판독 가능 매체라는 용어는 컴퓨터 저장 매체를 포함한다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 또는 프로그램 모듈 등과 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 제거 가능 및 제거 불가 매체를 포함한다. 시스템 메모리(804), 제거 가능 저장 디바이스(809) 및 제거 불가 저장 디바이스(810)는 모두 컴퓨터 저장 매체의 예(즉, 메모리 저장소)이다. 일 양태에 따라, 컴퓨터 저장 매체는 RAM, ROM, 전기적 소거 가능 프로그램 가능 판독 전용 메모리(electrically erasable programmable read-only memory; EEPROM), 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(digital versatile disk; DVD) 또는 다른 광학 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 다른 자기 저장 디바이스, 또는 정보를 저장하는 데 사용될 수 있고 컴퓨팅 디바이스(800)에 의해 액세스될 수 있는 임의의 다른 제조물을 포함한다. 일 양태에 따라, 임의의 이러한 컴퓨터 저장 매체는 컴퓨팅 디바이스(800)의 일부이다. 컴퓨터 저장 매체는 반송파 또는 다른 전파된 데이터 신호를 포함하지 않는다.
일 양태에 따라, 통신 매체는 반송파 또는 다른 송신 메커니즘과 같은 변조된 데이터 신호에 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터를 구현하며, 임의의 정보 전달 매체를 포함한다. 일 양태에 따라, 용어 "변조된 데이터 신호"는 신호 내에 정보를 인코딩하는 방식으로 설정되거나 변경된 하나 이상의 특성을 갖는 신호를 설명한다. 비제한적인 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 연결과 같은 유선 매체 및 음향, 무선 주파수(RF), 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다.
도 9a 및 도 9b는 양태가 실시될 수 있는 모바일 컴퓨팅 디바이스(900), 예를 들어, 모바일 전화, 스마트 폰, 태블릿 퍼스널 컴퓨터, 랩톱 컴퓨터 등을 도시한다. 도 9a를 참조하면, 양태를 구현하기 위한 모바일 컴퓨팅 디바이스(900)의 예가 도시되어 있다. 기본 구성에서, 모바일 컴퓨팅 디바이스(900)는 입력 요소 및 출력 요소 양자 모두를 갖는 핸드 헬드 컴퓨터이다. 모바일 컴퓨팅 디바이스(900)는 통상적으로 디스플레이(905), 및 사용자가 모바일 컴퓨팅 디바이스(900)에 정보를 입력하게 할 수 있는 하나 이상의 입력 버튼(910)을 포함한다. 일 양태에 따라, 모바일 컴퓨팅 디바이스(900)의 디스플레이(905)는 입력 디바이스(예를 들어, 터치 스크린 디스플레이)로서 기능 한다. 선택적인 측면 입력 요소(915)가 포함되면, 이것은 추가의 사용자 입력을 허용한다. 일 양태에 따라, 측면 입력 요소(915)는 로터리 스위치, 버튼, 또는 임의의 다른 타입의 수동 입력 요소이다. 대안적인 예들에서, 모바일 컴퓨팅 디바이스(900)는 더 많거나 적은 입력 요소들을 포함한다. 예를 들어, 디스플레이(905)는 일부 예들에서 터치 스크린이 아닐 수 있다. 대안적인 예들에서, 모바일 컴퓨팅 디바이스(900)는 셀룰러 폰과 같은 휴대 전화 시스템이다. 일 양태에 따라, 모바일 컴퓨팅 디바이스(900)는 선택적인 키패드(935)를 포함한다. 일 양태에 따라, 선택적인 키패드(935)는 물리적 키패드이다. 다른 양태에 따라, 선택적인 키패드(935)는 터치 스크린 디스플레이 상에 생성된 "소프트" 키패드이다. 다양한 양태에서, 출력 요소들은 그래픽 사용자 인터페이스(graphical user interface; GUI)를 표시하기 위한 디스플레이(905), 시각적 표시자(920)(예를 들어, 발광 다이오드), 및/또는 오디오 트랜스듀서(925)(예를 들어, 스피커)를 포함한다. 일부 예들에서, 모바일 컴퓨팅 디바이스(900)는 촉각 피드백을 사용자에게 제공하기 위한 진동 트랜스듀서를 포함한다. 또 다른 예들에서, 모바일 컴퓨팅 디바이스(900)는 외부 디바이스에 신호를 보내거나 외부 디바이스로부터 신호를 수신하기 위한, 오디오 입력(예를 들어, 마이크 잭), 오디오 출력(예를 들어, 헤드폰 잭) 및 비디오 출력(예를 들어, HDMI 포트)과 같은 입력 및/또는 출력 포트를 포함한다. 또 다른 예들에서, 모바일 컴퓨팅 디바이스(900)는 외부 디바이스에 신호를 보내거나 외부 디바이스로부터 신호를 수신하기 위한, 오디오 입력(예를 들어, 마이크 잭), 오디오 출력(예를 들어, 헤드폰 잭) 및 비디오 출력(예를 들어, HDMI 포트)과 같은 주변 장치 포트(940)를 포함한다.
도 9b는 모바일 컴퓨팅 디바이스의 일 예의 아키텍처를 도시하는 블록도이다. 즉, 모바일 컴퓨팅 디바이스(900)는 일부 예들을 구현하기 위해 시스템(즉, 아키텍처)(902)을 포함한다. 일 예로, 시스템(902)은 하나 이상의 애플리케이션들(예를 들어, 브라우저, 이메일, 캘린더, 연락처 관리자, 메시징 클라이언트, 게임, 및 미디어 클라이언트/플레이어)을 실행할 수 있는 "스마트 폰"으로서 구현된다. 일부 예들에서, 시스템(902)은 통합된 개인 휴대 정보 단말기(personal digital assistant; PDA) 및 무선 전화와 같은 컴퓨팅 디바이스로서 통합된다.
일 양태에 따라, 하나 이상의 애플리케이션 프로그램(950)이 메모리(962)에 로딩될 수 있고, 운영 체제(964) 상에서 실행되거나 이와 관련하여 실행된다. 애플리케이션 프로그램의 예에는 전화 걸기 프로그램, 이메일 프로그램, 개인 정보 관리(personal information management; PIM) 프로그램, 워드 프로세싱 프로그램, 스프레드 시트 프로그램, 인터넷 브라우저 프로그램, 메시징 프로그램 등을 포함된다. 일 양태에 따라, 이상 검출기(190)는 메모리(962)에 로딩된다. 시스템(902)은 또한 메모리(962) 내에 비휘발성 저장 영역(968)을 포함한다. 비휘발성 저장 영역(968)은 시스템(902)의 전원이 꺼지는 경우 손실되지 않아야 하는 영구 정보를 저장하기 위해 사용된다. 애플리케이션 프로그램(950)은 이메일 또는 이메일 애플리케이션에 의해 사용되는 다른 메시지 등과 같은 정보를 사용하고, 비휘발성 저장 영역(968)에 저장할 수 있다. 동기화 애플리케이션(도시되지 않음)이 또한 시스템(902) 상에 존재하고, 호스트 컴퓨터 상에 존재하는 대응하는 동기화 애플리케이션과 상호 작용하도록 프로그램되어 호스트 컴퓨터에 저장된 대응하는 정보와 동기화된 상태로 비휘발성 저장 영역(968)에 저장된 정보를 유지한다. 알 수 있는 바와 같이, 다른 애플리케이션들이 메모리(962)에 로딩되어 모바일 컴퓨팅 디바이스(900) 상에서 실행될 수 있다.
일 양태에 따라, 시스템(902)은 전원 공급 장치(970)를 갖고, 이는 하나 이상의 배터리들로서 구현된다. 일 양태에 따라, 전원 공급 장치(970)는 배터리를 보충하거나 재충전하는 전원 도킹 크래들 또는 AC 어댑터와 같은 외부 전원을 더 포함한다.
일 양태에 따라, 시스템(902)은 무선 주파수 통신을 송신 및 수신하는 기능을 수행하는 라디오(972)를 포함한다. 라디오(972)는 통신 캐리어 또는 서비스 제공자를 통해, 시스템(902)과 "외부 세계" 사이의 무선 접속을 용이하게 한다. 라디오(972)로의 송신 및 라디오(972)로부터의 송신은 운영 체제(964)의 제어 하에 수행된다. 다시 말해서, 라디오(972)에 의해 수신된 통신 정보는 운영 체제(964)를 통해 애플리케이션 프로그램(950)에 보급될 수 있거나, 그 반대일 수도 있다.
일 양태에 따라, 시각적 표시자(920)는 시각적 통지를 제공하기 위해 사용되며, 및/또는 오디오 인터페이스(974)는 오디오 트랜스듀서(925)를 통해 가청 통지를 생성하는데 사용된다. 도시된 예에서, 시각적 표시자(920)는 발광 다이오드(light emitting diode; LED)이고, 오디오 트랜스듀서(925)는 스피커이다. 이러한 디바이스들은 활성화될 때, 프로세서(960) 및 다른 컴포넌트들이 배터리 전원을 절약하기 위해서 정지하더라도 이들은 통지 메커니즘에 의해 지시된 기간 동안 온 상태를 유지하도록 전원 공급 장치(970)에 직접적으로 결합될 수 있다. LED는 디바이스의 파워 온 상태를 나타내기 위해 사용자가 조치를 취할 때까지 무기한으로 온 상태를 유지하도록 프로그램될 수 있다. 오디오 인터페이스(974)는 사용자에게 가청 신호를 제공하고 사용자로부터 가청 신호를 수신하기 위해 사용된다. 예를 들어, 오디오 트랜스듀서(925)에 결합되는 것에 더하여, 오디오 인터페이스(974)는 전화 통화를 용이하게 하기 위해서와 같이, 가청 입력을 수신하기 위해 마이크에 또한 결합될 수 있다. 일 양태에 따라, 시스템(902)은 스틸 이미지, 비디오 스트림 등을 기록하기 위해 온보드 카메라(930)의 동작을 가능하게 하는 비디오 인터페이스(976)를 더 포함한다.
일 양태에 따라, 시스템(902)을 구현하는 모바일 컴퓨팅 디바이스(900)는 추가의 특징 또는 기능을 갖는다. 예를 들어, 모바일 컴퓨팅 디바이스(900)는 자기 디스크, 광 디스크, 또는 테이프와 같은 추가의 데이터 저장 디바이스(제거 가능 및/또는 제거 불가)를 포함한다. 이러한 추가의 저장 장치는 비휘발성 저장 영역(968)으로 도 9b에 도시되어 있다.
일 양태에 따라, 모바일 컴퓨팅 디바이스(900)에 의해 생성되거나 캡처되고 시스템(902)을 통해 저장된 데이터/정보는 위에서 설명된 바와 같이 모바일 컴퓨팅 디바이스(900)에 국부적으로 저장된다. 또 다른 양태에 따라, 데이터는 라디오(972)를 통해 또는 모바일 컴퓨팅 디바이스(900)와 모바일 컴퓨팅 디바이스(900)와 연관된 별도의 컴퓨팅 디바이스, 예를 들어, 인터넷과 같은 분산 컴퓨팅 네트워크의 서버 컴퓨터 간의 유선 연결을 통해 디바이스에 의해 액세스 가능한 임의의 수의 저장 매체에 저장된다. 인지되는 바와 같이, 이러한 데이터/정보는 모바일 컴퓨팅 디바이스(900)를 통해, 라디오(972)를 통해, 또는 분산 컴퓨팅 네트워크를 통해 액세스 가능하다. 마찬가지로, 일 양태에 따라, 이러한 데이터/정보는 전자 메일 및 공동 데이터/정보 공유 시스템을 포함하는 공지된 데이터/정보 전달 및 저장 수단에 따라 저장 및 사용을 위해 컴퓨팅 디바이스들 사이에 용이하게 전달된다.
예를 들어, 구현예들은 양태에 따른 방법, 시스템 및 컴퓨터 프로그램 제품의 블록도 및/또는 동작도를 참조하여 위에서 설명된다. 블록도에 표시된 기능/동작은 임의의 순서도에 도시된 바와 같은 순서대로 수행되지 않을 수 있다. 예를 들어, 관련된 기능/동작에 따라, 연속하여 도시된 두개의 블록들은, 실제에서, 실질적으로 동시에 실행될 수 있거나, 또는 블록들은 때때로 반대 순서로 실행될 수 있다.
본 출원에 제공된 하나 이상의 예들의 상세한 설명 및 도면은 어떤 식으로든 주장되는 범위를 한정하거나 제한하기 위한 것이 아니다. 본 출원에 제공된 양태, 예시, 및 세부 사항은 소유권 전달하기에 충분한 것으로 고려되고, 다른 사람들이 최적 모드를 만들고 사용하는 것을 가능하게 한다. 구현예들은 본 출원에 제공된 임의의 양태, 예제, 또는 세부 사항으로 한정되는 것으로 해석되어서는 안 된다. 결합하여 또는 별도로 도시되고 설명되는지 여부에 관계없이, 다양한 특징(구조적 및 방법론 양자 모두)은 특정 세트의 특징을 갖는 예제를 생성하기 위해 선택적으로 포함되거나 생략되도록 의도된다. 본 출원의 설명 및 도면이 제공되었지만, 당업자는 본 출원의 폭넓은 범위로부터 벗어나지 않는 본 출원에 포함된 일반적인 발명의 개념의 폭넓은 양태의 사상 내에 속하는 변화, 수정 및 대안적인 예들을 구상할 수 있다.

Claims (15)

  1. 온라인 서비스에서 손상된 범위를 검출하기 위한 방법으로서,
    상기 온라인 서비스 내의 디바이스 상에서 발생하는 거동의 검출 결과를 수신하는 단계와,
    연관된 거동이 상기 온라인 서비스 내에서 얼마나 이상(anomalous)한지에 기초하여, 상기 검출 결과를 스코어링(score)하는 단계와,
    범위에 따라 상기 스코어링된 검출 결과를 구성하는 단계와,
    소정의 범위가 손상되는지를 여부를 나타내는 신뢰도 스코어(confidence score)를 생성하기 위해, 다중-신호 검출 로직(multi-signal detection logic)을 상기 소정의 범위에 적용하는 단계와,
    상기 신뢰도 스코어와 경고 임계치(alert threshold)를 비교하는 것에 기초하여, 상기 소정의 범위가 손상된 것의 경고를 제공할지 여부를 결정하는 단계와,
    상기 소정의 범위가 손상된 것의 경고가 제공된다고 결정하는 것에 응답하여, 상기 경고를 생성 및 전송하는 단계를 포함하는
    손상된 범위 검출 방법.
  2. 제 1 항에 있어서,
    상기 소정의 범위는 상기 온라인 서비스 내의 소정의 디바이스 또는 소정의 사용자 계정과 연관되는
    손상된 범위 검출 방법.
  3. 제 1 항에 있어서,
    상기 검출 결과를 스코어링하는 단계는,
    소정의 검출 결과에 대한 식별자를 계산하는 단계와,
    상기 소정의 검출 결과에 대한 집계 카운트(aggregate count)를 검색하는 단계와,
    상기 소정의 검출 결과에 대한 집계 개체군 카운트(aggregate population count)를 증분하는 단계와,
    상기 집계 개체군 카운트에 기초하여, 상기 소정의 검출 결과에 대한 이상 스코어(anomaly score)를 계산하는 단계와,
    스코어링된 검출 결과를 생성하기 위해, 상기 이상 스코어와 상기 소정의 검출 결과를 연관시키는 단계를 더 포함하는
    손상된 범위 검출 방법.
  4. 제 3 항에 있어서,
    상기 집계 개체군 카운트는,
    각각의 관찰된 검출 결과에 대해 증분되는 미가공 개체군 카운트(raw population count)와,
    검출 결과들의 서브 개체군(subpopulation)을 정의하는 특성을 포함하는 각각의 관찰된 검출 결과에 대해 증분되는 적어도 하나의 서브 개체군 카운트를 포함하는
    손상된 범위 검출 방법.
  5. 제 1 항에 있어서,
    상기 범위에 따라 상기 스코어링된 검출 결과를 구성하는 단계는,
    상기 검출 결과를 분할하는 특성을 식별하는 범위 정의를 수신하는 단계와,
    상기 검출 결과가 분석되고 관찰되는, 현재 시간으로부터의 시간 윈도우(time window)를 수신하는 단계와,
    상기 검출 결과에 포함된 상기 식별된 특성의 값에 따라, 상기 시간 윈도우 내에서 관찰된 상기 검출 결과를 상기 범위로 분할하는 단계를 더 포함하는
    손상된 범위 검출 방법.
  6. 제 1 항에 있어서,
    몇 분의 검출 결과를 포함하는 더 작은 시간 윈도우, 및 며칠의 결과를 포함하는 더 큰 시간 윈도우로부터의 검출 결과는 상기 범위에 포함되는
    손상된 범위 검출 방법.
  7. 제 1 항에 있어서,
    상기 신뢰도 스코어를 생성하기 위해, 다중-신호 검출 로직을 소정의 범위에 적용하는 단계는,
    예측 모델(predictive model)을 선택하는 단계와,
    상기 검출 결과로부터 특성을 추출하는 단계와,
    숫자 값 특징(numerically valued feature)으로 변환하기 위해 상기 특성을 스코어링하는 단계와,
    상기 신뢰도 스코어를 생성하기 위해, 상기 특징을 상기 예측 모델에 제공하는 단계를 더 포함하는
    손상된 범위 검출 방법.
  8. 제 7 항에 있어서,
    상기 예측 모델은 연속적인 머신 학습 프로세스(continuous machine learning process)에 기초하여 생성 및 선택되는
    손상된 범위 검출 방법.
  9. 프로세서 및 명령어를 저장하는 메모리 저장 디바이스를 포함하는 시스템으로서,
    상기 명령어는, 상기 프로세서에 의해 실행될 때, 온라인 서비스에서 손상된 범위를 검출하는 것을 제공하고,
    상기 시스템은,
    시그니처 이상 스코어러(signature anomaly scorer)와,
    상기 시그니처 이상 스코어러와 통신하는 다중-신호 검출기를 포함하고,
    상기 시그니처 이상 스코어러는,
    상기 온라인 서비스에서 발생되는 관찰된 이벤트의 소정의 검출 결과를 수신하고,
    상기 소정의 검출 결과와 연관된 거동이 상기 온라인 서비스에서 발생한 것으로 이전에 관찰된 정도를 결정하고,
    상기 거동이 이전에 관찰된 정도에 기초하여, 상기 소정의 검출 결과와 연관될 이상 스코어를 생성하도록 구성되고,
    상기 다중-신호 검출기는,
    상기 소정의 검출 결과와 상기 온라인 서비스에서의 범위를 공유하는 하나 이상의 검출 결과를 수신하고,
    상기 검출 결과와 연관된 상기 이상 스코어를, 상기 시그니처 이상 스코어러로부터, 수신하고,
    상기 범위의 검출 결과로부터 특징을 추출 ― 상기 특징은 상기 이상 스코어를 포함함 ― 하고,
    상기 추출된 특징에 기초하여, 상기 범위가 손상되는지 여부에 대한 신뢰도 스코어를 생성하도록 구성되는
    시스템.
  10. 제 9 항에 있어서,
    상기 소정의 검출 결과와 상기 온라인 서비스에서의 범위를 공유하는 상기 하나 이상의 검출 결과는 시간 윈도우 내에서 관찰되는
    시스템.
  11. 제 10 항에 있어서,
    상기 소정의 검출 결과와 연관된 거동이 상기 온라인 서비스에서 발생한 것으로 이전에 관찰된 정도는 상기 시간 윈도우 동안의 발생에 기초하는
    시스템.
  12. 제 9 항에 있어서,
    상기 소정의 검출 결과와 연관된 거동이 상기 온라인 서비스에서 발생한 것으로 이전에 관찰된 정도는,
    상기 온라인 서비스에서 발생한 이벤트의 미가공 개체군 카운트와,
    상기 온라인 서비스에서 상기 거동의 발생의 수의 미가공 서브 개체군 카운트에 기초하는
    시스템.
  13. 제 9 항에 있어서,
    상기 소정의 검출 결과와 연관된 거동이 상기 온라인 서비스에서 발생한 것으로 이전에 관찰된 정도는,
    상기 온라인 서비스의 범위를 포함하는 엔티티의 수의 범위가 정해진 개체군 카운트(scoped population count)와,
    상기 거동과 연관된 상기 범위 내의 엔티티의 수의 범위가 정해진 서브 개체군 카운트에 기초하는
    시스템.
  14. 제 13 항에 있어서,
    상기 범위를 포함하는 엔티티는 분석자에 의해 상기 온라인 서비스 내의 디바이스 또는 상기 온라인 서비스의 사용자 계정 중 하나로서 정의되는
    시스템.
  15. 온라인 서비스에서 손상된 범위를 검출하기 위한 프로세서 실행 가능 명령어를 포함하는 컴퓨터 판독 가능 저장 디바이스로서,
    상기 명령어는,
    상기 온라인 서비스 내의 디바이스 상에서 발생하는 거동의 검출 결과를 수신하는 명령어와,
    연관된 거동이 상기 온라인 서비스 내에서 얼마나 이상한지에 기초하여, 상기 검출 결과를 스코어링하는 명령어와,
    범위에 따라 상기 스코어링된 검출 결과를 구성하는 명령어 ― 소정의 범위는 상기 온라인 서비스 내의 소정의 디바이스 또는 소정의 사용자 계정과 연관됨 ― 와,
    상기 소정의 범위가 손상되는지를 여부를 나타내는 신뢰도 스코어를 생성하기 위해, 다중-신호 검출 로직을 상기 소정의 범위에 적용하는 명령어와,
    상기 신뢰도 스코어와 경고 임계치를 비교하는 것에 기초하여, 상기 소정의 범위가 손상된 것을 분석자에게 경고할지 여부를 결정하는 명령어와,
    상기 소정의 범위가 손상된 것이 상기 분석자에게 경고된다고 결정하는 것에 응답하여, 경고를 생성 및 전송하는 명령어를 포함하는
    컴퓨터 판독 가능 저장 디바이스.
KR1020197023658A 2017-02-13 2018-02-12 손상된 범위 식별을 위한 다중-신호 분석 KR102433425B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/431,391 2017-02-13
US15/431,391 US10491616B2 (en) 2017-02-13 2017-02-13 Multi-signal analysis for compromised scope identification
PCT/US2018/017817 WO2018148657A1 (en) 2017-02-13 2018-02-12 Multi-signal analysis for compromised scope identification

Publications (2)

Publication Number Publication Date
KR20190117526A true KR20190117526A (ko) 2019-10-16
KR102433425B1 KR102433425B1 (ko) 2022-08-17

Family

ID=61386917

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197023658A KR102433425B1 (ko) 2017-02-13 2018-02-12 손상된 범위 식별을 위한 다중-신호 분석

Country Status (18)

Country Link
US (2) US10491616B2 (ko)
EP (1) EP3552138B1 (ko)
JP (1) JP7108365B2 (ko)
KR (1) KR102433425B1 (ko)
CN (1) CN110366727B (ko)
AU (1) AU2018219369B2 (ko)
BR (1) BR112019014366A2 (ko)
CA (1) CA3050321A1 (ko)
CL (1) CL2019002189A1 (ko)
CO (1) CO2019008341A2 (ko)
IL (1) IL268231B (ko)
MX (1) MX2019009505A (ko)
NZ (1) NZ755115A (ko)
PH (1) PH12019550134A1 (ko)
RU (1) RU2768562C2 (ko)
SG (1) SG11201907140UA (ko)
WO (1) WO2018148657A1 (ko)
ZA (1) ZA201904963B (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10943069B1 (en) 2017-02-17 2021-03-09 Narrative Science Inc. Applied artificial intelligence technology for narrative generation based on a conditional outcome framework
US20190038934A1 (en) * 2017-08-03 2019-02-07 International Business Machines Corporation Cognitive advisory system of structured assessments through iot sensors
US10706236B1 (en) * 2018-06-28 2020-07-07 Narrative Science Inc. Applied artificial intelligence technology for using natural language processing and concept expression templates to train a natural language generation system
US11012421B2 (en) 2018-08-28 2021-05-18 Box, Inc. Predicting user-file interactions
US11487873B2 (en) * 2019-01-22 2022-11-01 EMC IP Holding Company LLC Risk score generation utilizing monitored behavior and predicted impact of compromise
US11546362B2 (en) 2019-04-29 2023-01-03 Jpmorgan Chase Bank, N.A. Systems and methods for data-driven infrastructure controls
US11799890B2 (en) * 2019-10-01 2023-10-24 Box, Inc. Detecting anomalous downloads
US11449548B2 (en) 2019-11-27 2022-09-20 Elasticsearch B.V. Systems and methods for enriching documents for indexing
US11768945B2 (en) * 2020-04-07 2023-09-26 Allstate Insurance Company Machine learning system for determining a security vulnerability in computer software
US20210344690A1 (en) * 2020-05-01 2021-11-04 Amazon Technologies, Inc. Distributed threat sensor analysis and correlation
US11704185B2 (en) * 2020-07-14 2023-07-18 Microsoft Technology Licensing, Llc Machine learning-based techniques for providing focus to problematic compute resources represented via a dependency graph
CN112700060B (zh) * 2021-01-08 2023-06-13 佳源科技股份有限公司 站所终端负荷预测方法和预测装置
US11902330B1 (en) * 2021-06-16 2024-02-13 Juniper Networks, Inc. Generating a network security policy based on a user identity associated with malicious behavior
JPWO2022269786A1 (ko) * 2021-06-23 2022-12-29

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294187A1 (en) * 2006-06-08 2007-12-20 Chad Scherrer System and method for anomaly detection
US8122122B1 (en) * 2005-11-08 2012-02-21 Raytheon Oakley Systems, Inc. Event monitoring and collection
EP2908495A1 (en) * 2014-02-18 2015-08-19 Palo Alto Research Center Incorporated System and method for modeling behavior change and consistency to detect malicious insiders

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003083660A1 (en) * 2002-03-29 2003-10-09 Global Dataguard, Inc. Adaptive behavioral intrusion detection systems and methods
US7784099B2 (en) * 2005-02-18 2010-08-24 Pace University System for intrusion detection and vulnerability assessment in a computer network using simulation and machine learning
US8490194B2 (en) * 2006-01-31 2013-07-16 Robert Moskovitch Method and system for detecting malicious behavioral patterns in a computer, using machine learning
US7908660B2 (en) * 2007-02-06 2011-03-15 Microsoft Corporation Dynamic risk management
US20080295172A1 (en) * 2007-05-22 2008-11-27 Khushboo Bohacek Method, system and computer-readable media for reducing undesired intrusion alarms in electronic communications systems and networks
JP5046836B2 (ja) * 2007-10-02 2012-10-10 Kddi株式会社 不正検知装置、プログラム、および記録媒体
US8321938B2 (en) 2009-02-12 2012-11-27 Raytheon Bbn Technologies Corp. Multi-tiered scalable network monitoring
CN101547129B (zh) * 2009-05-05 2011-05-04 中国科学院计算技术研究所 分布式拒绝服务攻击的检测方法及系统
US20100293103A1 (en) 2009-05-12 2010-11-18 Microsoft Corporation Interaction model to migrate states and data
US8793151B2 (en) * 2009-08-28 2014-07-29 Src, Inc. System and method for organizational risk analysis and reporting by mapping detected risk patterns onto a risk ontology
US8712596B2 (en) * 2010-05-20 2014-04-29 Accenture Global Services Limited Malicious attack detection and analysis
CN104820804A (zh) * 2010-12-30 2015-08-05 艾新顿公司 在线隐私管理
WO2013043170A1 (en) * 2011-09-21 2013-03-28 Hewlett-Packard Development Company L.P. Automated detection of a system anomaly
US9529777B2 (en) * 2011-10-28 2016-12-27 Electronic Arts Inc. User behavior analyzer
US9117076B2 (en) * 2012-03-14 2015-08-25 Wintermute, Llc System and method for detecting potential threats by monitoring user and system behavior associated with computer and network activity
US9832211B2 (en) * 2012-03-19 2017-11-28 Qualcomm, Incorporated Computing device to detect malware
EP2973382B1 (en) * 2013-03-15 2019-07-17 Socure Inc. Risk assessment using social networking data
US9558347B2 (en) * 2013-08-27 2017-01-31 Globalfoundries Inc. Detecting anomalous user behavior using generative models of user actions
US9338187B1 (en) * 2013-11-12 2016-05-10 Emc Corporation Modeling user working time using authentication events within an enterprise network
CN103853841A (zh) * 2014-03-19 2014-06-11 北京邮电大学 一种社交网用户异常行为的分析方法
US9565203B2 (en) * 2014-11-13 2017-02-07 Cyber-Ark Software Ltd. Systems and methods for detection of anomalous network behavior
US9690933B1 (en) * 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US9654485B1 (en) * 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US20160308725A1 (en) 2015-04-16 2016-10-20 Nec Laboratories America, Inc. Integrated Community And Role Discovery In Enterprise Networks
WO2016177437A1 (en) * 2015-05-05 2016-11-10 Balabit S.A. Computer-implemented method for determining computer system security threats, security operations center system and computer program product
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US9888024B2 (en) * 2015-09-30 2018-02-06 Symantec Corporation Detection of security incidents with low confidence security events
MA44828A (fr) 2016-02-16 2018-12-26 Morpho Bv Procédé, système, dispositif, et produit-programme informatique, destinés à l'autorisation à distance d'un utilisateur de services numériques
US10372910B2 (en) * 2016-06-20 2019-08-06 Jask Labs Inc. Method for predicting and characterizing cyber attacks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8122122B1 (en) * 2005-11-08 2012-02-21 Raytheon Oakley Systems, Inc. Event monitoring and collection
US20070294187A1 (en) * 2006-06-08 2007-12-20 Chad Scherrer System and method for anomaly detection
EP2908495A1 (en) * 2014-02-18 2015-08-19 Palo Alto Research Center Incorporated System and method for modeling behavior change and consistency to detect malicious insiders

Also Published As

Publication number Publication date
PH12019550134A1 (en) 2020-06-01
AU2018219369A1 (en) 2019-07-25
MX2019009505A (es) 2019-10-02
RU2019127797A (ru) 2021-03-15
CO2019008341A2 (es) 2019-08-20
US20180234442A1 (en) 2018-08-16
JP7108365B2 (ja) 2022-07-28
JP2020509478A (ja) 2020-03-26
CA3050321A1 (en) 2018-08-16
AU2018219369B2 (en) 2022-01-06
US20200092318A1 (en) 2020-03-19
US11233810B2 (en) 2022-01-25
WO2018148657A1 (en) 2018-08-16
KR102433425B1 (ko) 2022-08-17
CN110366727A (zh) 2019-10-22
CL2019002189A1 (es) 2019-12-27
RU2768562C2 (ru) 2022-03-24
SG11201907140UA (en) 2019-09-27
ZA201904963B (en) 2020-11-25
BR112019014366A2 (pt) 2020-02-27
NZ755115A (en) 2023-06-30
US10491616B2 (en) 2019-11-26
IL268231B (en) 2022-05-01
RU2019127797A3 (ko) 2021-07-05
EP3552138B1 (en) 2023-07-12
EP3552138A1 (en) 2019-10-16
CN110366727B (zh) 2023-09-19
IL268231A (en) 2019-09-26

Similar Documents

Publication Publication Date Title
KR102433425B1 (ko) 손상된 범위 식별을 위한 다중-신호 분석
EP3552363B1 (en) Near real-time detection of suspicious outbound traffic
KR102480204B1 (ko) 침입 탐지를 위한 지속적인 학습
US11756404B2 (en) Adaptive severity functions for alerts
CN110727567B (zh) 软件质量检测的方法、装置、计算机设备和存储介质
US11856009B2 (en) Configurable cyber-attack trackers
US10291483B2 (en) Entity embedding-based anomaly detection for heterogeneous categorical events
CN111597461B (zh) 一种目标对象聚集预测方法、装置以及电子设备
US20210329033A1 (en) Cybersecurity maturity determination
US20230156034A1 (en) Real-time threat detection for encrypted communications
CN117349126B (zh) 一种基于大数据的实时信息网络日志分析方法及系统
CN111797994B (zh) 一种风险评估方法、装置、设备及存储介质
CN116796253A (zh) 一种资源价值信息的识别方法、装置以及存储介质
CN116113963A (zh) 源于人工决策的机器学习模型训练

Legal Events

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