KR101801581B1 - 머신 학습 스냅샷 평가를 포함하는 보호 시스템 - Google Patents

머신 학습 스냅샷 평가를 포함하는 보호 시스템 Download PDF

Info

Publication number
KR101801581B1
KR101801581B1 KR1020167019123A KR20167019123A KR101801581B1 KR 101801581 B1 KR101801581 B1 KR 101801581B1 KR 1020167019123 A KR1020167019123 A KR 1020167019123A KR 20167019123 A KR20167019123 A KR 20167019123A KR 101801581 B1 KR101801581 B1 KR 101801581B1
Authority
KR
South Korea
Prior art keywords
snapshot
user behavior
user
machine learning
determining whether
Prior art date
Application number
KR1020167019123A
Other languages
English (en)
Other versions
KR20160101051A (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 KR20160101051A publication Critical patent/KR20160101051A/ko
Application granted granted Critical
Publication of KR101801581B1 publication Critical patent/KR101801581B1/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/60Protecting data
    • 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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • 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
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N99/005
    • 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/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/68Gesture-dependent or behaviour-dependent

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Social Psychology (AREA)
  • Virology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Bioethics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 개시는 머신 학습 스냅샷 평가를 포함하는 보호 시스템을 대상으로 한다. 디바이스는 디바이스 동작의 스냅샷을 생성하기 위해 머신 학습 엔진(MLE)을 포함할 수도 있다. MLE는 유저 거동을 학습하기 위해 스냅샷의 액티브 또는 계획된 동작을 활용할 수도 있다. 일단 정상적인 유저 거동이 디바이스에 대해 확립되면, MLE는, 디바이스에 대한 위협을 의미할 수도 있는 특이한 거동을 스냅샷이 포함하는 때를 판정할 수도 있다. 특이한 거동을 포함하는 것으로 판정되는 스냅샷은 평가를 위해 원격 리소스로 송신될 수도 있다. 원격 리소스는, 유저 거동을 적어도 하나의 사용 타입으로 특징짓는 것에 의해 유저 거동을 분류할 수도 있는 적어도 유저 거동 분류 엔진(UBCE)을 포함할 수도 있다. 스냅샷은 디바이스에 잠재적인 위협이 존재하는지 여부를 판정하기 위해 UBCE에 의해 분석될 수도 있고, 위협 분석은 평가 및/또는 시정 조치를 위해 디바이스로 제공될 수도 있다.

Description

머신 학습 스냅샷 평가를 포함하는 보호 시스템{PROTECTION SYSTEM INCLUDING MACHINE LEARNING SNAPSHOT EVALUATION}
본 개시는 보호 시스템에 관한 것으로, 특히, 디바이스 동작의 스냅샷을 평가하기 위해 머신 학습 엔진을 갖는 위협 모니터링 시스템(threat monitoring system)에 관한 것이다.
현대 사회는 일상의 상호작용(everyday interaction)을 행하기 위한 다수의 전자 기술에 점점 더 의존하고 있다. 예를 들면, 개인적인 그리고 전문적인 통신, 구매 트랜잭션, 계정 접근, 금융 트랜잭션, 계약 합의 등등이 전자적 통신을 사용하여 행해지고 있다. 이 증가하는 의존관계의 결과로서, 과도한 개인적인, 사적인 및/또는 기밀의 정보가 전자 디바이스에 저장되고 있다. 전자적 트랜잭션을 행하는 기능성(functionality)을 제공하는 다양한 애플리케이션 또는 인터페이스를 지원하기 위해, 개인적인 및/또는 비지니스 식별 정보, 주소 정보, 계정 식별자, 의료 데이터, 친족관계 정보, 등등이 저장될 수도 있다. 한 장소에서의 개인적, 사적 및/또는 기밀의 정보의 이용가능성은, 자기 자신의 이익을 위해 이러한 정보를 찾고 있는 비인가자(unauthorized party)에게는 매력적일 수도 있다. 결과적으로, 개인적, 사적 및/또는 기밀의 정보가 잘못된 자의 손(wrong hands)에 떨어지는 것을 방지하기 위해서는, 전자 디바이스에서 보호 조치의 구현이 필요하다.
통상적인 보호 모델은 위협을 모니터링하기 위해 디바이스에 설치되는 소프트웨어 컴포넌트를 포함할 수도 있다. 소프트웨어 컴포넌트는, 소프트웨어 컴포넌트에 대한 업데이트 및/또는 위협을 모니터링하기 위해 활용되는 규칙을 제공하는 중앙집중형 엔티티(centralized entity)에 의해 관리될 수도 있다. 이 아키텍쳐가 어느 정도는 효과적이었지만, 그것은 오랫동안 표준이었고 그 결과 많은 공격(예를 들면, 바이러스 또는 웜과 같은 멀웨어, 비인가 접근 시도 등등)이 특별히 이 타입의 보호 시스템을 극복하도록 설계되었다. 예를 들면, 멀웨어의 출현은 모니터링 규칙을 회피하도록 수정될 수도 있거나, 또는 멀웨어는 검출을 회피하기 위해 (예를 들면, 보호 컴포넌트보다 더 높은 권한 수준(privilege level)에서 동작하는) 로우 레벨 디바이스 동작에 삽입될 수도 있다. 디바이스의 로컬한 보호 조치에 의해 공격이 검출될 수 없으면, 디바이스는 공격에 대해 무방비 상태가 될 수도 있다.
청구되는 주제의 다양한 실시형태의 피쳐 및 이점은, 하기의 상세한 설명이 진행함에 따라, 그리고 동일한 도면부호가 동일한 부분을 나타내는 도면의 참조시 명백해질 것인데, 도면에서:
도 1은, 본 개시의 적어도 하나의 실시형태에 따른, 머신 학습 스냅샷 평가를 포함하는 예시적인 보호 시스템을 예시한다;
도 2는, 본 개시의 적어도 하나의 실시형태에 따른, 디바이스에 대한 예시적인 구성을 예시한다;
도 3은, 본 개시의 적어도 하나의 실시형태에 따른, 원격 리소스에 대한 예시적인 구성을 예시한다;
도 4는, 본 개시의 적어도 하나의 실시형태에 따른, 머신 학습 스냅샷 평가를 포함하는 예시적인 보호 시스템에 대한 예시적인 동작을 예시한다.
하기의 상세한 설명이 예시적인 실시형태에 대해 참조가 이루어지면서 진행할 것이지만, 예시적인 실시형태의 많은 대안예, 수정예 및 변형예가 당업자에게는 명백할 것이다.
본 개시는 머신 학습 스냅샷 평가를 포함하는 보호 시스템을 대상으로 한다. 일 실시형태에서, 디바이스는 디바이스 동작의 스냅샷을 생성하기 위해 머신 학습 엔진(machine learning engine; MLE)을 포함할 수도 있다. MLE는 유저 거동을 학습하기 위해 스냅샷에서의 액티브(active) 또는 계획된 동작을 활용할 수도 있다. 일단 정상적인 유저 거동이 디바이스에 대해 확립되면, MLE는, 디바이스에 대한 위협을 의미할 수도 있는 특이한 거동(unusual behavior)을 스냅샷이 포함하는 때를 판정할 수도 있다. MLE에 의해 특이한 거동을 포함하는 것으로 판정되는 스냅샷은 평가를 위해 원격 리소스로 송신될 수도 있다. 원격 리소스는, 예를 들면, 유저 거동을 적어도 하나의 사용 타입으로 특징짓는 것에 의해 유저 거동을 분류할 수도 있는 유저 거동 분류 엔진(user behavior classification engine; UBCE)을 포함할 수도 있다. 스냅샷은 디바이스에 잠재적인 위협이 존재하는지 여부를 판정하기 위해 UBCE에 의해 분석될 수도 있고, 위협 분석은 평가 및/또는 시정 조치(corrective action)를 위해 디바이스로 제공될 수도 있다. 일 실시형태에서, MLE는, 디바이스가 시스템에 대해 새로운 것이면, 스냅샷 및 유저 데이터를 원격 리소스로 또한 제공할 수도 있다. 원격 리소스는 유저 계정을 (필요하다면) 작성할 수도 있고, 디바이스를 유저 계정과 관련시킬 수도 있고 디바이스가 "깨끗한지"를(예를 들면, 위협이 없는지 여부를) 판정하기 위해 디바이스를 분석할 수도 있다.
일 실시형태에서, 머신 학습 스냅샷 평가를 위해 구성된 디바이스는, 예를 들면, 통신 모듈, 메모리 모듈 및 MLE를 포함할 수도 있다. 통신 모듈은 적어도 원격 리소스와 상호작용할 수도 있다. 메모리 모듈은 적어도 학습된 유저 거동을 저장할 수도 있다. MLE는, 디바이스 동작의 스냅샷을 생성할 수도 있고, 학습된 유저 거동의 관점에서의 스냅샷의 평가에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정할 수도 있고, 특이한 유저 거동이 발생했다는 것이 판정되면 통신 모듈로 하여금 스냅샷 및 유저 데이터를 원격 리소스로 송신하게 할 수도 있고, 통신 모듈을 통해 원격 리소스로부터 위협 분석 - 위협 분석은 스냅샷의 송신에 응답하여 수신됨 - 을 수신할 수도 있고 그리고 위협 분석에 적어도 기초하여 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정할 수도 있다.
일 실시형태에서, MLE는 또한, 디바이스가 신규인지 여부를 판정할 수도 있고, 디바이스가 새로운 것이다는 것이 판정되면 적어도 스냅샷 및 유저 데이터를 원격 리소스로 송신할 수도 있다. MLE는 또한, 통신 모듈을 통해 원격 리소스로부터 수신되는 검증의 결과에 기초하여 디바이스에서 시정 조치가 필요로 되는지 여부를 판정할 수도 있다. MLE가 디바이스 동작의 스냅샷을 생성하는 것은, 스냅샷이 생성되었던 시간에 디바이스에서의 액티브 동작 또는 스냅샷이 생성되었던 시간에 디바이스에서의 계획된 동작 중 적어도 하나에 기초하여 머신 학습 엔진이 디바이스에서의 적어도 하나의 동작을 식별하는 것을 포함할 수도 있다. MLE는 또한, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작과 관련되는 소프트웨어 모듈의 서명을 검증할 수도 있다. MLE는 또한, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작을, 메모리 모듈에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 또는 계획된 동작에 비교하는 것에 기초하여 유저 거동을 학습할 수도 있다. 특이한 유저 거동이 발생했는지 여부를 MLE가 판정하는 것은, 학습된 유저 거동에 기초하여 적어도 하나의 액티브 또는 계획된 동작이 예상되지 않는지 여부를 MLE가 판정하는 것을 포함할 수도 있다.
동일한 또는 상이한 실시형태에서, 원격 리소스로서 동작하도록 구성된 디바이스는, 예를 들면, 통신 모듈 및 UBCE를 포함할 수도 있다. 통신 모듈은 적어도 유저 디바이스와 상호작용할 수도 있다. UBCE는 적어도 유저 디바이스 동작의 스냅샷 및 유저 데이터를 유저 디바이스로부터 수신할 수도 있고, 유저 데이터에 적어도 기초하여 새로운 유저 계정이 필요로 되는지 여부를 판정할 수도 있고, 새로운 유저 계정이 필요로 된다는 것이 판정되면 새로운 유저 계정을 확립할 수도 있고, 유저 디바이스를 현존하는 유저 계정 또는 새로운 유저 계정과 관련시킬 수도 있고, 스냅샷에 적어도 기초하여 유저 디바이스가 새로운 것인지 여부를 검증할 수도 있고 그리고 검증의 결과를 유저 디바이스로 제공할 수도 있다.
UBCE는 또한, 스냅샷에 적어도 기초하여 유저 분류를 발전시킬(develop) 수도 있다. UBCE가 유저 분류를 발전시키는 것은, 스냅샷에 적어도 기초하여 UBCE가 디바이스에 대한 적어도 하나의 사용 타입을 특징짓는 것을 포함할 수도 있다. 본 개시와 부합하는 머신 학습 스냅샷 평가를 위한 방법은, 예를 들면, 디바이스에서의 동작의 스냅샷을 생성하는 것, 디바이스에 저장되어 있는 학습된 유저 거동의 관점에서의 스냅샷의 평가에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하는 것, 특이한 유저 거동이 발생했다는 것이 판정되면 스냅샷 및 유저 데이터가 원격 리소스로 송신되게 하는 것, 스냅샷의 송신에 응답하여 원격 리소스로부터 위협 분석을 수신하는 것 및 위협 분석에 적어도 기초하여 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 것을 포함할 수도 있다. 본 개시와 부합하는 머신 학습 스냅샷 평가를 위한 다른 방법은, 예를 들면, 원격 리소스에서 적어도 유저 디바이스 동작의 스냅샷 및 유저 데이터를 유저 디바이스로부터 수신하는 것, 유저 데이터에 적어도 기초하여 새로운 유저 계정이 필요로 되는지 여부를 판정하는 것, 새로운 유저 계정이 필요로 된다는 것이 판정되면 새로운 유저 계정을 확립하는 것, 유저 디바이스를 현존하는 유저 계정 또는 새로운 유저 계정과 관련시키는 것, 스냅샷에 적어도 기초하여 유저 디바이스가 새로운 것인지 여부를 검증하는 것 및 검증의 결과를 유저 디바이스로 제공하는 것을 포함할 수도 있다.
도 1은, 본 개시의 적어도 하나의 실시형태에 따른, 머신 학습 스냅샷 평가를 포함하는 예시적인 보호 시스템을 예시한다. 시스템(100)은 적어도 하나의 디바이스(102)(예를 들면, 디바이스(102A), 디바이스(102B), 디바이스(102C)...디바이스(102n) 또는 일괄적으로 "디바이스(102A...n)") 및 원격 리소스(104)를 포함할 수도 있다. 도 1에서 개시되는 예에서는, 단지 설명의 편의성을 위해 네(4) 개의 디바이스(102A...n)가 개시되어 있다. 실제, 디바이스의 수는 구현예에 따라 변할 수도 있다. 디바이스(102A...n)의 예는, 모바일 통신 디바이스 예컨대 Android® OS, iOS®, Windows® OS, 맥(Mac) OS, 타이젠(Tizen) OS, 파이어폭스(Firefox) OS, Blackberry® OS, Palm® OS, Symbian® OS 등등에 기초한 셀룰러 핸드셋 또는 스마트폰; 모바일 컴퓨팅 디바이스 예컨대 iPad®, Surface®, Galaxy Tab®, Kindle Fire® 등등과 같은 태블릿 컴퓨터, 인텔 코포레이션(Intel Corporation)에 의해 제조된 저전력 칩셋을 포함하는 Ultrabook®, 넷북, 노트북, 랩탑, 팜탑, 등등; 통상적으로 고정식인 컴퓨팅 디바이스 예컨대 데스크탑 컴퓨터, 서버, 스마트 텔레비전, 인텔 코포레이션으로부터의 누크(NUC; Next Unit of Computing)와 같은 스몰 폼팩터 컴퓨팅 솔루션(예를 들면, 공간 제한된 애플리케이션, TV 셋탑 박스, 등등); 등등을 포함할 수도 있지만, 이들로 제한되지는 않는다. 원격 리소스(104)는, 근거리 통신망(local area-network; LAN), 광역 통신망(wide-area network; WAN) 예컨대 인터넷 등등을 통해 디바이스(102A...n)에 액세스할 수 있는 적어도 하나의 통신 디바이스를 포함할 수도 있다. 일 실시형태에서, 원격 리소스(104)는 클라우드 컴퓨팅 구성에서 편제되는 하나 이상의 서버를 포함할 수도 있다.
도 1의 예는 또한, 디바이스(102B...n)에 또한 적용가능할 수도 있는 디바이스(102A)에 대해 예시되는 다양한 피쳐를 더 포함하지만, 명확성을 위해 생략되었다. 일 실시형태에서, 디바이스(102A)는 적어도 MLE(106A)를 포함할 수도 있다. MLE(106A)는, 디바이스 동작의 스냅샷(snapshot; SS)(110A)을 작성하는 것에 의해 유저 거동(108A)을 학습하도록 구성되는 기기 및/또는 소프트웨어를 포함할 수도 있다. 학습된 유저 거동(108A)은, 예를 들면, 디바이스(102A)의 적어도 한 명의 유저에 의한 정상적인 사용의 결과로서 디바이스(102A)에서 일반적으로 발생하는 동작을 포함할 수도 있다. SS(110A)는, 디바이스(102A)의 유저에 의해 MLE(106A)에 설정되어 있는 시간에, 유저의 요청에서 수동으로, 디바이스(102A)에서의 이벤트의 발생시에, 등등에서, MLE(106A)에 의해 주기적으로 생성될 수도 있다. SS(110A)는, 예를 들면, SS(110A)가 생성되었던 시간에 디바이스(102)에서 액티브였던, 또는 SS(110A)가 생성되었던 시간에 디바이스(102)에서 동작하도록 예정되었던 기기 및/또는 소프트웨어의 식별을 포함할 수도 있다. SS(110A) 내에서 식별될 수도 있는 다양한 액티브 동작의 예는, 애플리케이션을 실행하는 것, 네트워크 액티비티, 레지스트리 액티비티, 파일 시스템 액티비티, 프로세스 및 스레드 액티비티 또는 프로파일링 액티비티 중 적어도 하나를 포함할 수도 있다. SS(110A)는 또한, 예를 들면, 실행 컴포넌트, 일 회 실행(run once) 컴포넌트, 기동 컴포넌트, 설치된 컴포넌트에 대응하는 레지스트리 설정, 프로토콜, ShellEx 등등과 같은 익스플로러(explorer)에 대응하는 레지스트리 설정, 인터넷 익스플로러(Internet Explorer)에 대응하는 레지스트리 설정, OS 스케줄러에서의 태스크, 서비스, 드라이버, 코덱, boot.exe, 이미지 하이잭(image hijack), Applnit, 기지의 dll, 윈로그온(WinLogon), 윈속(Winsock) 공급자, 프린터 모니터, 로컬 보안 허가(local security authority; LSA) 공급자, 네트워크 공급자, 등등 중 적어도 하나로부터 유도되는 다양한 계획된 동작을 식별할 수도 있다. 일 실시형태에서, SS(110A)는, SS(110A)가 캡쳐되었을 때의 일시뿐만 아니라, 예를 들면, 제조업자, 모델, 구성 식별자, 시리얼 번호, 빌드 날짜, OS, 액티브 네트워크 연결, 등등과 같은 디바이스(102A)에 관한 상세를 더 포함할 수도 있다.
일 실시형태에서, MLE(106A)는, 적어도, 이전에 생성된 SS(110A)를 디바이스(102A)에 저장할 수도 있다. 그 다음, MLE(106A)는, 유저 거동(108A)을 학습하기 위해, 최근에 캡쳐된 SS(110A)를, 적어도, 이전에 생성된 SS(110A)에 비교할 수도 있다. 유저 거동(108A)은, 예를 들면, 하나의 SS(110A)로부터 다른 것으로 반복적으로 발생하는, 또는 발생하도록 계획되는 동작을 추적하는 머신 학습 알고리즘을 사용하여 학습할 수도 있다. 다수의 SS(110A)에서의 동일한 동작의 출현은, 그 동작의 출현이 디바이스(102A)에서의 정상 동작과 관련될 수도 있다는 것을 나타낼 수도 있다. 이 방식으로 학습하면, MLE(106A)는, 유저 거동(108A)을 구성하는 동작 패턴을 정형화하기 시작할 수도 있다.
MLE(106A)가 학습된 유저 거동(108A)을 학습한 후(예를 들면, 디바이스(102A)가 사용되고 있는 시간 기간에 걸쳐 캡쳐되는 일련의 SS(110A)를 평가한 이후), 그 다음, MLE(106A)는 특이한 거동에 대해 후속하는 SS(110A)를 (예를 들면, 디바이스(102A)에서의 가능한 위협의 표시자(indicator)로서) 평가하기 시작할 수도 있다. 예를 들면, 일반적인 동작의 부재, 또는 새로운 동작의 발생은, 무언가가 디바이스(102A)에서 적합하지 않다는 것을 나타낼 수도 있다. MLE(106A)는, 예를 들면, 유저에 의해 일반적으로 액세스되지 않는 리소스가 현재 SS(110A)에서 액세스되고 있다는 것, 스냅샷에서 일반적으로 나타나는 동작이 더 이상 실행하고 있지 않다는 것(또는 다른 유사한 동작에 의해 대체되었을 수도 있다는 것), 유저에 의해 일반적으로 액세스되는 다른 소프트웨어에 대응하지 않는 디바이스(102A) 상으로 새로운 소프트웨어가 로딩되었다는 것, 등등을 검출할 수도 있다. 일 실시형태에서, MLE(106A)는 또한, 하나의 SS(110A)에서 다른 것으로 이동할 가능성을 식별하기 위해, 예를 들면, 베이지안 네트워크와 같은 예측 분석 기법을 이용할 수도 있다. 이 지식은, 의심스러운 이상점(outlier)의 더 빠른 식별을 가능하게 할 뿐만 아니라 멀웨어가 디바이스(102A)에서의 스냅샷 생성과 간섭할 수도 있다는 징조가 존재하는 경우를 식별하는 것을 가능하게 할 수도 있고, 예를 들면, 시스템이 이미 위태롭게 된 경우 SS(110A)를 양성인(benign) 것처럼 보이게 만들 수도 있다. 이전의 스냅샷으로 롤백하는 것은, 상기 언급된 바와 같이, 전문가 휴리스틱(heuristic)이 이용될 수도 있는 하나의 예에 불과하다. 동일한 또는 상이한 실시형태에서, 유저는, 보안 위치(예를 들면, 프라이빗 클라우드(private cloud))에 SS(110A)를 저장하고, 그 다음, 그들의 개인적 프라이버시를 증가시키기 위해, 글로벌 클라우드를 이용한 예측 분석에 유용한 공유 데이터만을 공유하는 옵션을 가질 수도 있다. 이것은 유저의 프라이버시를 유지하면서 공유된 학습의 이점을 제공할 것이다.
SS(110A)가 특이한 거동을 포함할 수도 있다는 것을 MLE(106A)가 판정한 이후, MLE(106A)는 SS(110A)로 하여금 원격 리소스(104)로 송신되게 할 수도 있다. 원격 리소스(104)는 유저 거동(108A)을 분류할 UBCE(112)를 포함할 수도 있고, 이 분류에 기초하여, 디바이스(102A)에 대한 위협을 구성할 수도 있는 이상(anomaly)을 분석할 수도 있다. 일 실시형태에서, UBCE(112)는 디바이스(102A)에 대한 사용 타입에 기초하여 유저 거동(108A)을 분류할 수도 있다. 예시적인 사용 타입은, (예를 들면, 게임을 플레이하기 위한) 게임용 시스템으로서, 예를 들면, (예를 들면, 워드프로세싱, 스프레드시트, 등등을 위한) 비지니스 시스템, (예를 들면, 교수 프로그램(teaching program)을 실행하기 위한) 교육 시스템, (예를 들면, 컴퓨터 지원 드로잉(computer aided drawing; CAD) 또는 컴퓨터 지원 제조(computer aided manufacturing; CAM)를 위한) 설계 시스템, 웹 브라우징 시스템, 등등을 포함할 수도 있지만, 이들로 제한되지는 않는다. 이들 타입은 연령(예를 들면, 어린 아이용 교육 시스템), 리스크의 카테고리(예를 들면, 위험하거나 의심스러운 웹 사이트를 통상적으로 방문하는 웹 브라우저 시스템), 등등과 같은 추가 특성을 포함할 수도 있다. 분류는 하나보다 많은 타입을 포함할 수도 있고, 분류된 타입은 새로운 정보(예를 들면, SS(110A)를 통해 수신되는 정보)에 기초하여 계속적으로 업데이트될 수도 있다.
분류는 UBCE(112)에서의 유저의 등록시 개시할 수도 있다. UBCE(112)에서의 등록은, 예를 들면, 유저가 (예를 들면, 웹페이지를 통해) 수동으로 등록하는 것에 의해, 디바이스(예를 들면, 디바이스(102A))가 유저를 자동적으로 등록하는 것에 의해 또는 유저에게 등록할 것을 촉구하는 것에 의해, 등등에 의해 발생할 수도 있다. 등록은, 유저가 시스템(100)에서의 참여에 관해 숙고된 판정(informed decision)을 행할 수도 있도록, 개인 및/또는 디바이스 데이터의 공유에 관한 유저에 대한 통지를 포함할 수도 있다. 유저 등록은, 유저 프로파일(114A)이 적어도 유저 식별 정보를 포함하는 것으로 귀결될 수도 있다. 유저 프로파일(114A)은 유저 거주지 정보, 유저 비지니스 정보, 유저 과금 정보(billing information)(예를 들면, 원격 리소스(104)가 지불 서비스와 관련되는 경우), 등등과 같은 다른 정보를 또한 포함할 수도 있다. 디바이스(102A)뿐만 아니라 시스템(100)에 등록되어 있는 유저의 임의의 다른 디바이스는 유저 프로파일(114A)과 관련될 수도 있고, 분류(116A)는, 디바이스(102A)의 MLE(106A)로부터 수신되는 SS(110A) 및/또는 유저 프로파일(114A)에서의 정보에 기초하여, 디바이스(102A)에 대해 발생하기 시작할 수도 있다. 일 실시형태에서, "새로운" 디바이스는, 디바이스가 깨끗하다는 것(예를 들면, 위협이 없고 유저 거동 학습이 개시할 준비가 되어 있다는 것)을 보장하기 위해 최초 검증을 받을 수도 있다. 새로운 디바이스는, 예를 들면, 제조업자로부터, 소매업자로부터, 등등으로부터 직접적으로 획득되는 신규 브랜드의 디바이스, 미사용 디바이스, 또는 단순히 유저 프로파일(114A)과 신규로 관련되는 디바이스일 수도 있다. 디바이스(102A)가 깨끗하다는 것(예를 들면, 새로운 제조업자로부터 변경되지 않은 또는 적어도 멀웨어가 없는)을 유저가 믿을 수도 있기 때문에, 초기 검증은 중요할 수도 있는데, 실제로는, 하드웨어 및/또는 소프트웨어가 추가/제거/변경되었을 수도 있고, 멀웨어가 디바이스 상으로의 자신의 길을 발견했을 수도 있고, 등등일 수도 있다. 동작의 한 예에서, 새로운 디바이스(102A)는 검증을 위해 제1 SS(110A)를 UBCE(112)로 송신할 수도 있다. UBCE(112)는 다양한 디바이스(예를 들면, 디바이스(102B...n))로부터 데이터를 수신할 수도 있고, 이 데이터로부터, 디바이스(102A)가 깨끗하다는 것을 검증하기 위해 SS(110A)가 비교될 수도 있는 기본 동작 구성을 만들 수도 있다. 예를 들면, UBCE(112)는, 디바이스(102A)의 제조업자, 모델, 구성, 빌드 날짜, OS, 등등을 유저 프로파일(114A) 및/또는 SS(110A)로부터 판정할 수도 있고, 다른 디바이스(예를 들면, SS(110B...n))로부터 수신되는 데이터에 기초하여 디바이스(102A)에 대한 깨끗한 구성을 판정하기 위해 이 데이터를 사용할 수도 있고, 그 다음, SS(110A)에 불일치가 존재하는지 여부를 판정하기 위해 SS(110A)를 깨끗한 구성에 비교할 수도 있다. 그 다음, UBCE(112)는, 구성에서 임의의 불일치를 나타내는 검증으로부터의 결과를 디바이스(102A)로 제공할 수도 있다. 그 다음, 디바이스(102A)의 유저는, 유저 거동(108A)을 학습하기 이전에 그들의 디바이스가 깨끗하게 시작한다는 것을 보장받을 수도 있다. 더욱이, 초기 SS(110A)는, 분류(116A)를 생성하고 있을 때 UBCE(112)에 의한 사용을 위해 디바이스(102A)에 대한 기본 구성을 제공할 수도 있다.
분류(116A)가 확립된 이후, 디바이스(102A)(예를 들면, MLE(106A))는, 특이한 거동이 검출될 때마다, SS(110A)를 (예를 들면, SS(110A)에 아직 포함되지 않았으면 유저를 식별하는 정보와 함께) 원격 리소스(104)로 송신할 수도 있다. 그 다음, UBCE(112)는, 거동이 분류(116A)를 갖는 디바이스와 일치하는지 여부를 판정하기 위해, SS(110A)를 분류(116A)에 비교할 수도 있다. 예를 들면, UBCE(112)는, 디바이스(102A)와 동일한 또는 유사한 분류(116A)에서 다른 디바이스(예를 들면, 디바이스(102B...n))로부터 수신되는 데이터에 기초하여 "모델 구성"(예를 들면, 예시적인 SS(110))을 생성할 수도 있다. 예시적인 SS(110)를 생성함에 있어서, 디바이스(102A)의 타입, 디바이스(102A)의 메이크/모델/빌드 년도, 등등과 같은 다른 요인이 또한 고려될 수도 있다. 그 다음, UBCE(112)는, SS(110A)에서 식별되는 동작 중 임의의 것이 의심스러운지 여부를 판정하기 위해 예시적인 SS(110)의 컨텐츠를 SS(110A)에 비교하도록 진행할 수도 있다. SS(110A)에서의 거동이 의심스러운 것으로 간주되면, UBCE(112)는, 디바이스(102A)에 존재할 수도 있는 위협을 식별하는 위협 분석(118A)을 디바이스(102A)로 송신할 수도 있다. 일 실시형태에서, MLE(106A)는, 디바이스에 잠재적인 위협이 존재하는지 여부를 판정하기 위해 UBCE(112)로부터 수신되는 위협 분석(118A)을 평가할 수도 있다. 위협이 존재하는 것으로 믿어지면, MLE(106A)는, 잠재적인 위협을 유저에게 통지하기, 잠재적인 위협을 포함하는 파일을 격리하기, 잠재적인 위협을 포함하는 파일을 삭제하기, 위협을 무효화하도록 네트워크 액세스 및/또는 다른 액션을 불능화하기와 같은 그러나 이들로 제한되지는 않는 시정 조치를 트리거할 수도 있다.
도 2는, 본 개시의 적어도 하나의 실시형태에 따른, 디바이스(102A')에 대한 예시적인 구성을 예시한다. 특히, 디바이스(102A')는 도 1에서 개시되는 것과 같은 예시적인 기능성을 수행할 수도 있다. 그러나, 디바이스(102A')는 본 개시와 부합하는 실시형태에서 사용가능한 기기의 한 예로서만 의도된 것이며, 구현의 임의의 특정한 방식에 대한 이들 다양한 실시형태를 제한하도록 의도되지는 않는다. 도 2에서 개시되는 디바이스(102A')의 예시적인 구성은, 도 1에서 또한 개시되는 디바이스(102B...n)에 또한 적용가능할 수도 있다.
디바이스(102A')는, 예를 들면, 디바이스 동작을 관리하도록 구성되는 시스템 모듈(200)을 포함할 수도 있다. 시스템 모듈(200)은, 예를 들면, 프로세싱 모듈(202), 메모리 모듈(204), 전력 모듈(206), 유저 인터페이스 모듈(208) 및 통신 인터페이스 모듈(210)을 포함할 수도 있다. 디바이스(102A')는 통신 모듈(212) 및 MLE(106A')을 더 포함할 수도 있다. 통신 모듈(212) 및 MLE(106A')가 시스템 모듈(200)과는 별개로서 도시되었지만, 도 2에서 도시되는 예시적인 구현예는 단지 설명의 편의를 위해 제공되었다. 통신 모듈(212) 및/또는 MLE(106A')와 관련되는 기능성 중 일부 또는 전체는 시스템 모듈(200)에 통합될 수도 있다.
디바이스(102A')에서, 프로세싱 모듈(202)은 별개의 컴포넌트에 위치된 하나 이상의 프로세서, 또는 대안적으로, 단일의 컴포넌트에서(예를 들면, 시스템 온 칩(System-on-a-Chip; SoC) 구성에서) 구체화되는 하나 이상의 프로세싱 코어 및 임의의 프로세서 관련 지원 회로부(예를 들면, 브리징 인터페이스, 등등)를 포함할 수도 있다. 예시적인 프로세서는, 펜티엄(Pentium), 제온(Xeon), 아이타니엄(Itanium), 셀러론(Celeron), 아톰(Atom), 코어(Core) i 시리즈 제품 패밀리에서의 것들을 포함하는 인텔 코포레이션으로부터 입수가능한 다양한 x86 기반의 마이크로프로세서, 어드밴스드 RISC(예를 들면, 축약 명령어 세트 컴퓨팅(Reduced Instruction Set Computing)) 머신 또는 "ARM" 프로세서 등등을 포함할 수도 있지만, 이들로 제한되지는 않는다. 지원 회로부의 예는, 디바이스(102A')에서 상이한 속도에서, 상이한 버스 상에서, 등등에서 동작할 수도 있는 다른 시스템 컴포넌트와 프로세싱 모듈(202)이 상호작용할 수도 있게 하는 인터페이스를 제공하도록 구성되는 칩셋(예를 들면, 인텔 코포레이션으로부터 입수가능한 노스브리지(Northbridge), 사우스브리지(Southbridge), 등등)을 포함할 수도 있다. 지원 회로부와 일반적으로 관련되는 기능성 중 일부 또는 전체는, 프로세서와 동일한 물리적 패키지에(예를 들면, 예컨대 인텔 코포레이션으로부터 입수가능한 프로세서의 샌디 브리지(Sandy Bridge) 패밀리에) 또한 포함될 수도 있다.
프로세싱 모듈(202)은 디바이스(102A')에서 다양한 명령어를 실행하도록 구성될 수도 있다. 명령어는, 프로세싱 모듈(202)로 하여금, 데이터 판독, 데이터 기록, 데이터 프로세싱, 데이터 작성, 데이터 변환(converting), 데이터 변환(transforming) 등등에 관련되는 액티비티를 수행하게 하도록 구성되는 프로그램 코드를 포함할 수도 있다. 정보(예를 들면, 명령어, 데이터, 등등)는 메모리 모듈(204)에 저장될 수도 있다. 메모리 모듈(204)은 고정된 또는 착탈가능한 포맷의 랜덤 액세스 메모리(random access memory; RAM) 또는 리드 온리 메모리(read-only memory; ROM)를 포함할 수도 있다. RAM은, 예를 들면, 정적 RAM(static RAM; SRAM) 또는 동적 RAM(Dynamic RAM; DRAM)과 같은, 디바이스(102A')의 동작 동안 정보를 유지하도록 구성되는 휘발성 메모리를 포함할 수도 있다. ROM은, 디바이스(102A') 활성화시 명령어를 제공하기 위한 BIOS, UEFI, 등등, 전자적으로 프로그래밍가능한 ROM(electronic programmable ROM; EPROM)과 같은 프로그래밍가능한 메모리, 플래시, 등등에 기초하여 구성되는 불휘발성(nonvolatile; NV) 메모리 모듈을 포함할 수도 있다. 다른 고정된/착탈식 메모리는, 예를 들면, 플로피 디스크, 하드 드라이브, 등등과 같은 자기 메모리, 솔리드 스테이트 플래시 메모리(예를 들면, 임베디드 멀티미디어 카드(embedded multimedia card; eMMC), 등등)와 같은 전자적 메모리, 착탈식 메모리 카드 또는 스틱(예를 들면, 마이크로 스토리지 디바이스(micro storage device; μSD), USB, 등등), 컴팩트 디스크 기반 ROM(compact disc-based ROM; CD-ROM), 디지털 비디오 디스크(Digital Video Disks; DVD), 블루레이 디스크 등등과 같은 광학적 메모리를 포함할 수도 있지만, 이들로 제한되지는 않는다.
전력 모듈(206)은 내부 전원(예를 들면, 배터리, 연료 전지, 등등) 및/또는 외부 전원(예를 들면, 전기기계 또는 태양광 발전기, 전력 그리드, 연료 전지 등등), 및 디바이스(102A')에게 동작에 필요한 전력을 공급하도록 구성되는 관련 회로부를 포함할 수도 있다. 유저 인터페이스 모듈(208)은 유저가 디바이스(102A')와 상호작용하는 것을 허용하기 위한 기기 및/또는 소프트웨어, 예컨대, 예를 들면, 다양한 입력 메커니즘(예를 들면, 마이크, 스위치, 버튼, 노브, 키보드, 스피커, 터치 감지 표면, 이미지를 캡쳐하도록 및/또는 근접도, 거리, 모션, 제스쳐, 방위를 감지하도록 구성되는 하나 이상의 센서, 등등) 및 다양한 출력 메커니즘(예를 들면, 스피커, 디스플레이, 조명을 받는/점등하는 표시기, 진동, 모션을 위한 전자기계 컴포넌트 등등)을 포함할 수도 있다. 유저 인터페이스 모듈(208)의 기기는 디바이스(102A') 내에 통합될 수도 있고/있거나 유선 또는 무선 통신 매체를 통해 디바이스(102A')에 커플링될 수도 있다.
통신 인터페이스 모듈(210)은, 패킷 경로지정 및 유선 및/또는 무선 통신을 지원하도록 구성되는 리소스를 포함할 수도 있는 통신 모듈(212)에 대한 다른 제어 기능을 관리하도록 구성될 수도 있다. 몇몇 경우에서, 디바이스(102A')는, 중앙집중식 통신 인터페이스 모듈(210)에 의해 모두 관리되는 하나보다 많은 통신 모듈(212)(예를 들면, 유선 프로토콜 및/또는 무선 라디오에 대한 별개의 물리적 인터페이스 모듈을 포함함)을 포함할 수도 있다. 유선 통신은, 예를 들면, 이더넷, 범용 직렬 버스(Universal Serial Bus; USB), 파이어와이어, 디지털 비디오 인터페이스(Digital Video Interface; DVI), 고선명 멀티미디어 인터페이스(High-Definition Multimedia Interface; HDMI) 등등과 같은 직렬 및 병렬 유선 매체를 포함할 수도 있다. 무선 통신은, 예를 들면, 근접 무선 매체(예를 들면, 근접장 통신(Near Field Communications; NFC), 적외선(infrared; IR), 등등에 기초한 것과 같은 무선 주파수(radio frequency; RF)), 단거리 무선 매체(예를 들면, 블루투스, WLAN, 와이파이, 등등), 장거리 무선 매체(예를 들면, 셀룰러 광역 무선 통신 기술, 위성 기반 통신, 등등) 또는 음파를 통한 전자적 통신을 포함할 수도 있다. 일 실시형태에서, 통신 인터페이스 모듈(210)은, 통신 모듈(212)에서 액티브인 무선 통신이 서로 간섭하는 것을 방지하도록 구성될 수도 있다. 이 기능을 수행함에 있어서, 통신 인터페이스 모듈(210)은, 예를 들면, 송신을 대기하고 있는 메시지의 상대적인 우선순위에 기초하여 통신 모듈(212)에 대한 액티비티를 스케줄링할 수도 있다. 통신 인터페이스 모듈(210)이 통신 모듈(212)과는 별개인 것을 도 2에서 개시되는 실시형태가 예시하지만, 통신 인터페이스 모듈(210) 및 통신 모듈(212)의 기능성이 동일한 모듈 내에 통합되는 것이 또한 가능할 수도 있다.
도2에서 개시되는 예에서, MLE(106A')는, 적어도 메모리 모듈(206), 통신 모듈(212), 및/또는 유저 인터페이스 모듈(208)과 상호작용하도록 구성될 수도 있다. 동작의 한 예에서, MLE(106A')는 SS(110A)를 생성할 수도 있고, 유저 거동(108A)을 학습하기 위해, SS(110A)를 메모리 모듈(204)에 저장되어 있는 이전의 SS(110A)에 비교할 수도 있다. 유저 거동(108A)이 학습된 이후, SS(110A)에 특이한 거동이 존재하는 것으로 판정되면, MLE(106A')는 통신 모듈(212)로 하여금 SS(110A)를 UBCE(112)로 송신하게 할 수도 있다. 나중에, ME(106A')는 통신 모듈(212)을 통해 위협 분석(118A)을 수신할 수도 있다. 그 다음, MLE(106A')는 디바이스(102A')에 임의의 위협이 존재하는지 여부를 판정하기 위해 위협 분석(118A)을 평가할 수도 있다. 임의의 위협이 존재하는 것으로 판정되면, MLE(106A')는 유저에게 잠재적인 위협을 알리는 통지가 유저 인터페이스 모듈(208)을 통해 디바이스(102A')의 유저에게 제시되게 할 수도 있고/있거나 시정 조치가 디바이스(102A')에서 수행되게 할 수도 있다.
도 3은, 본 개시의 적어도 하나의 실시형태에 따른, 원격 리소스(104')에 대한 예시적인 구성을 예시한다. 도 2에서 제시되는 예시적인 디바이스(102A')를 참조로 나타내어지는 것과 동일한, 또는 실질적으로 유사한 모듈 및/또는 다른 엘리먼트는, 도 3에서 동일한 도면 참조번호를 사용하여 식별되었다.
원격 리소스(104')는, 도 1의 예에서 개시되는 것과 같은 다양한 액티비티를 수행하기 위한, 독립형 컴퓨팅 디바이스, 또는 개별적으로 또는 일제히 동작하는 복수의 컴퓨팅 디바이스 중 하나일 수도 있다. 원격 리소스(104')에서, 몇몇 디바이스(예를 들면, 서버)가 유저 인터페이스 모듈(208)을 포함하지 않을 수도 있지만 원격 리소스(104')와의 유저 상호작용을 용이하게 하기 위해 다른 기기(예를 들면, 원격 단말)에 의존할 수도 있다는 점에서, 유저 인터페이스 모듈(208)은 옵션으로서 예시되어 있다. 일 실시형태에서, UBCE(112')는, 적어도 프로세싱 모듈(202), 메모리 모듈(204) 및 통신 모듈(212)과 상호작용할 수도 있다. 동작의 한 예에서, UBCE(112')는 통신 모듈(212)을 통해 디바이스(102A)의 ME(106A)로부터 SS(110A)를 수신할 수도 있다. 그 다음, UBCE(112')는, 디바이스(102A)의 유저에 대응하는 유저 프로파일(114A)의 위치를 판정하기 위해, 분류(116A)에 액세스하기 위해 그리고 분류(116A)에 기초하여 모델 구성(예를 들면, 예시적인 SS(110))을 생성하기 위해, 프로세싱 모듈(202) 및/또는 메모리 모듈(204)에 의존할 수도 있다. 더욱이, 프로세싱 모듈(202) 및/또는 메모리 모듈(204)은, SS(110A)를 예시적인 SS(110)에 비교하는 것에 기초하여 디바이스(102A')에 임의의 위협이 존재하는지 여부를 판정하는 것에 보조할 수도 있다. 그 다음, UBCE(112')는 통신 모듈(212)로 하여금, SS(110A)의 분석으로부터 유래하는 적어도 위협 분석(118A)을 디바이스(102A)로 송신하게 할 수도 있다.
도 4는, 본 개시의 적어도 하나의 실시형태에 따른, 머신 학습 스냅샷 평가를 포함하는 예시적인 보호 시스템에 대한 예시적인 동작을 예시한다. 동작 400에서, (예를 들면, 디바이스의 MLE에 의해) 디바이스 동작의 스냅샷이 생성될 수도 있다. 스냅샷은 자동으로(예를 들면, 주기적으로, 이벤트의 발생시) 또는 디바이스의 유저에 의해 수동으로 트리거될 수도 있다. 그 다음, 유저 및/또는 디바이스가 시스템에 대해 새로운 것인지의(예를 들면, 원격 리소스에 아직 등록되지 않았는지의) 여부에 관한 판정이 동작 402에서 이루어질 수도 있다. 동작 402에서, 디바이스가 새로운 것이다는 것이 판정되면, 동작 404에서, 스냅샷 및 유저 데이터(예를 들면, 유저를 적어도 식별하는 데이터)가 원격 리소스로 송신될 수도 있다. 그 다음, 동작 406에서, 유저가 새로운 유저인지의(예를 들면, 원격 리소스에 아직 등록하지 않았는지의) 여부에 관한 판정이 이루어질 수도 있다. 동작 406에서, 유저가 원격 리소스에 아직 등록하지 않았다는 것이 판정되면, 동작 408에서, 새로운 유저 프로파일이 유저에 대해 생성될 수도 있다. 유저 프로파일이 이미 존재한다는 동작 406에서의 판정에 후속하여, 또는 동작 408에서의 유저 프로파일의 작성에 후속하여, 디바이스는 동작 410에서 유저 프로파일과 관련될 수도 있다. 그 다음, 동작 412에서, 디바이스가 깨끗한지 여부를(예를 들면, 이 타입의, 메이크의, 모델의, 빌드 날짜의, 소정의 OS를 갖는, 등등의 새로운 디바이스에 대해 예측될 동작을 디바이스의 스냅샷이 포함한다는 것을) 판정하기 위한 검증이 이루어질 수도 있다. 그 다음, 임의의 검출된 위협, 취약성 또는 결함을 무효화하는 데 필요한 임의의 변경을 유저 및/또는 MLE가 행할 수 있도록, 검증의 결과는 디바이스로 제공될 수도 있다. 그 다음, 동작 416에 대한 점선 화살표에 의해 나타내어지는 분류가 개시될 수도 있는데, 이 경우 원격 리소스의 UBCE는 유저에 의한 디바이스에 대한 적어도 하나의 사용 타입(예를 들면, 게임용 디바이스, 웹 브라우징, 비지니스/교육/설계 용도, 등등)을 분류하기 시작할 수도 있다.
동작 402에서, 유저도 신규가 아니고 디바이스도 신규가 아니다는 것이 판정되면, 동작 418에서, 디바이스에 대해 유저 거동이 학습되었는지의 여부에 관한 추가 판정이 이루어질 수도 있다. 예를 들면, 새로운 디바이스에 대해 유저 거동이 학습되는 지점에 도달하기 위해서는, 일련의 스냅샷이 필요로 될 수도 있다. 동작 418에서, 유저 거동이 학습되지 않았다는 것이 판정되면, 동작 420에서, MLE는 스냅샷에서의 액티비티에 기초하여 유저 거동을 계속 학습할 수도 있다. 동작 420에 후속하여 동작 400으로 돌아가서 추가적인 스냅샷을 생성할 수도 있다. 동작 418에서, 유저 거동이 학습되었다는 것이 판정되면, 동작 422에서, 스냅샷이 임의의 특이한 거동(예를 들면, 학습된 유저 거동과 일치하지 않는 동작)을 포함하는지의 여부에 관한 추가 판정이 이루어질 수도 있다. 스냅샷이 어떠한 특이한 거동도 포함하지 않는다는 동작 422에서의 판정에 후속하여, 동작 420이 계속될 수도 있는데, 여기서는 스냅샷에 포함된 액티비티가 MLE에 의해 학습되는 유저 거동을 계속적으로 개선하도록 사용될 수도 있다. 동작 422에서, 스냅샷이 특이한 거동을 포함한다는 판정이 이루어지면, 동작 424에서, 스냅샷은 원격 리소스로 송신될 수도 있다(예를 들면, 유저 데이터를 포함함).
원격 리소스에서 스냅샷을 수신하면, 동작 426에서, 디바이스에 대한 적어도 하나의 사용 타입이 유저 거동에 기초하여 분류되었는지에 관한 판정이 이루어질 수도 있다. 동작 426에서, 유저 거동이 아직 분류되지 않았다는 것이 판정되면, 동작 416에서, 완료시까지 분류의 발전이 계속될 수도 있다(예를 들면, 분류를 완료하기 위해 더 많은 스냅샷이 요구될 수도 있다). 한편, 동작 426에서, 분류가 완료되었다는 것이 판정되면, 동작 428에서, 분류의 관점에서 스냅샷을 평가하는 것에 기초하여(예를 들면, 분류에서의 적어도 하나의 사용 타입에 대응하는 예시적인 스냅샷에 기초하여) 디바이스가 잠재적인 위협을 포함하는지의 여부에 관한 추가 판정이 이루어질 수도 있다. 동작 428에서, 디바이스에 대한 어떠한 잠재적인 위협도 스냅샷에 존재하지 않는다는 것이 판정되면, 동작 430에서, 스냅샷의 액티비티는 분류를 업데이트하도록 활용될 수도 있다. 동작 428에서, 적어도 하나의 잠재적인 위협이 디바이스에 존재한다는 것이 스냅샷에 기초하여 판정되면, 동작 432에서, 위협 분석이 디바이스로 송신될 수도 있는데, 위협 분석은, 예를 들면, 동작 428에서 판정되었던 디바이스에 대한 임의의 위협을 설명한다. 디바이스는 위협 분석을 수신할 수도 있고 동작 434에서 위협 분석을 평가할 수도 있고/있거나, 필요하다면, 위협 분석에 대해 반응을 나타낼 수도 있다(예를 들면, 보호적 조치, 시정 조치 등등을 수행할 수도 있다).
도 4가 한 실시형태에 따른 동작을 예시할 수도 있지만, 도 4에서 묘사되는 모든 동작이 다른 실시형태에 필요한 것은 아니다는 것이 이해되어야 한다. 실제, 본 개시의 다른 실시형태에서는, 도 4에서 묘사되는 동작, 및/또는 본원에서 설명되는 다른 동작이 도면 중 어떠한 것에서도 구체적으로 도시되지 않은 방식으로 결합될 수도 있지만, 여전히 본 개시와 여전히 전적으로 부합할 수도 있다는 것이 본원에서 완전히 의도된다. 따라서, 하나의 도면에서 정확하게 도시되지 않은 피쳐 및/또는 동작을 대상으로 하는 청구항은 본 개시의 범위 및 내용 내에 있는 것으로 간주된다.
본 출원에서 그리고 청구범위에서 사용되는 바와 같이, 용어 "및/또는"에 의해 결합되는 아이템의 리스트는 열거된 아이템의 임의의 조합을 의미할 수 있다. 예를 들면, 어구 "A, B 및/또는 C"는 A; B; C; A 및 B; A 및 C; B 및 C; 또는 A, B 및 C를 의미할 수 있다. 본 출원에서 그리고 청구범위에서 사용되는 바와 같이, 용어 "적어도 하나의"에 의해 결합되는 아이템의 리스트는 열거된 용어의 임의의 임의의 조합을 의미할 수 있다. 예를 들면, 어구 "A, B 또는 C 중 적어도 하나"는 A; B; C; A 및 B; A 및 C; B 및 C; 또는 A, B 및 C를 의미할 수 있다.
본원의 임의의 실시형태에서 사용되는 바와 같이, 용어 "모듈"은 상기 언급된 동작 중 임의의 것을 수행하도록 구성되는 소프트웨어, 펌웨어 및/또는 회로부를 가리킬 수도 있다. 소프트웨어는, 비일시적 머신 판독가능 저장 매체 상에 기록된 소프트웨어 패키지, 코드, 명령어, 명령어 세트 및/또는 데이터로서 구체화될 수도 있다. 펌웨어는 메모리 디바이스에 하드코딩되는(hard-coded)(예를 들면, 불휘발성인) 코드, 명령어 또는 명령어 세트 및/또는 데이터로서 구체화될 수도 있다. 본원의 임의의 실시형태에서 사용되는 바와 같은 "회로부"는, 예를 들면, 하드웨어에 내장된 회로부(hardwired circuitry), 하나 이상의 개개의 명령어 프로세싱 코어를 포함하는 컴퓨터 프로세서와 같은 프로그래밍가능한 회로부, 상태 머신 회로부, 및/또는 프로그래밍가능한 회로부에 의해 실행되는 명령어를 저장하는 펌웨어를 단독으로 또는 임의의 조합으로 포함할 수도 있다. 모듈은, 일괄적으로 또는 개별적으로, 더 큰 시스템의 일부를 형성하는 회로부로서, 예를 들면, 집적 회로(integrated circuit; IC), 시스템 온 칩(SoC), 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 서버, 스마트폰, 등등으로서 구체화될 수도 있다.
본원에서 설명되는 동작 중 임의의 것은, 하나 이상의 프로세서에 의한 실행시 방법을 수행하는 명령어가, 개별적으로 또는 조합하여, 저장된 하나 이상의 저장 매체(예를 들면, 비일시적 저장 매체)를 포함하는 시스템에서 구현될 수도 있다. 여기서, 프로세서는, 예를 들면, 서버 CPU, 모바일 디바이스 CPU, 및/또는 다른 프로그래밍가능한 회로부를 포함할 수도 있다. 또한, 본원에서 설명되는 동작은, 하나보다 많은 상이한 물리적 위치에서 복수의 물리적 디바이스, 예컨대 프로세싱 구조체에 걸쳐 분포될 수도 있다는 것이 의도된다. 저장 매체는 임의의 타입의 유형의(tangible) 매체, 예를 들면, 하드 디스크, 플로피 디스크, 광학 디스크, 컴팩트 디스크 리드 온리 메모리(CD-ROM), 재기록가능 컴팩트 디스크(compact disk rewritable; CD-RW), 및 광자기 디스크를 포함하는 임의의 타입의 디스크, 리드 온리 메모리(ROM), 동적 RAM 및 정적 RAM과 같은 랜덤 액세스 메모리(RAM), 소거가능하고 프로그래밍가능한 리드 온리 메모리(EPROM), 전기적으로 소거가능하고 프로그래밍가능한 리드 온리 메모리(electrically erasable programmable read-only memory; EEPROM), 플래시 메모리, 솔리드 스테이트 디스크(Solid State Disk; SSD), 임베디드 멀티미디어 카드(eMMC), 시큐어 디지털 입력/출력(secure digital input/output; SDIO) 카드와 같은 반도체 디바이스, 자기 또는 광학 카드, 또는 전자적 명령어를 저장하기에 적합한 임의의 타입의 매체를 포함할 수도 있다. 다른 실시형태는 프로그래밍가능한 제어 디바이스에 의해 실행되는 소프트웨어 모듈로서 구현될 수도 있다.
따라서, 본 개시는 머신 학습 스냅샷 평가를 포함하는 보호 시스템을 대상으로 한다. 디바이스는 디바이스 동작의 스냅샷을 생성하기 위해 머신 학습 엔진(MLE)을 포함할 수도 있다. MLE는 유저 거동을 학습하기 위해 스냅샷의 액티브 또는 계획된 동작을 활용할 수도 있다. 일단 정상적인 유저 거동이 디바이스에 대해 확립되면, MLE는, 디바이스에 대한 위협을 의미할 수도 있는 특이한 거동을 스냅샷이 포함하는 때를 판정할 수도 있다. 특이한 거동을 포함하는 것으로 판정되는 스냅샷은 평가를 위해 원격 리소스로 송신될 수도 있다. 원격 리소스는, 유저 거동을 적어도 하나의 사용 타입으로 특징짓는 것에 의해 유저 거동을 분류할 수도 있는 적어도 유저 거동 분류 엔진(UBCE)을 포함할 수도 있다. 스냅샷은 디바이스에 잠재적인 위협이 존재하는지 여부를 판정하기 위해 UBCE에 의해 분석될 수도 있고, 위협 분석은 평가 및/또는 시정 조치를 위해 디바이스로 제공될 수도 있다.
하기의 예는 추가적인 실시형태에 관련된다. 본 개시의 하기의 예는, 하기에서 제공되는 바와 같이, 디바이스, 방법, 실행시 머신으로 하여금 방법에 기초하여 액트를 수행하게 하는 명령어를 저장하기 위한 적어도 하나의 머신 판독가능 매체, 방법에 기초하여 액트를 수행하기 위한 수단 및/또는 머신 학습 스냅샷 평가를 포함하는 보호 시스템과 같은 주제를 포함할 수도 있다.
예1에 따르면, 머신 학습 스냅샷 평가를 위한 디바이스가 제공된다. 디바이스는, 적어도 원격 리소스와 상호작용하는 통신 모듈, 적어도 학습된 유저 거동을 저장하는 메모리 모듈 및 디바이스 동작의 스냅샷을 생성하고, 학습된 유저 거동의 관점에서 스냅샷의 평가에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하고, 특이한 유저 거동이 발생했다는 것이 판정되면 통신 모듈로 하여금 스냅샷 및 유저 데이터를 원격 리소스로 송신하게 하고, 통신 모듈을 통해 원격 리소스로부터 위협 분석 - 위협 분석은 스냅샷의 송신에 응답하여 수신됨 - 을 수신하고 그리고 위협 분석에 적어도 기초하여 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 머신 학습 엔진을 포함할 수도 있다.
예2는 예1의 엘리먼트를 포함할 수도 있고, 머신 학습 엔진은 또한, 디바이스가 새로운 것인지 여부를 판정하고 디바이스가 새로운 것이다는 것이 판정되면 적어도 스냅샷 및 유저 데이터를 원격 리소스로 송신한다.
예3은 예1 또는 예2의 엘리먼트를 포함할 수도 있고, 머신 학습 엔진은 또한, 통신 모듈을 통해 원격 리소스로부터 수신되는 검증의 결과에 기초하여 디바이스에서 시정 조치가 필요로 되는지 여부를 판정한다.
예4는 예1 또는 예2의 엘리먼트를 포함할 수도 있고, 머신 학습 엔진이 디바이스 동작의 스냅샷을 생성하는 것은, 스냅샷이 생성되었던 시간에 디바이스에서의 액티브 동작 또는 스냅샷이 생성되었던 시간에 디바이스에서의 계획된 동작 중 적어도 하나에 기초하여 머신 학습 엔진이 디바이스에서의 적어도 하나의 동작을 식별하는 것을 포함한다.
예5는 예4의 엘리먼트를 포함할 수도 있고, 액티브 동작은, 애플리케이션을 실행하는 것, 네트워크 액티비티, 레지스트리 액티비티, 파일 시스템 액티비티, 프로세스 및 스레드 액티비티 또는 프로파일링 액티비티 중 적어도 하나를 포함한다.
예6은 예4의 엘리먼트를 포함할 수도 있고, 스케줄링된 동작은, 실행 컴포넌트, 일 회 실행(run once) 컴포넌트, 기동 컴포넌트, 설치된 컴포넌트에 대응하는 레지스트리 설정, 프로토콜 또는 ShellEx을 포함하는 익스플로러(explorer)에 대응하는 레지스트리 설정, 인터넷 익스플로러(Internet Explorer)에 대응하는 레지스트리 설정, OS 스케줄러에서의 태스크, 서비스, 드라이버, 코덱, boot.exe, 이미지 하이잭(image hijack), Applnit, 기지의 dll, 윈로그온(WinLogon), 윈속(Winsock) 공급자, 프린터 모니터, 로컬 보안 허가(local security authority; LSA) 공급자, 네트워크 공급자 중 적어도 하나로부터 유도된다.
예7은 예4의 엘리먼트를 포함할 수도 있고, 머신 학습 엔진은 또한, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작과 관련되는 소프트웨어 모듈의 서명을 검증한다.
예8은 예4의 엘리먼트를 포함할 수도 있고, 머신 학습 엔진은 또한, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작을, 메모리 모듈에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 또는 계획된 동작에 비교하는 것에 기초하여 유저 거동을 학습한다.
예9는 예4의 엘리먼트를 포함할 수도 있고, 특이한 유저 거동이 발생했는지 여부를 머신 학습 엔진이 판정하는 것은, 학습된 유저 거동에 기초하여 적어도 하나의 액티브 또는 계획된 동작이 예상되지 않는지 여부를 머신 학습 엔진이 판정하는 것을 포함한다.
예10에 따르면, 원격 리소스로서 동작하도록 구성되는 적어도 하나의 디바이스가 제공된다. 적어도 하나의 디바이스는, 적어도 유저 디바이스와 상호작용하는 통신 모듈 및 적어도 유저 디바이스 동작의 스냅샷 및 유저 데이터를 유저 디바이스로부터 수신하고, 유저 데이터에 적어도 기초하여 새로운 유저 계정이 필요로 되는지 여부를 판정하고, 새로운 유저 계정이 필요로 된다는 것이 판정되면 새로운 유저 계정을 확립하고, 유저 디바이스를, 현존하는 유저 계정 또는 새로운 유저계정과 관련시키고, 스냅샷에 적어도 기초하여 유저 디바이스가 새로운 것인지 여부를 검증하고 그리고 검증의 결과를 유저 디바이스로 제공하는 유저 거동 분류 엔진을 포함할 수도 있다.
예11은 예10의 엘리먼트를 포함할 수도 있고, 유저 거동 분류 엔진은 또한, 새로운 유저 계정이 필요로 된다는 것이 판정되면, 디바이스의 유저로 하여금, 새로운 유저 계정을 셋업하기 위한 정보를 제공할 것을 재촉받게 한다.
예12는 예10 또는 예11의 엘리먼트를 포함할 수도 있고, 유저 거동 분류 엔진은 또한, 스냅샷에 적어도 기초하여 유저 분류를 발전시킨다.
예13은 예12의 엘리먼트를 포함할 수도 있고, 유저 거동 분류 엔진이 유저 분류를 발전시키는 것은, 스냅샷에 적어도 기초하여 유저 거동 분류 엔진이 디바이스에 대한 적어도 하나의 사용 타입을 특징짓는 것을 포함한다.
예14에 따르면, 머신 학습 스냅샷 평가를 위한 방법이 제공된다. 방법은, 디바이스에서의 동작의 스냅샷을 생성하는 것, 디바이스에 저장되어 있는 학습된 유저 거동의 관점에서의 스냅샷의 평가에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하는 것, 특이한 유저 거동이 발생했다는 것이 판정되면 스냅샷 및 유저 데이터가 원격 리소스로 송신되게 하는 것, 스냅샷의 송신에 응답하여 원격 리소스로부터 위협 분석을 수신하는 것 및 위협 분석에 적어도 기초하여 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 것을 포함할 수도 있다.
예15는 예14의 엘리먼트를 포함할 수도 있고, 디바이스가 새로운 것인지 여부를 판정하는 것 및 디바이스가 새로운 것이다는 것이 판정되면 적어도 스냅샷 및 유저 데이터를 원격 리소스로 송신하는 것을 더 포함할 수도 있다.
예16은 예14 또는 예15의 엘리먼트를 포함할 수도 있고, 원격 리소스로부터 수신되는 검증의 결과에 기초하여 디바이스에서 시정 조치가 필요로 되는지 여부를 판정하는 것을 더 포함할 수도 있다.
예17은 예14 또는 예15의 엘리먼트를 포함할 수도 있고, 디바이스 동작의 스냅샷을 생성하는 것은, 스냅샷이 생성되었던 시간에 디바이스에서의 액티브 동작 또는 스냅샷이 생성되었던 시간에 디바이스에서의 계획된 동작 중 적어도 하나에 기초하여 디바이스에서의 적어도 하나의 동작을 식별하는 것을 포함한다.
예18은 예17의 엘리먼트를 포함할 수도 있고, 액티브 동작은, 애플리케이션을 실행하는 것, 네트워크 액티비티, 레지스트리 액티비티, 파일 시스템 액티비티, 프로세스 및 스레드 액티비티 또는 프로파일링 액티비티 중 적어도 하나를 포함한다.
예19는 예17의 엘리먼트를 포함할 수도 있고, 스케줄링된 동작은, 실행 컴포넌트, 일 회 실행(run once) 컴포넌트, 기동 컴포넌트, 설치된 컴포넌트에 대응하는 레지스트리 설정, 프로토콜 또는 ShellEx을 포함하는 익스플로러(explorer)에 대응하는 레지스트리 설정, 인터넷 익스플로러(Internet Explorer)에 대응하는 레지스트리 설정, OS 스케줄러에서의 태스크, 서비스, 드라이버, 코덱, boot.exe, 이미지 하이잭(image hijack), Applnit, 기지의 dll, 윈로그온(WinLogon), 윈속(Winsock) 공급자, 프린터 모니터, 로컬 보안 허가(local security authority; LSA) 공급자, 네트워크 공급자 중 적어도 하나로부터 유도된다.
예20은 예17의 엘리먼트를 포함할 수도 있고, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작과 관련되는 소프트웨어 모듈의 서명을 검증하는 것을 더 포함할 수도 있다.
예21은 예17의 엘리먼트를 포함할 수도 있고, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작을, 디바이스에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 또는 계획된 동작에 비교하는 것에 기초하여 유저 거동을 학습하는 것을 더 포함할 수도 있다.
예22는 예17의 엘리먼트를 포함할 수도 있고, 특이한 유저 거동이 발생했는지 여부를 판정하는 것은, 적어도 하나의 액티브 또는 계획된 동작이 학습된 유저 거동에 기초하여 예상되지 않는지 여부를 판정하는 것을 포함한다.
예23에 따르면, 머신 학습 스냅샷 평가를 위한 방법이 제공된다. 방법은, 원격 리소스에서 적어도 유저 디바이스 동작의 스냅샷 및 유저 데이터를 유저 디바이스로부터 수신하는 것, 유저 데이터에 적어도 기초하여 새로운 유저 계정이 필요로 되는지 여부를 판정하는 것, 새로운 유저 계정이 필요로 된다는 것이 판정되면 새로운 유저 계정을 확립하는 것, 유저 디바이스를 현존하는 유저 계정 또는 새로운 유저 계정과 관련시키는 것, 스냅샷에 적어도 기초하여 유저 디바이스가 새로운 것인지 여부를 검증하는 것 및 검증의 결과를 유저 디바이스로 제공하는 것을 포함할 수도 있다.
예24는 예23의 엘리먼트를 포함할 수도 있고, 새로운 유저 계정이 필요로 된다는 것이 판정되면 유저 디바이스의 유저로 하여금, 새로운 유저 계정을 셋업하기 위한 정보를 제공할 것을 재촉받게 하는 것을 더 포함한다.
예25는 예23 또는 예24의 엘리먼트를 포함할 수도 있고, 유저 거동 분류 엔진을 사용하여 스냅샷에 적어도 기초하여 유저 분류를 발전시키는 것을 더 포함할 수도 있다.
예26은 예25의 엘리먼트를 포함할 수도 있고, 유저 분류를 발전시키는 것은, 스냅샷에 적어도 기초하여 디바이스에 대한 적어도 하나의 사용 타입을 특징짓는 것을 포함한다.
예27에 따르면, 적어도 디바이스 및 원격 리소스를 포함하는 시스템이 제공되는데, 시스템은 상기 예14 내지 예26 중 임의의 것의 방법을 수행하도록 정렬된다.
예28에 따르면, 상기 예14 내지 예26 중 임의의 것의 방법을 수행하도록 정렬되는 칩셋이 제공된다.
예29에 따르면, 컴퓨팅 디바이스 상에서 실행되는 것에 응답하여, 컴퓨팅 디바이스로 하여금 상기 예14 내지 예26 중 어느 것에 따른 방법을 실행하게 하는 복수의 명령어를 포함하는 적어도 하나의 머신 판독가능 매체가 제공된다.
예30에 따르면, 머신 학습 스냅샷 평가를 포함하는 보호 시스템 사용하기 위한 적어도 하나의 디바이스가 제공되는데, 적어도 하나의 디바이스는 상기 예14 내지 예26 중 임의의 것의 방법을 수행하도록 정렬된다.
예31에 따르면, 머신 학습 스냅샷 평가를 위한 시스템이 제공된다. 시스템은, 디바이스에서의 동작의 스냅샷을 생성하기 위한 수단, 디바이스에 저장되어 있는 학습된 유저 거동의 관점에서의 스냅샷의 평가에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하기 위한 수단, 특이한 유저 거동이 발생했다는 것이 판정되면 스냅샷 및 유저 데이터가 원격 리소스로 송신되게 하기 위한 수단, 스냅샷의 송신에 응답하여 원격 리소스로부터 위협 분석을 수신하기 위한 수단 및 위협 분석에 적어도 기초하여 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하기 위한 수단을 포함할 수도 있다.
예32는 예31의 엘리먼트를 포함할 수도 있고, 디바이스가 새로운 것인지 여부를 판정하기 위한 수단 및 디바이스가 새로운 것이다는 것이 판정되면 적어도 스냅샷 및 유저 데이터를 원격 리소스로 송신하기 위한 수단을 더 포함할 수도 있다.
예33은 예31 또는 예32의 엘리먼트를 포함할 수도 있고, 원격 리소스로부터 수신되는 검증의 결과에 기초하여 디바이스에서 시정 조치가 필요로 되는지 여부를 판정하기 위한 수단을 더 포함할 수도 있다.
예34는 예31 또는 예32의 엘리먼트를 포함할 수도 있고, 디바이스 동작의 스냅샷을 생성하기 위한 수단은, 스냅샷이 생성되었던 시간에 디바이스에서의 액티브 동작 또는 스냅샷이 생성되었던 시간에 디바이스에서의 계획된 동작 중 적어도 하나에 기초하여 디바이스에서의 적어도 하나의 동작을 식별하기 위한 수단을 포함한다.
예35는 예34의 엘리먼트를 포함할 수도 있고, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작과 관련되는 소프트웨어 모듈의 서명을 검증하기 수단을 더 포함할 수도 있다.
예36은 예34의 엘리먼트를 포함할 수도 있고, 스냅샷에서 식별되는 적어도 하나의 액티브 또는 계획된 동작을, 디바이스에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 또는 계획된 동작에 비교하는 것에 기초하여 유저 거동을 학습하기 위한 수단을 더 포함할 수도 있다.
예37은 예34의 엘리먼트를 포함할 수도 있고, 특이한 유저 거동이 발생했는지 여부를 판정하기 위한 수단은, 적어도 하나의 액티브 또는 계획된 동작이 학습된 유저 거동에 기초하여 예상되지 않는지 여부를 판정하기 위한 수단을 포함한다.
본원에서 활용된 용어 및 표현은 제한이 아니라 설명의 용어로서 사용된 것이며, 이러한 용어 및 표현의 사용에 있어서, 도시되고 설명된 피쳐(또는 그 일부)의 임의의 균등물을 배제하려는 의도가 없으며, 따라서, 청구범위의 범위 내에서 다양한 수정예가 가능하다는 것이 인식된다. 따라서, 청구범위는 모든 이러한 균등물을 포괄하도록 의도된다.

Claims (25)

  1. 머신 학습 스냅샷 평가를 위한 디바이스로서,
    원격 리소스와 상호작용하는 통신 회로와,
    학습된 유저 거동을 저장하는 메모리 회로와,
    머신 학습 엔진을 포함하고,
    상기 머신 학습 엔진은,
    상기 디바이스의 유저와 연관된 유저 데이터를 수신하고,
    상기 디바이스의 동작의 스냅샷을 생성 - 상기 스냅샷은 상기 스냅샷이 생성되는 시점에서 상기 디바이스의 적어도 하나의 액티브 동작과 상기 디바이스의 적어도 하나의 계획된 동작을 식별함 - 하고,
    상기 학습된 유저 거동과 상기 스냅샷의 비교에 기초하여 특이한(unusual) 유저 거동이 발생했는지 여부를 판정 - 상기 특이한 유저 거동은 일반적인 액티브 동작 또는 일반적인 계획된 동작의 부재(absense) 또는 새로운 액티브 동작 또는 새로운 계획된 동작의 존재(presence)를 포함함 - 하며,
    특이한 유저 거동이 발생했다는 판정에 응답하여, 상기 통신 회로로 하여금 상기 스냅샷 및 상기 유저 데이터를 상기 원격 리소스로 송신하게 하고,
    상기 디바이스가 새로운 것인지 여부를 판정하고, 상기 디바이스가 새로운 것이라고 판정되면, 상기 스냅샷 및 상기 유저 데이터를 상기 원격 리소스로 송신하며,
    상기 통신 회로를 통해 상기 원격 리소스로부터 위협 분석(threat analysis)을 수신 - 상기 위협 분석은 상기 스냅샷의 송신에 응답하여 수신됨 - 하고,
    상기 위협 분석에 기초하여 상기 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 것인
    디바이스.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 머신 학습 엔진은 상기 통신 회로를 통해 상기 원격 리소스로부터 수신되는 검증(a verification)의 결과에 기초하여 상기 디바이스에서 시정 조치(corrective action)가 필요한지 여부를 판정하는
    디바이스.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 머신 학습 엔진은 상기 스냅샷에서 식별되는 상기 적어도 하나의 계획된 동작과 연관된 소프트웨어 회로의 서명을 검증하는
    디바이스.
  6. 제 1 항에 있어서,
    상기 머신 학습 엔진은 상기 스냅샷에서 식별되는 상기 적어도 하나의 계획된 동작을, 상기 메모리 회로에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 또는 계획된 동작과 비교하는 것에 기초하여 유저 거동을 학습하는
    디바이스.
  7. 제 1 항에 있어서,
    상기 머신 학습 엔진이 특이한 유저 거동이 발생했는지 여부를 판정하는 것은, 상기 머신 학습 엔진이 상기 학습된 유저 거동에 기초하여 상기 적어도 하나의 계획된 동작이 예상되지 않는지 여부를 판정하는 것을 포함하는
    디바이스.
  8. 머신 학습 스냅샷 평가를 위한 방법으로서,
    디바이스의 유저와 연관된 유저 데이터를 수신하는 단계와,
    상기 디바이스에서의 적어도 하나의 계획된 동작과 적어도 하나의 액티브 동작의 스냅샷을 생성하는 단계와,
    상기 스냅샷과 상기 디바이스에 저장되어 있는 학습된 유저 거동의 비교에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하는 단계 - 상기 특이한 유저 거동은 일반적인 액티브 동작 또는 일반적인 계획된 동작의 부재 또는 새로운 액티브 동작 또는 새로운 계획된 동작의 존재를 포함함 - 와,
    특이한 유저 거동이 발생했다는 판정에 응답하여 상기 스냅샷 및 상기 유저 데이터가 원격 리소스로 송신되게 하는 단계와,
    상기 디바이스가 새로운 것인지 여부를 판정하고, 상기 디바이스가 새로운 것이라고 판정되면, 상기 스냅샷 및 상기 유저 데이터를 상기 원격 리소스로 송신하는 단계와,
    상기 스냅샷의 송신에 응답하여 상기 원격 리소스로부터 위협 분석을 수신하는 단계와,
    상기 위협 분석에 기초하여 상기 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 단계를 포함하는
    머신 학습 스냅샷 평가를 위한 방법.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 원격 리소스로부터 수신되는 검증의 결과에 기초하여 상기 디바이스에서 시정 조치가 필요한지 여부를 판정하는 단계를 더 포함하는
    머신 학습 스냅샷 평가를 위한 방법.
  11. 삭제
  12. 제 8 항에 있어서,
    상기 스냅샷에서 식별되는 상기 적어도 하나의 액티브 동작 또는 계획된 동작과 연관된 소프트웨어 회로의 서명을 검증하는 단계를 더 포함하는
    머신 학습 스냅샷 평가를 위한 방법.
  13. 제 8 항에 있어서,
    상기 스냅샷에서 식별되는 상기 적어도 하나의 액티브 또는 계획된 동작을, 상기 디바이스에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 동작 또는 계획된 동작과 비교하는 것에 기초하여 유저 거동을 학습하는 단계를 더 포함하는
    머신 학습 스냅샷 평가를 위한 방법.
  14. 제 8 항에 있어서,
    특이한 유저 거동이 발생했는지 여부를 판정하는 단계는, 상기 적어도 하나의 액티브 동작 또는 계획된 동작이 상기 학습된 유저 거동에 기초하여 예상되지 않는지 여부를 판정하는 단계를 포함하는
    머신 학습 스냅샷 평가를 위한 방법.
  15. 명령어가 개별적으로 또는 조합되어 저장되어 있는 적어도 하나의 비일시적 머신 판독가능 저장 매체로서,
    머신 학습 스냅샷 평가를 위해, 상기 명령어는 적어도 하나의 프로세서에 의해 실행될 때,
    유저 인터페이스를 통해 디바이스의 유저와 연관된 유저 데이터를 수신하는 것과,
    상기 디바이스에서의 적어도 하나의 계획된 동작과 적어도 하나의 액티브 동작의 스냅샷을 생성하는 것과,
    상기 스냅샷과 상기 디바이스에 저장되어 있는 학습된 유저 거동의 비교에 기초하여 특이한 유저 거동이 발생했는지 여부를 판정하는 것 - 상기 특이한 유저 거동은 일반적인 액티브 동작 또는 일반적인 계획된 동작의 부재 또는 새로운 액티브 동작 또는 새로운 계획된 동작의 존재를 포함함 - 과,
    특이한 유저 거동이 발생했다는 판정에 응답하여 상기 스냅샷 및 상기 유저 데이터가 원격 리소스로 송신되게 하는 것과,
    상기 디바이스가 새로운 것인지 여부를 판정하고, 상기 디바이스가 새로운 것이라고 판정되면, 상기 스냅샷 및 상기 유저 데이터를 상기 원격 리소스로 송신하는 것과,
    상기 스냅샷의 송신에 응답하여 상기 원격 리소스로부터 위협 분석을 수신하는 것과,
    상기 위협 분석에 기초하여 상기 디바이스에 대해 잠재적인 위협이 존재하는지 여부를 판정하는 것을 포함하는 동작을 초래하는
    비일시적 머신 판독가능한 저장 매체.
  16. 삭제
  17. 제 15 항에 있어서,
    적어도 하나의 프로세서에 의해 실행될 때,
    상기 원격 리소스로부터 수신되는 검증의 결과에 기초하여 상기 디바이스에서 시정 조치가 필요한지 여부를 판정하는 것을 포함하는 동작을 초래하는 명령어를 더 포함하는
    비일시적 머신 판독가능한 저장 매체.
  18. 삭제
  19. 제 15 항에 있어서,
    적어도 하나의 프로세서에 의해 실행될 때,
    상기 스냅샷에서 식별되는 상기 적어도 하나의 액티브 동작 또는 계획된 동작과 관련되는 소프트웨어 회로의 서명을 검증하는 것을 포함하는 동작을 초래하는 명령어를 더 포함하는
    비일시적 머신 판독가능한 저장 매체.
  20. 제 15 항에 있어서,
    적어도 하나의 프로세서에 의해 실행될 때,
    상기 스냅샷에서 식별되는 상기 적어도 하나의 액티브 동작 또는 계획된 동작을, 상기 디바이스에 저장되어 있는 적어도 하나의 이전 스냅샷에서 식별된 적어도 하나의 액티브 동작 또는 계획된 동작과 비교하는 것에 기초하여 유저 거동을 학습하는 것을 포함하는 동작을 초래하는 명령어를 더 포함하는
    비일시적 머신 판독가능한 저장 매체.
  21. 제 15 항에 있어서,
    특이한 유저 거동이 발생했는지 여부를 판정하는 것은, 상기 적어도 하나의 액티브 동작 또는 계획된 동작이 상기 학습된 유저 거동에 기초하여 예상되지 않는지 여부를 판정하는 것을 포함하는
    비일시적 머신 판독가능한 저장 매체.
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
KR1020167019123A 2013-12-19 2013-12-19 머신 학습 스냅샷 평가를 포함하는 보호 시스템 KR101801581B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/076489 WO2015094271A1 (en) 2013-12-19 2013-12-19 Protection system including machine learning snapshot evaluation

Publications (2)

Publication Number Publication Date
KR20160101051A KR20160101051A (ko) 2016-08-24
KR101801581B1 true KR101801581B1 (ko) 2017-11-27

Family

ID=53400342

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167019123A KR101801581B1 (ko) 2013-12-19 2013-12-19 머신 학습 스냅샷 평가를 포함하는 보호 시스템

Country Status (5)

Country Link
US (2) US9613196B2 (ko)
EP (2) EP3084672B1 (ko)
KR (1) KR101801581B1 (ko)
CN (2) CN109409050B (ko)
WO (1) WO2015094271A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10021120B1 (en) * 2015-11-09 2018-07-10 8X8, Inc. Delayed replication for protection of replicated databases
US10038700B1 (en) * 2016-03-29 2018-07-31 EMC IP Holding Company LLC Establishing trustworthiness of devices in the internet of things (IoT) to control inter-device communication
JP6668934B2 (ja) * 2016-05-12 2020-03-18 株式会社リコー サービス提供システム、サービス提供装置、サービス提供方法、プログラム
US11049039B2 (en) 2016-09-30 2021-06-29 Mcafee, Llc Static and dynamic device profile reputation using cloud-based machine learning
US10931685B2 (en) * 2016-12-12 2021-02-23 Ut-Battelle, Llc Malware analysis and recovery
US10708282B2 (en) * 2017-03-27 2020-07-07 International Business Machines Corporation Unauthorized data access detection based on cyber security images
US10887369B2 (en) 2017-09-25 2021-01-05 Splunk Inc. Customizable load balancing in a user behavior analytics deployment
US11086974B2 (en) * 2017-09-25 2021-08-10 Splunk Inc. Customizing a user behavior analytics deployment
KR102408348B1 (ko) 2017-12-21 2022-06-14 삼성전자주식회사 단말 장치 및 단말 장치의 제어 방법
US10931659B2 (en) * 2018-08-24 2021-02-23 Bank Of America Corporation Federated authentication for information sharing artificial intelligence systems
CN110188796A (zh) * 2019-04-25 2019-08-30 博彦科技股份有限公司 用户识别方法、装置、存储介质和处理器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120110174A1 (en) * 2008-10-21 2012-05-03 Lookout, Inc. System and method for a scanning api
US20130097709A1 (en) * 2011-10-18 2013-04-18 Mcafee, Inc. User behavioral risk assessment

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167535A (en) * 1997-12-09 2000-12-26 Sun Microsystems, Inc. Object heap analysis techniques for discovering memory leaks and other run-time information
US20030172291A1 (en) * 2002-03-08 2003-09-11 Paul Judge Systems and methods for automated whitelisting in monitored communications
KR100866825B1 (ko) * 2003-01-06 2008-11-04 인터내셔널 비지네스 머신즈 코포레이션 사용자 중심의 서비스 제공 장치 및 서비스 제공 방법
CN1856781A (zh) * 2003-08-11 2006-11-01 合声系统公司 用于创建和使用自适应参考模型的系统及方法
US8171553B2 (en) * 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US7490356B2 (en) * 2004-07-20 2009-02-10 Reflectent Software, Inc. End user risk management
US20080146194A1 (en) * 2006-12-15 2008-06-19 Yahoo! Inc. Automatic data back up and account creation
CN101572691B (zh) * 2008-04-30 2013-10-02 华为技术有限公司 一种入侵检测方法、系统和装置
CA2734613C (en) * 2008-08-19 2020-06-09 Digimarc Corporation Methods and systems for content processing
MX2012008206A (es) * 2010-01-15 2012-10-09 Apollo Group Inc Contenido de aprendisaje por recomendacion dinamica.
US8474040B2 (en) * 2010-02-19 2013-06-25 International Business Machines Corporation Environmental imaging
US8707427B2 (en) * 2010-04-06 2014-04-22 Triumfant, Inc. Automated malware detection and remediation
US8468599B2 (en) 2010-09-20 2013-06-18 Sonalysts, Inc. System and method for privacy-enhanced cyber data fusion using temporal-behavioral aggregation and analysis
US9215244B2 (en) * 2010-11-18 2015-12-15 The Boeing Company Context aware network security monitoring for threat detection
US9672355B2 (en) * 2011-09-16 2017-06-06 Veracode, Inc. Automated behavioral and static analysis using an instrumented sandbox and machine learning classification for mobile security
CN102638617B (zh) * 2012-03-30 2013-12-18 中国科学技术大学苏州研究院 用于安卓手机的基于入侵检测的主动响应系统
US9202047B2 (en) 2012-05-14 2015-12-01 Qualcomm Incorporated System, apparatus, and method for adaptive observation of mobile device behavior
US9298494B2 (en) * 2012-05-14 2016-03-29 Qualcomm Incorporated Collaborative learning for efficient behavioral analysis in networked mobile device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120110174A1 (en) * 2008-10-21 2012-05-03 Lookout, Inc. System and method for a scanning api
US20130097709A1 (en) * 2011-10-18 2013-04-18 Mcafee, Inc. User behavioral risk assessment

Also Published As

Publication number Publication date
US9998488B2 (en) 2018-06-12
EP3084672A4 (en) 2017-05-03
WO2015094271A1 (en) 2015-06-25
CN109409050B (zh) 2021-10-29
US9613196B2 (en) 2017-04-04
CN105745663B (zh) 2018-11-16
US20150178496A1 (en) 2015-06-25
US20170230394A1 (en) 2017-08-10
EP3084672B1 (en) 2019-09-18
CN105745663A (zh) 2016-07-06
EP3084672A1 (en) 2016-10-26
EP3591552B1 (en) 2022-03-30
CN109409050A (zh) 2019-03-01
EP3591552A1 (en) 2020-01-08
KR20160101051A (ko) 2016-08-24

Similar Documents

Publication Publication Date Title
KR101801581B1 (ko) 머신 학습 스냅샷 평가를 포함하는 보호 시스템
US10432627B2 (en) Secure sensor data transport and processing
US10503892B2 (en) Remote attestation for multi-core processor
US10044698B2 (en) Dynamic identity checking for a software service in a virtual machine
US10185633B2 (en) Processor state integrity protection using hash verification
TWI793667B (zh) 基於組態漂移創建及處置工作空間失陷指標(ioc)
US10019577B2 (en) Hardware hardened advanced threat protection
US9973527B2 (en) Context-aware proactive threat management system
US20230179613A1 (en) Detecting security attacks using workspace orchestration logs
US9836307B2 (en) Firmware block dispatch based on fusing
US20160300051A1 (en) Content protection system using biometric authentication
US20160134627A1 (en) System for establishing ownership of a secure workspace
US20210021418A1 (en) Centralized volume encryption key management for edge devices with trusted platform modules
US9219754B2 (en) Determining security factors associated with an operating environment
US20150302196A1 (en) Local System Health Assessment
US20230261867A1 (en) Centralized volume encryption key management for edge devices with trusted platform modules
US20160021143A1 (en) Device federation

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