BR112019014366A2 - Análise de múltiplos sinais para identificação de esco-po comprometido - Google Patents

Análise de múltiplos sinais para identificação de esco-po comprometido Download PDF

Info

Publication number
BR112019014366A2
BR112019014366A2 BR112019014366-1A BR112019014366A BR112019014366A2 BR 112019014366 A2 BR112019014366 A2 BR 112019014366A2 BR 112019014366 A BR112019014366 A BR 112019014366A BR 112019014366 A2 BR112019014366 A2 BR 112019014366A2
Authority
BR
Brazil
Prior art keywords
given
online service
scope
detection results
fact
Prior art date
Application number
BR112019014366-1A
Other languages
English (en)
Inventor
Luo Pengcheng
Hoppe Briggs Reeves
Sadovsky Art
Ahmad Naveed
Original Assignee
Microsoft Technology Licensing, Llc
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 Microsoft Technology Licensing, Llc filed Critical Microsoft Technology Licensing, Llc
Publication of BR112019014366A2 publication Critical patent/BR112019014366A2/pt

Links

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
    • 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)
  • Storage Device Security (AREA)
  • Measurement Of Current Or Voltage (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

a presente invenção refere-se a detectar dispositivos comprometidos e contas de usuário dentro de um serviço online através de análise de múltiplos sinais que permite menos falsos positivos e assim uma alocação mais precisa de recursos de computação e recursos de analista humano. escopos individuais de análise, relativos a dispositivos, contas, ou processos são especificados e múltiplos comportamentos sobre um período de tempo são analisados para detectar ameaças persistentes (e de ação lenta) assim como ameaças de força bruta (e de ação rápida). os analistas são alertados para escopos individualmente afetados suspeitos de serem comprometidos e podem resolvê-los consequentemente.

Description

Relatório Descritivo da Patente de Invenção para ANÁLISE DE MÚLTIPLOS SINAIS PARA IDENTIFICAÇÃO DE ESCOPO COMPROMETIDO.
ANTECEDENTES [001] Os serviços online estão sob risco quase constante de partes maliciosas as quais buscam comprometer dispositivos dentro destes serviços online para subverter a sua funcionalidade ou comprometer dados confidenciais armazenados nestes serviços. Os dispositivos comprometidos podem ter dados exfiltrados para um dispositivo externo, ou podem ser comandados para executar várias ações pela parte maliciosa, por exemplo, como parte de um botnet. Identificar hospedeiros individuais que foram comprometidos dentro do serviço online pode ser uma operação intensa em recursos e tempo, o que pode deixar a parte maliciosa em controle de um ou mais dispositivos por um longo período de tempo apesar de contramedidas desenvolvidas no serviço online. Os sistemas de Informações Seguras e de Gerenciamento de Eventos (SIEM) correntes podem perder alguns dispositivos comprometidos ou identificar erroneamente dispositivos seguros como comprometidos, o que aumenta a quantidade de tempo que a parte maliciosa permanece em controle e aumenta os recursos de processamento necessários para ressegurar o serviço online.
SUMÁRIO [002] Este sumário está provido para introduzir uma seleção de conceitos em forma simplificada que estão adicionalmente abaixo descritos na seção de Descrição Detalhada. Este sumário não pretende identificar todas as características chave ou essenciais do assunto reivindicado, nem está destinado como um auxílio em determinar o escopo do assunto reivindicado.
[003] Sistemas, métodos e dispositivos de armazenamento legíveis por computador que incorporam instruções executáveis por pro
Petição 870190065143, de 11/07/2019, pág. 16/63
2/32 cessador para detectar máquinas hospedeiras comprometidas estão aqui providos. Sinais de segurança são recebidos por um analisador de anormalidade de sinal para determinar um nível de anormalidade para uma dada ação no serviço online sendo protegido. Em um grande serviço on-line, grupos de dispositivos são esperados se comportarem da mesma forma quando operando apropriadamente, e portanto comportamentos que não estão difundidos são tratados com maior suspeita. Os resultados de detecção pontuados são agregados de acordo com várias populações de dispositivos ou subcomportamentos, e as pontuações de anormalidade são passadas para um analisador de múltiplos sinais, o qual coleta resultados de detecção sobre janelas de tempo rolantes e os divide em vários escopos com base em dispositivo para análise para determinar se um alerta deve ser gerado que um dado dispositivo está comprometido.
[004] Utilizando uma análise de escopos em janela, a presente descrição resolve o problema centrado em computador de detectar ameaças persistentes avançadas de movimento lento assim como ataques concentrados, de movimento rápido em um serviço online com confiabilidade melhorada. A segurança de dados hospedados em computador é por meio disto aperfeiçoada, os recursos de processamento do serviço online são mais eficientemente alocados para legitimar processos, em oposição a processos executados em nome de partes maliciosas, além de uma alocação mais efetiva da atenção de usuários analistas para violações suspeitas.
[005] Exemplos são implementados como um processo de computador, um sistema de computação, ou como um artigo de manufatura tal como um dispositivo, produto de programa de computador, ou meio legível por computador. De acordo com um aspecto, o produto de programa de computador é um meio de armazenamento de computador legível por um sistema de computador e codificando o programa
Petição 870190065143, de 11/07/2019, pág. 17/63
3/32 de computador que compreende instruções para executar um processo de computador.
[006] Os detalhes de um ou mais aspectos estão apresentados nos desenhos acompanhantes e na descrição abaixo. Outras características e vantagens serão aparentes da leitura da descrição detalhada seguinte e uma revisão dos desenhos associados. Deve ser compreendido que a descrição detalhada seguinte é explicativa somente e não restritiva das reivindicações.
BREVE DESCRIÇÃO DOS DESENHOS [007] Os desenhos acompanhantes, os quais estão incorporados em e constituem uma parte desta descrição, ilustram vários aspectos. Nos desenhos:
[008] Figura 1 ilustra um ambiente exemplar no qual a presente descrição pode ser praticada;
[009] Figura 2 ilustra detalhes do pontuador de anomalias de assinatura;
[0010] Figura 3 é um diagrama de blocos de eventos de janela e escopo para análise de múltiplos sinais;
[0011] Figura 4 ilustra detalhes do detector de múltiplos sinais;
[0012] Figura 5 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar para detectar escopos de hospedeiro comprometidos em um serviço online;
[0013] Figura 6 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar para pontuar resultados de detecção com base em anormalidades;
[0014] Figura 7 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar para detecção de múltiplos sinais de escopos comprometidos;
[0015] Figura 8 é um diagrama de blocos que ilustra componentes físicos exemplares de um dispositivo de computação; e
Petição 870190065143, de 11/07/2019, pág. 18/63
4/32 [0016] Figuras 9A e 9B são diagramas de blocos de um dispositivo de computação móvel.
DESCRIÇÃO DETALHADA [0017] A seguinte descrição detalhada refere-se aos desenhos acompanhantes. Sempre que possível, os mesmos números de referência são utilizados nos desenhos e a descrição seguinte refere-se aos mesmos ou similares elementos. Apesar de exemplos poderem ser descritos, modificações, adaptações e outras implementações são possíveis. Por exemplo, substituições, adições, ou modificações podem ser feitas nos elementos ilustrados nos desenhos, e os métodos aqui descritos podem ser modificados substituindo, reordenação, ou adicionando estágios aos métodos descritos. Consequentemente, a descrição detalhada seguinte não é limitante, mas ao invés, o escopo apropriado está definido pelas reivindicações anexas. Exemplos podem tomar a forma de uma implementação em hardware, ou uma implementação inteiramente em software, ou uma implementação que combina aspectos de software e hardware. A descrição detalhada seguinte, portanto, não deve ser tomada em um sentido limitante.
[0018] A Figura 1 ilustra um ambiente exemplar 100 no qual a presente descrição pode ser praticada. Como ilustrado, um serviço online 110 comunica assinaturas de eventos para um detector de eventos 120, o qual utiliza vários conjuntos lógicos de detecção para prover resultados de detecção que indicam comportamentos que ocorrem no serviço online 110 para um pontuador de anomalias de assinatura 130, O pontuador de anomalias de assinatura 130 determina quão comum ou incomum um dado comportamento é para o serviço online 110 e armazena contagens e o resultado de detecção em um cache de agregados de sinal 140 e um cache de resultados de detecção 150, respectivamente.
[0019] Um detector de múltiplos sinais 160 aceita pontuações de
Petição 870190065143, de 11/07/2019, pág. 19/63
5/32 anomalias e resultados de detecção do pontuador de anomalias de assinatura 130 e o cache de resultados de detecção 150 (novos e previamente observados, respectivamente) para preditivamente determinar ser o comportamento observado é indicativo de atividade maliciosa ou benigna no serviço online 110, As determinações preditivas são armazenadas em um cache de resultados de múltiplos sinais 170, e podem ser transmitidas para um gerador de alertas 180 quando estas indicam um comportamento malicioso. Alertas são transmitidos para um analista ou usuário administrativo do gerador de alertas 180, e pode acessar os resultados em cache no cache de resultados de detecção 150 e no cache de resultados de múltiplos sinais 170 para revisão adicional.
[0020] Em vários aspectos, o pontuador de anomalias de assinatura 130 e o detector de múltiplos sinais 160 são referidos coletivamente como detector de anomalias 190, O detector de anomalias 190 pode estar hospedado dentro do serviço online 110 como um dispositivo dedicado ou conjunto de dispositivos distribuídos no mesmo, ou pode ser um dispositivo externo ou conjunto de dispositivos. Além disso, o detector de eventos 120 pode ser parte do serviço online 110, do detector de anomalias 190, um serviço de terceiros, e suas combinações. Similarmente, os caches utilizados pelo detector de anomalias podem fazer parte do detector de anomalias 190, do serviço online 110, ou dispositivos de armazenamento externos.
[0021] O serviço online 110, detector de eventos 120, caches, gerador de alertas 180, e detector de anomalias 190 são ilustrativos de uma multiplicidade de sistemas de computação incluindo sem limitação, sistemas de computador desktop, sistemas de computação com fio e sem fio, sistemas de computação móveis (por exemplo, telefones móveis, netbooks, computadores tipo tablet ou slate, computadores notebook, e computadores laptop), dispositivos portáteis, sistemas de
Petição 870190065143, de 11/07/2019, pág. 20/63
6/32 multiprocessador, eletrônica de consumidor baseada em microprocessador ou programável, minicomputadores, impressoras, e computadores mainframe. O hardware destes sistemas de computação está discutido em maiores detalhes com relação às Figuras 8, 9A, e 9B.
[0022] Apesar do serviço online 110, detector de eventos 120, caches, gerador de alertas 180, e detector de anomalias 190 serem mostrados remotamente uns dos outros para propósitos ilustrativos, deve ser notado que diversas configurações de um ou mais destes dispositivos hospedados localmente em outro dispositivo ilustrado são possíveis, e cada dispositivo ilustrado pode representar múltiplas instâncias deste dispositivo. Vários servidores e intermediários familiares daqueles versados na técnica podem ficar entre os sistemas de componentes ilustrados na Figura 1 para rotear as comunicações estre estes sistemas, os quais não estão ilustrados de modo a não distrair dos novos aspectos da presente descrição.
[0023] O serviço online 110 representa um conjunto em rede de dispositivos de computação, tal como um centro de dados em nuvem, que provê serviços em nuvem para vários usuários, incluindo, mas não limitado a: Infraestrutura Como um Serviço (laaS), onde o usuário provê o sistema de operação e software que executam nos dispositivos do serviço online 110; Plataforma Como um Serviço (PaaS), onde o usuário provê o software e o serviço online 110 provê o sistema de operação e dispositivos; ou Software Como um Serviço (SaaS), onde o serviço online 110 provê tanto o sistema de operação quanto o software para executar nos dispositivos para os usuários.
[0024] Vários eventos de auditoria são gerados nos dispositivos dentro do serviço online 110, e são manipulados por vários detectores de eventos 120 que executam uma lógica de detecção dentro de Informações de Segurança e Gerenciamento de Eventos (SIEM) assim como sistemas de detecção externos que proveem resultados de audi
Petição 870190065143, de 11/07/2019, pág. 21/63
7/32 toria externa de outros sistemas e serviços. Os vários eventos de auditoria incluem, mas não estão limitados a: traços de comunicação de rede, registros de erros, registros de eventos, comandos de sistema, e similares.
[0025] Com relação ao serviço online 110, comportamentos associados a usuários ou programas não autorizados (por exemplo, vírus) são categorizados como maliciosos, enquanto que comportamentos associados com usuários ou programas autorizados categorizados como benignos. Para categorizar estes comportamentos, os resultados de detecção são passados do detector de eventos para o detector de anomalias 190, o qual armazena seus resultados no cache de agregados de sinal 140, cache de resultados de detecção 150, e cache de resultados de múltiplos sinais 170, [0026] O detector de anomalias 190 utiliza várias propostas de aprendizado de máquina para desenvolver modelos pelos quais avaliar múltiplos sinais sobre um período de tempo para determinar se um dado comportamento é malicioso ou benigno. A operação do pontuador de anomalias de assinatura 130 e do detector de múltiplos sinais 160 do detector de anomalias está discutida em maiores detalhes com relação às Figuras 2 e 4.
[0027] Em resposta a determinar que um dado comportamento é malicioso, o detector de anomalias 190 passa sua determinação para um gerador de alertas 180, O gerador de alertas 180 pode transmitir e apresentar alertas para o usuário analista em uma variedade de formatos incluindo, mas não limitado a: uma mensagem de aplicação (por exemplo, dentro de uma aplicação de SIEM), email (para uma conta de email), a mensagem de texto ou multimídia (para uma célula ou conta de Protocolo de Voz Sobre Internet (VOIP)), um pageamento (para um número de pageador), etc. Os alertas são providos quase em tempo real (por exemplo, levando em conta tempo de processamento
Petição 870190065143, de 11/07/2019, pág. 22/63
8/32 e transmissão) para o evento que resultou em classificar o comportamento como malicioso, mas podem também ser armazenados para posterior consulta e revisão.
[0028] A Figura 2 ilustra detalhes do pontuador de anomalias de assinatura 130, O pontuador de anomalias de assinatura 130 aceita resultados de detecção brutos de vários detectores de eventos 120 e emite contagens de anomalias agregadas para o cache de agregados de sinal 140, as quais são utilizadas para atualizar como o pontuador de anomalias de assinatura 130 emite resultados de detecção pontuados para o detector de múltiplos sinais 160, O pontuador de anomalias de assinatura 130 distingue se um dado comportamento é novo ou foi visto anteriormente, e em qual grau este foi visto anteriormente.
[0029] Resultados de detecção brutos são recebidos por um reconhecedor de identificador 210, o qual determina um identificador para utilizar em conjunto com os resultados de detecção. Vários valores de campo do resultado de detecção bruto são combinados para formar o identificador, os quais podem incluir um ou mais de: uma função para o dispositivo do qual o comportamento foi observado, um usuário do dispositivo do qual o comportamento foi observado, uma classe de comportamento, um solicitante de comportamento (usuário ou processo), um objeto de comportamento (usuário ou processo), uma estampa de tempo, ou outros campos presentes no sinal de evento. Por exemplo, um comportamento de usuário A concedendo ao usuário B uma permissão administrativa para um dispositivo do tipo C no tempo D pode resultar em um identificador de ABCD. Em vários aspectos, os identificadores são produzidos com base nos valores de campo, mas não incluem os valores de texto corrido destes campos. Por exemplo, um algoritmo/função de hash ou criptografia é aplicado aos valores de campo quando formando o identificador.
[0030] O agregador de população 220 consulta as contagens his
Petição 870190065143, de 11/07/2019, pág. 23/63
9/32 tóricas para o identificador específico do cache de agregados de sinal 140, e atualiza as contagens consequentemente. As contagens históricas são agregadas de acordo com uma contagem de população para o número total de detecções previamente observadas do dado tipo de comportamento e de acordo com uma contagem de subpopulação do número total de detecções previamente observadas que compartilham um dado identificador.
[0031] O pontuador de resultados de detecção 230 adiciona pelo menos uma pontuação de anomalia aos resultados de detecção com base nas contagens históricas para o comportamento observado. A pontuação de anomalia está baseada na razão entre a contagem de subpopulação e a contagem de população para o dado comportamento, de modo que conforme a subpopulação torna-se uma maior porção da população, a anormalidade do comportamento é diminuída. Por exemplo, a pontuação de anomalia pode utilizar o formato use mostrado na FÓRMULA 1, onde x, y, e z são variados em diferentes aspectos para afetar os valores providos para a pontuação de anomalia. Como será apreciado, a FÓRMULA 1 é dada como um exemplo não limitante de como atribuir uma pontuação para anormalidade.
FÓRMULA 1: Pontuação = x - ((y.subpopulação) + (z.população)) [0032] As pontuações podem ser calculadas de acordo com diferentes contagens de escopos de população que utilizam contagens brutas para todos os eventos que coincidem com um dado comportamento, ou contagens de escopo para os dispositivos individuais (hospedeiros) no serviço online 110 que exibe o dado comportamento ou o usuário que solicita o comportamento observado. Para ilustrar, considere eventos Ei e E2 que ocorrem nos dispositivos Di e D2 do serviço online 110 nos quais E1 foi observado três vezes (duas vezes em D1 e
Petição 870190065143, de 11/07/2019, pág. 24/63
10/32 uma vez em D2) e E2 foi observado uma vez em D2. A contagem de população bruta no exemplo ilustrado é quatro, já que E1 ocorreu no serviço online 110 três vezes e E2 uma vez, e as contagens de subpopulação são três e uma para E1 e E2 respectivamente. Utilizando a FÓRMULA 1 com um valor de um para cada um de x, y, e z gera uma pontuação de anomalia para E1 de 0,25 [1 - (1.3) + (1.4)] e uma pontuação de anomalia E2de 0,75 [1-(1.1) + 1.4)].
[0033] Uma pontuação de anomalia com escopo exemplar, no entanto, pode gerar diferentes resultados de contagens brutas dependendo dos escopos selecionados para a população. Utilizando um escopo de contagens de dispositivos, a contagem de população de dispositivos com escopo seria dois na ilustração corrente, já que existem dois distintos dispositivos (Di e D2) no serviço online 110 no exemplo ilustrado. Como E1 foi visto em ambos os dispositivos, sua contagem de subpopulação é dois, enquanto que E2 somente foi visto em D2, assim sua contagem de subpopulação é um. Utilizando um escopo de dispositivos distintos e a FÓRMULA 1 com um valor de um para cada um de x, y, e z gerar uma pontuação de anomalia para E1 de zero [1 - (1.2) + (1.2)] e uma pontuação de anomalia para E2 de 0,5 [1-(1.1) + (1.2) ].
[0034] Para impedir novos eventos ou eventos de baixa população de prover pontuações de anomalia espúrias, um filtro de limite é utilizado em alguns aspectos para excluir eventos de frequência muito baixa de exame (pelo menos temporariamente). Em um exemplo, eventos recentes são ressaltados, de modo que a primeira observação de um comportamento não é pontuada até que outras instâncias daquele comportamento são dadas tempo para serem observadas. Em um segundo exemplo, um limite de população é ajustado de modo que uma probabilidade de zero é atribuída se a população de eventos for muito pequena para prever resultados confiáveis (por exemplo, duran
Petição 870190065143, de 11/07/2019, pág. 25/63
11/32 te a partida do detector de anomalias 190). Em um terceiro exemplo, um limite de subpopulação é ajustado de modo que (dependendo de opções do sistema) uma pontuação de anomalia máxima ou mínima é atribuída se uma subpopulação de comportamentos for muito pequena para prover resultados confiáveis em estimar de uma probabilidade para aquele comportamento ser visto (por exemplo, para uma subpopulação recentemente atribuída observar).
[0035] Em vários aspectos, os comportamentos observados são ajustados de acordo com uma janela de tempo de rolagem, de modo que os eventos considerados parte de uma população ou subpopulação (e as suas contagens associadas) são baseados em quando estes ocorreram. Por exemplo, somente comportamentos que foram observados nos d dias passados podem fazer parte da janela de tempo de rolagem e assim as contagens de população e subpopulação para determinar uma pontuação de anomalia podem ser baseadas em comportamentos recentes ao invés de todos os comportamentos observados para o serviço online 110, Uma janela de rolagem para pontuações de anomalias de sinal provê uma linha de base para como as operações normais no serviço online 110 parecem (por exemplo, quais os padrões de utilização do último mês são).
[0036] Além disso, observando os comportamentos sobre um período de tempo, um ataque de movimento lento sobre o serviço online 110 pode ser observado o que podería de outro modo ser perdido. Uma janela de múltiplos sinais rolante assegura que uma baixa população ou comportamentos de movimento lento, tais como Ameaças Persistentes Avançadas (APT), sejam observados coletando todos os eventos que ocorrem em um dado dispositivo no serviço online 110 para terminar se um padrão malicioso para comportamentos existe.
[0037] A Figura 3 é um diagrama de blocos 300 de colocação em janela e de escopo para análise de múltiplos sinais. Como ilustrado,
Petição 870190065143, de 11/07/2019, pág. 26/63
12/32 diversos blocos de eventos 310 (individualmente, 310a-n) que representam os comportamentos observados e seus identificadores associados, pontuações, vetores de característica, estampa de tempos, etc. estão mostrados em um primeiro estado de organização 301 e um segundo estado de organização 302. Um arranjador de escopo 320 está configurado para colocar me janela e escopo os blocos de eventos 310 do primeiro estado de organização 301 para o segundo estado de organização 302, os quais incluem diversos blocos de escopo 330 (individualmente, 330a-n) que são alimentados para o detector de múltiplos sinais 160 para análise. O detector de múltiplos sinais 160 é alimentado com os eventos associados em cada escopo para determinar se o escopo está associado com atividades maliciosas (por exemplo, um dispositivo comprometido, uma conta de usuário acessando arquivos restritos, uma conta de usuário enviando grandes quantidades de dados para um destino suspeito, um processo atuando erraticamente, etc.).
[0038] O primeiro estado de organização 301 pode ser aquele utilizado por um cache de resultados de detecção 150 ou outro dispositivo de armazenamento, ou um fluxo de eventos de um pontuador de anomalias de assinatura 130. Os eventos individuais podem incluir aqueles que se enquadram em janelas de tempo anteriores (por exemplo, aqueles que caem dentro de janelas de tempo anteriores (por exemplo, aqueles com estampas de tempo dentro dos últimos d dias), tal como os blocos de eventos 310a-h no exemplo ilustrado, e aqueles dentro de uma janela de tempo corrente (por exemplo, os últimos m minutos), tal como blocos de eventos 310g-n no exemplo ilustrado. Os eventos que estão fora da janela de tempo corrente incluem aqueles eventos que foram armazenados por mais tempo que as janelas de análise que não estão incluídos no segundo estado de organização 302 para análise adicional.
Petição 870190065143, de 11/07/2019, pág. 27/63
13/32 [0039] Um analista ou outro usuário administrativo ajusta quão longa a janela de análise é e quais propriedades devem ser utilizadas como escopos para o segundo estado de organização 302. Por exemplo, um identificador de dispositivo, tipo de dispositivo, ou usuário solicitante podem ser utilizados para separar os vários blocos de eventos 310 em diferentes blocos de escopos 330 para análise. Os vários blocos de eventos individuais 310 que estão designados para análise adicional (aqueles dentro da janela de análise de rolagem) estão dispostos dentro de blocos de escopos 330 com base na característica de escopo designada pelo arranjador de escopo 320.
[0040] Por exemplo, quando um escopo é definido para diferentes dispositivos, um primeiro bloco de escopos 330a pode corresponder a um primeiro dispositivo no serviço online 110, e incluir blocos de eventos 310 que estão associados com o primeiro dispositivo e foram designados para análise adicional (blocos de eventos 310a, 31 Od, e 31 Oe). Similarmente, o segundo bloco de escopos 330b e o enésimo bloco de escopos 330n corresponderíam a um segundo e enésimo dispositivo, respectivamente, do serviço online 110 e incluem blocos de eventos 310 que estão associados com segundo ou enésimo dispositivo e que foram designados para análise adicional (blocos de eventos 310b, 31 Oi, 31 Og e 31 Oh; e blocos de eventos 310c, 31 Of, e 310n), [0041] Dos blocos de eventos ilustrados 310, o bloco de eventos 31 Oj não está atribuído a qualquer dos blocos de escopos ilustrados 330. Em vários aspectos, um bloco de eventos 310 pode permanecer não atribuído a um bloco de escopos 330 quando este cai fora da janela de análise de rolagem, quando o bloco de eventos 310 tem falta de dados pelos quais os eventos são atribuídos a diferentes escopos (por exemplo, nenhum identificador de dispositivos está incluído no bloco de eventos 31 Oj), ou o escopo está configurado para excluir o tipo re
Petição 870190065143, de 11/07/2019, pág. 28/63
14/32 sultado de detecção do dado bloco de eventos dado 310 (por exemplo, o escopo está definido para incluir somente alguns comportamentos potenciais).
[0042] A Figura 4 ilustra detalhes do detector de múltiplos sinais 160. O detector de múltiplos sinais 160 recebe, em uma base de escopo por escopo (por exemplo, resultados de detecção pontuados em uma base por dispositivo, por usuário, ou por processo), grupos em escopo de um ou mais resultados de detecção pontuados. Um extrator de característica 410 recebe a coleção de resultados de detecção pontuados para o escopo a ser analisado, e está configurado para extrair várias características dos resultados de detecção pontuados para produzir um vetor de característica para utilização por um modelo preditivo 420 para determinar se um dado escopo está produzindo um comportamento malicioso.
[0043] O extrator de característica 410 está configurado para identificar características dos resultados de detecção pontuados, tal como, por exemplo: porta utilizada, endereço de IP conectado, identidade/tipo de dispositivo, identidade de usuário, identidade de processo, ação tomada, estampa de tempo, pontuação de anomalia, etc. As características são convertidas em valores numéricos (isto é, características) para utilização como um vetor de características para o modelo preditivo 420. O modelo preditivo 420 é um algoritmo treinado de acordo com uma técnica de aprendizado de máquina para um dado vetor de característica para prover uma pontuação de confiança de se o escopo do qual o vetor de característica foi extraído está exibindo comportamentos maliciosos.
[0044] O modelo preditivo 420 pode ser continuamente retreinado, de acordo com uma de uma variedade de técnicas aprendizado de máquina. Alguém versado na técnica será familiarizado com várias técnicas de aprendizado de máquina que podem ser empregadas em
Petição 870190065143, de 11/07/2019, pág. 29/63
15/32 conjunto com a descrição presente, as quais incluem uma seção supervisionada, semissupervisionada e não supervisionada. Em vários aspectos, uma pluralidade de modelos preditivos 420 pode estar disponível das quais o detector de múltiplos sinais 160 (ou um analista ou usuário administrativo) pode selecionar um ou mais para analisar dado escopo com base em sua precisão de acordo com um conjunto de dados de avaliação, áreas sob precisão e curvas de recuperação, ou outras métricas e para comparação com outros modelos preditivos 420. [0045] As pontuações de confiança produzidas pelo modelo preditivo 420 são armazenadas no cache de resultados de múltiplos sinais 170, para revisão por um analista ou usuário administrativo e/ou para propósitos de treinamento de modelo. Além disso, uma lógica de alerta é utilizada para determinar se um alerta relativo a um resultado de detecção deve ser transmitido para um analista ou usuário administrativo. Quando a pontuação de confiança produzida pelo modelo preditivo 420 satisfaz um limite de confiança que o vetor de característica para o dado escopo indica que o escopo está exibindo um comportamento malicioso, um gerador de alertas 180 será comunicado da determinação e detalhes necessários para gerar um alerta detalhando o comportamento malicioso.
[0046] A Figura 5 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar 500 para detectar escopos de hospedeiro comprometidos em um serviço online 110. O método 500 começa com a OPERAÇÃO 510, onde os resultados de detecção para eventos são recebidos. Os resultados de detecção são recebidos de acordo com uma lógica de detecção que identifica vários comportamentos no serviço online 110, e incluem informações providas em um ou mais sinais ou arquivos que incluem, mas não limitados a: traços de comunicação de rede, registros de erros, registros de eventos, comandos de sistema, e similares.
Petição 870190065143, de 11/07/2019, pág. 30/63
16/32 [0047] O método 500 prossegue para a operação 520, onde os resultados de detecção são pontuados de acordo com quão anômalos os comportamentos que estes representam estão dentro de uma janela de tempo de rolagem. Em vários aspectos, comportamentos de fora da janela de tempo de rolagem estão incluídos na pontuação de anomalia do evento de detecção para incluir comportamentos hipotéticos ou históricos (coletivamente referidos como comportamentos históricos) que são designados por um analista ou outro usuário administrativo para análise adicional.
[0048] Na OPERAÇÃO 530, os resultados de detecção pontuados são organizados por vários escopos. Os escopos incluem divisões dos resultados de detecção com base em uma ou mais características escolhidas por um analista ou outro usuário administrativo para dividir o serviço online 110 em partes componentes para analisar se as atividades maliciosas podem ser isoladas para uma dada parte. Escopos exemplares incluem mas não estão limitados a: dispositivos/hospedeiros individuais dentro do serviço online 110, contas de usuário e processos/aplicações. Os eventos que não caem dentro de um dado escopo e escopos que não têm um número de eventos que excede uma quantidade limite, podem ser excluídos de uma rodada de análise corrente.
[0049] Prosseguindo para a OPERAÇÃO 540, uma lógica de detecção de múltiplos sinais é aplicada nos resultados de detecção com pontuação e escopo para determinar uma confiança de se um dado escopo foi comprometido. Vários modelos de aprendizado de máquina treinados (os quais podem ser continuamente retreinados e atualizados com base em sinais de detecção que chegam) são utilizados para preditivamente determinar se um dado dispositivo (ou usuário ou processo) está se comportando maliciosamente com base nos resultados de detecção pontuados submetidos no escopo. Várias características
Petição 870190065143, de 11/07/2019, pág. 31/63
17/32 dos resultados de detecção providos no escopo são convertidas em características (representações numéricas das várias características) e são alimentadas em um modelo preditivo 420 para produzir uma pontuação de confiança quanto a se o comportamento é malicioso.
[0050] Na DECISÃO 550, a pontuação de confiança é comparada em relação a um limite de confiança quanto a se alertar um analista ou outro usuário administrativo para o comportamento malicioso. Em resposta à pontuação de confiança satisfazendo o limite de confiança, é determinado que o analista ou outro usuário administrativo deva ser alertado, e o método 500 prossegue para a OPERAÇÃO 560. De outro modo, em resposta à pontuação de confiança não satisfazendo o limite de confiança, o método 500 pode terminar, mas pode repetir da OPERAÇÃO 510 em resposta a receber um resultado de detecção subsequente.
[0051] Na OPERAÇÃO 560, um alerta é gerado e transmitido. Em vários aspectos, o alerta identifica o comportamento e o resultado de detecção que disparou o alerta assim como o escopo que foi analisado para disparar o alerta. Por exemplo, um alerta pode declarar que no tempo t, o usuário A concedeu ao usuário B permissões administrativas (comportamento) sobre o dispositivo C (escopo). Um alerta pode ser gerado e transmitido de acordo com uma pluralidade de formatos, incluindo, mas não limitado a: uma mensagem de aplicação (por exemplo, dentro de uma aplicação SIEM), email (para uma conta de email), uma mensagem de texto ou multimídia (para uma célula ou conta de Protocolo de Voz Sobre Internet (VOIP)), um pageamento (para um número de pageador), etc. O método 500 pode então terminar, mas pode repetir da OPERAÇÃO 510 em resposta a receber um resultado de detecção subsequente.
[0052] A Figura 6 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar 600 para pontuar resultados de de
Petição 870190065143, de 11/07/2019, pág. 32/63
18/32 tecção com base em anormalidade. O método 600 é um exemplo de subetapas da OPERAÇÃO 520 da Figura 5. O método 600 começa com a OPERAÇÃO 610, onde um identificador é computado para o resultado da detecção. Em vários aspectos, diferentes valores de campo do resultado de detecção (por exemplo, nome de dispositivo de fonte, endereço de IP de destino, usuário, tipo de ação, efeitos de ação, estampa de tempo) são utilizados para criar o identificador. O identificador pode utilizar os próprios valores de campo (com ou sem nomes de campo) ou um valor derivado dos um ou mais valores de campo, tal como um hash criptográfico dos valores de campo, como um identificador para o comportamento observado.
[0053] Na OPERAÇÃO 620, as contagens agregadas para o identificador são recuperadas do cache de agregados de sinal 140. As contagens de agregadas para a população de comportamentos observados e subpopulações específicas para o dado comportamento podem ser recuperadas com base em uma janela de tempo de rolagem, de modo que as contagens são baseadas em comportamentos que ocorreram dentro de um dado período de tempo do tempo corrente (por exemplo, dentro dos últimos d dias). Em alguns aspectos, comportamentos observados históricos definidos por um usuário analista são incluídos nas contagens de populações independentemente se estes foram observados na janela de tempo de rolagem.
[0054] O método 600 prossegue para a OPERAÇÃO 630, onde as contagens de agregadas são atualizadas no cache de agregados de sinal 140. Em vários aspectos, contagens para várias populações e subpopulações (por exemplo, comportamentos para o dispositivo A, usuário B, processo C e suas combinações) são incrementadas em resposta a observar um comportamento ou conjunto de comportamentos específico. Estas incrementações afetam a contagem agregada desde que o comportamento que resultou em incrementar a contagem
Petição 870190065143, de 11/07/2019, pág. 33/63
19/32 específica seja designado como parte da janela de análise de rolagem; os comportamentos envelhecerão e a contagem será decrementada consequentemente a menos que o comportamento seja designado para utilização como um comportamento histórico.
[0055] Na OPERAÇÃO 640 é calculada uma pontuação de anomalia para o resultado de detecção é calculada. Em vários aspectos, um analista ou usuário administrativo pode selecionar uma ou mais fórmulas (tal como a FÓRMULA 1, dada acima). Em vários aspectos, uma contagem bruta de todos os eventos observados no serviço online 110 dentro de uma dada janela de análise é provida como uma contagem de população, enquanto que em outros aspectos uma contagem de escopo dos eventos observados no serviço online 110 que se conformam com um escopo definido por analista do serviço online 110 está provida como uma contagem de população. Além disso, contagens de subpopulação para o número de observações prévias do comportamento que compartilham o identificador computado na OPERAÇÃO 610 são providas em relação à população bruta e às populações com escopo (se definido).
[0056] As pontuações de anomalias proveem uma representação do grau no qual um dado comportamento foi previamente observado. Em aspectos onde uma contagem de população (bruta ou com escopo) cai abaixo de um limite de uma população, um valor padrão para a pontuação de anomalia (por exemplo, 100% anômalo, 0% anômalo) pode ser atribuído com base em preferências de analista. Similarmente, quando uma contagem de subpopulação cai abaixo de um limite de subpopulação, um valor padrão para a pontuação de anomalia (por exemplo, 100% anômalo, 0% anômalo) pode ser atribuído ou o comportamento pode ser debatido para aguardar e permitir que a subpopulação potencialmente cresça antes de atribuir uma pontuação de população.
Petição 870190065143, de 11/07/2019, pág. 34/63
20/32 [0057] Uma ou mais destas pontuações de anomalias, contagens de população e contagens de subpopulação são persistidas como novos atributos dos resultados de detecção sobre os quais estes estão baseados, e são transmitidos para o detector de múltiplos sinais 160 na OPERAÇÃO 650. O método 600 pode concluir após a OPERAÇÃO 650, e pode repetir da OPERAÇÃO 610 em resposta a receber um resultado de detecção subsequente.
[0058] A Figura 7 é um fluxograma que mostra estágios gerais envolvidos em um método exemplar 700 para a detecção de múltiplos sinais de escopos comprometidos. O método 700 é um exemplo de subetapas da OPERAÇÃO 540 da Figura 5. O método 700 começa com a OPERAÇÃO 710, onde um ou mais modelos preditivos 420 são selecionados. Os modelos preditivos 420 são selecionados com base em um número de razões incluindo, mas não limitado a: conjuntos de características disponíveis para análise; uma precisão ou precisão preditiva comparada com outros modelos; um comportamento desejado para analisar; recursos de processamento disponíveis; se um modelo está sendo desenvolvido para produção, treinamento, ou avaliação; etc. Um ou mais modelo preditivos 420 podem ser selecionados de um dado escopo sendo analisado que corresponde a vários comportamentos que um analista ou outro usuário administrativo deseja procurar dentro do serviço online.
[0059] Na OPERAÇÃO 720, características são extraídas dos resultados de detecção pontuados que correspondem aos conjuntos de recursos dos modelos preditivos selecionados 420. Cada modelo preditivo 420 é treinado para reconhecer vários comportamentos no serviço on-line com base em características dos resultados de detecção, e pode ser associada com um dado vetor de característica que representa uma ou mais características em um formato numérico (por exemplo, como uma rede de números). Como as características po
Petição 870190065143, de 11/07/2019, pág. 35/63
21/32 dem incluir valores numéricos (por exemplo, pontuações de anomalia, contagem de população), valores de texto (por exemplo, nomes de usuário, nomes de ações, nomes de processos), e valores pseudonuméricos (por exemplo, um endereço IP, uma estampa de tempo), as características são pontuadas para conversão em características na OPERAÇÃO 730. Alguém versado na técnica será familiarizado com várias operações pelas quais converter valores não numéricos em valores numéricos para utilização como características. Em vários aspectos, uma operação de compressão ou formatação (por exemplo, uma função de compressão sigmoide) é aplicada nas conversões numéricas (e originalmente numéricas) das características para formatar o valor de característica para consumo pelo modelo preditivo 420.
[0060] Prosseguindo para a OPERAÇÃO 740, o modelo preditivo selecionado 420 é passado no vetor de característica para gerar uma pontuação de confiança quanto a se o(s) comportamento(s) dos resultados de detecção são maliciosos ou benignos. O modelo preditivo 420 é um algoritmo que aceita um ou mais vetores de característica (e, em alguns aspectos, as saídas de outros modelos preditivos 420) como entradas para produzir uma pontuação de confiança como uma saída. A pontuação de confiança é uma predição que indica um nível de certeza quanto a se um comportamento representado pelas entradas pode ser classificado como malicioso ou benigno. Em vários aspectos, o modelo preditivo 420 é desenvolvido sobre muitas épocas de um processo de aprendizado de máquina contínuo para predizer se um dado comportamento deve ser tratado como malicioso ou benigno, e pode adaptar suas predições com base em retorno recebido do analista ou outros usuários administrativos e outros modelos conforme o tempo progride sobre sucessivas fases de aprendizado.
[0061] Uma vez que a pontuação de confiança é gerada, esta é armazenado para transmissão ou utilização posterior na OPERAÇÃO
Petição 870190065143, de 11/07/2019, pág. 36/63
22/32
750. Por exemplo, a pontuação de confiança pode ser armazenada em um cache de resultados de múltiplos sinais 170 para utilização em um conjunto de treinamento para iterativamente aperfeiçoar os modelos preditivos 420 em uma próxima fase de aprendizagem de um processo de aprendizado de máquina. Em outro exemplo, a pontuação de confiança é armazenada para transmissão para um gerador de alertas 180, onde pode ser determinado se gerar um alerta para o comportamento observado com base na pontuação de confiança e lógica de alerta. O método 700 pode então concluir, e pode repetir da OPERAÇÃO 710 em resposta a receber outro escopo de resultados de detecção para analisar.
[0062] Apesar de implementações terem sido descritas no contexto geral de módulos de programa que executam em conjunto com um programa de aplicação que executa em um sistema de operação em um computador, aqueles versados na técnica reconhecerão que aspectos podem também ser implementados em combinação com outros módulos do programa. Geralmente, os módulos do programa incluem rotinas, programas, componentes, estruturas de dados, e outros tipos de estruturas que executam tarefas específicas ou implementam tipos de dados abstratos específicos.
[0063] Os aspectos e funcionalidades aqui descritos podem operar através de uma multiplicidade de sistemas de computação que incluem, sem limitação, sistemas de computador desktop, sistemas de computação com fio e sem fio, sistemas de computação móveis (por exemplo, telefones móveis, netbooks, computadores tipo tablet ou slate, computadores notebook, e computadores laptop), dispositivos portáteis, sistemas de multiprocessador, eletrônica de consumidor baseada em microprocessador ou programável, minicomputadores, e computadores mainframe.
[0064] Além disso, de acordo com um aspecto, os aspectos e fun
Petição 870190065143, de 11/07/2019, pág. 37/63
23/32 cionalidades aqui descritos operam sobre sistemas distribuídos (por exemplo, sistemas de computação baseados em nuvem), onde uma funcionalidade de aplicação, memória, armazenamento e recuperação de dados e várias funções de processamento são operadas remotamente umas das outras sobre uma rede de computação distribuída, tal como a Internet ou uma intranet. De acordo com um aspecto, interfaces do usuário e informações de vários tipos são exibidas através de displays de dispositivo de computação incorporados ou através de unidades de displays remotas associadas com um ou mais dispositivos de computação. Por exemplo, as interfaces do usuário e informações de vários tipos são exibidas e interagidas sobre uma superfície de parede sobre a qual as interfaces de usuário e as informações de vários tipos são projetadas. A interação com a multiplicidade de sistemas de computação com os quais as implementações são praticadas incluem entrada de tecla, entrada de tela de toque, entrada de voz ou outro áudio, entrada de gestos onde um dispositivo de computação associado está equipado com uma funcionalidade de detecção (por exemplo, câmera) para capturar e interpretar gestos de usuário para controlar a funcionalidade do dispositivo de computação, e similares.
[0065] As Figuras 8, 9A, e 9B e as descrições associadas proveem uma discussão de uma variedade de ambientes de operação nos quais exemplos são praticados. No entanto, os dispositivos e sistemas ilustrados e discutidos com relação às Figuras 8, 9A, e 9B são para propósitos de exemplo e ilustração e não são limitantes de um vasto número de configurações de dispositivo de computação que são utilizadas para praticar de aspectos aqui descritos.
[0066] A Figura 8 é um diagrama de blocos que ilustra os componentes físicos (isto é, hardware) de um dispositivo de computação 800 com o qual exemplos da presente descrição podem ser praticados. Em uma configuração básica, o dispositivo de computação 800 inclui pelo
Petição 870190065143, de 11/07/2019, pág. 38/63
24/32 menos uma unidade de processamento 802 e uma memória de sistema 804. De acordo com um aspecto, dependendo da configuração e tipo de dispositivo de computação, a memória de sistema 804 compreende, mas não está limitada a, armazenamento volátil (por exemplo, memória de acesso randômico), armazenamento não volátil (por exemplo, memória somente de leitura), memória instantânea, ou qualquer combinação de tais memórias. De acordo com um aspecto, a memória de sistema 804 inclui um sistema de operação 805 e um ou mais módulos de programa 806 adequados para executar aplicações de software 850. De acordo com um aspecto, a memória de sistema 804 inclui o detector de anomalias 190. O sistema de operação 805, por exemplo, é adequado para controlar a operação do dispositivo de computação 800. Mais ainda, aspectos são praticados em conjunto com uma biblioteca de gráficos, outros sistemas de operação, ou qualquer outro programa de aplicação, e não estão limitados a qualquer aplicação ou sistema específico. Esta configuração básica está ilustrada na Figura 8 por estes componentes dentro de uma linha tracejada 808. De acordo com um aspecto, o dispositivo de computação 800 tem características ou funcionalidades adicionais. Por exemplo, de acordo com um aspecto, o dispositivo de computação 800 inclui dispositivos de armazenamento de dados (adicionais removíveis e/ou não removíveis) tais como, por exemplo, discos magnéticos, discos óticos, ou fita. Tal armazenamento adicional está ilustrado na Figura 8 por um dispositivo de armazenamento removível 809 e um dispositivo de armazenamento não removível 810, [0067] Como declarado acima, de acordo com um aspecto, um número de módulos de programa e arquivos de dados são armazenados na memória de sistema 804. Enquanto executando na unidade de processamento 802, os módulos de programa 806 (por exemplo, detector de anomalias 190) executam processos que incluem, mas não
Petição 870190065143, de 11/07/2019, pág. 39/63
25/32 limitados a, um ou mais dos estágios dos métodos 500, 600, e 700 ilustrados nas Figuras 5, 6 e 7. De acordo com um aspecto, outros módulos do programa são utilizados de acordo com exemplos e incluem aplicações tais como aplicações de correio eletrônico e contatos, aplicações de processamento de palavra, aplicações de planilhas, aplicações de banco de dados, aplicações de apresentação de slides, programas de aplicações de desenho ou auxiliado por computador, etc.
[0068] De acordo com um aspecto, o dispositivo de computação 800 tem um ou mais dispositivo(s) de entrada 812 tal como um teclado, um mouse, uma caneta, um dispositivo de entrada de som, um dispositivo de entrada de toque, etc. O(s) dispositivo(s) de saída 814 tal como um display, alto-falantes, uma impressora, etc. estão também incluídos de acordo com um aspecto. Os dispositivos acima mencionados são exemplos e outros podem ser utilizados. De acordo com um aspecto, o dispositivo de computação 800 inclui uma ou mais conexões de comunicação 816 que permitem comunicações com outros dispositivos de computação 818. Exemplos de conexões de comunicação adequadas 816 incluem, mas não estão limitados a, transmissor de frequência de rádio (RF), receptor e/ou circuito de transceptor; barramento serial universal (USB), portas paralelas, e/ou seriais.
[0069] O termo meio legível por computador, como aqui utilizado, inclui um meio de armazenamento de computador. O meio de armazenamento de computador inclui um meio volátil e não volátil, removível e não removível implementado em qualquer método ou tecnologia para armazenamento de informações, tais como instruções legíveis por computador, estruturas de dados, ou módulos de programa. A memória de sistema 804, o dispositivo de armazenamento removível 809 e o dispositivo de armazenamento não removível 810 são todos exemplos de meio de armazenamento de computador (isto é, armazenamento de
Petição 870190065143, de 11/07/2019, pág. 40/63
26/32 memória). De acordo com um aspecto, o meio de armazenamento de computador inclui RAM, ROM , memória somente de leitura programável eletricamente apagável (EEPROM), memória instantânea ou outra tecnologia de memória, CD-ROM, discos versáteis digitais (DVD) ou outro armazenamento ótico, cassetes magnéticos, fita magnética, armazenamento de disco magnético ou outros dispositivos de armazenamento magnéticos, ou qualquer outro artigo de manufatura o qual pode ser utilizado para armazenar informações e o qual pode ser acessado pelo dispositivo de computação 800. De acordo com um aspecto, qualquer tal meio de armazenamento de computador faz parte do dispositivo de computação 800. O meio de armazenamento de computador não inclui uma onda portadora ou outro sinal de dados propagado.
[0070] De acordo com um aspecto, os meios de comunicação são incorporados por instruções legíveis por computador, estruturas de dados, módulos de programa, ou outros dados em um sinal de dados modulado, tal como uma onda portadora ou outro mecanismo de transporte, e incluem qualquer meio de fornecimento de informações. De acordo com um aspecto, o termo sinal de dados modulado descreve um sinal que tem uma ou mais características ajustadas ou mudadas de tal modo a codificar informações no sinal. Por meio de exemplo, e não limitação, os meios de comunicação incluem meios com fio tal como uma rede com fio ou conexão direta com fio, e meio sem fio tal como meios sem fio acústicos, de frequência de rádio (RF), infravermelhos e outros.
[0071] As Figuras 9A e 9B ilustram um dispositivo de computação móvel 900, por exemplo, um telefone móvel, um smartphone, um computador pessoal tablet, um computador laptop, e similares, com os quais aspectos podem ser praticados. Com referência à Figura 9A, um exemplo de um dispositivo de computação móvel 900 para implemen
Petição 870190065143, de 11/07/2019, pág. 41/63
27/32 tar os aspectos está ilustrado. Em uma configuração básica, o dispositivo de computação móvel 900 é um computador de portátil que tem tanto elementos de entrada quanto elementos de saída. O dispositivo de computação móvel 900 tipicamente inclui um display 905 e um ou mais botões de entrada 910 que permitem o usuário inserir informações no dispositivo de computação móvel 900, de acordo com um aspecto, o display 905 do dispositivo de computação móvel 900 funciona como um dispositivo de entrada (por exemplo, um display de tela sensível). Se incluído, um elemento de entrada lateral 915 é uma chave rotativa, um botão, ou qualquer outro tipo de elemento de entrada manual. Em exemplos alternativos, o dispositivo de computação móvel 900 incorpora mais ou menos elementos de entrada. Por exemplo, o display 905 pode não ser uma tela de toque em alguns exemplos. Em exemplos alternativos, o dispositivo de computação móvel 900 é um sistema de telefone portátil, tal como um telefone celular. De acordo com um aspecto, o dispositivo de computação móvel 900 inclui um teclado opcional 935. De acordo com um aspecto, o teclado opcional 935 é um teclado físico. De acordo com outro aspecto, o teclado opcional 935 é um teclado de software gerado sobre o display de tela de toque. Em vários aspectos, os elementos de saída incluem o display 905 para mostrar uma interface gráfica de usuário (GUI), um indicador visual 920 (por exemplo, um diodo de emissão de luz), e/ou um transdutor de áudio 925 (por exemplo, um alto-falante). Em alguns exemplos, o dispositivo de computação móvel 900 incorpora um transdutor de vibração para prover o usuário com um retorno táctil. Em ainda outro exemplo, o dispositivo de computação móvel 900 incorpora portas de entrada e/ou saída, tal como uma entrada de áudio (por exemplo, um conector de microfone), uma saída de áudio (por exemplo, um conector de fone de ouvido) e uma saída de vídeo (por exemplo, uma porta HDMI) para enviar sinais para e receber sinais de um dispositivo
Petição 870190065143, de 11/07/2019, pág. 42/63
28/32 externo. Em ainda outro exemplo, o dispositivo de computação móvel 900 incorpora uma porta de dispositivo periférico 940, tal como uma entrada de áudio (por exemplo, um conector de microfone), uma saída de áudio (por exemplo, um conector de fone de ouvido), e uma saída de vídeo (por exemplo, uma porta HDMI) para enviar sinais para ou receber sinais de um dispositivo externo.
[0072] A Figura 9B é um diagrama de blocos que ilustra a arquitetura de um exemplo de um dispositivo de computação móvel. Isto é, o dispositivo de computação móvel 900 incorpora um sistema (isto é, uma arquitetura) 902 para implementar alguns exemplos. Em um exemplo, o sistema 902 é implementado como um smartphone capaz de executar uma ou mais aplicações (por exemplo, navegador, email, calendário, gerenciadores de contatos, clientes de mensagens, jogos, e clientes/jogadores de mídia). Em alguns exemplos, o sistema 902 é integrado como um dispositivo de computação, tal como um assistente digital pessoal (PDA) e telefone sem fio integrados.
[0073] De acordo com um aspecto, um ou mais programas de aplicação 950 são carregados na memória 962 e executados no ou em associação com o sistema de operação 964. Exemplos de programas de aplicação incluem programas de discador de fone, programas de email, programas de gerenciamento de informações pessoais (PIM), programas de processamento de palavra, programas de planilhas, programas de navegador de Internet, programas de mensagens, e assim por diante. De acordo com um aspecto, o detector de anomalias 190 está carregado na memória 962. O sistema 902 também inclui uma área de armazenamento não volátil 968 dentro da memória 962. A área de armazenamento não volátil 968 é utilizada para armazenar informações persistentes que não devem ser perdidas se o sistema 902 for desligado. Os programas de aplicação 950 podem utilizar e armazenar informações na área de armazenamento não volátil 968, tal
Petição 870190065143, de 11/07/2019, pág. 43/63
29/32 como email ou outras mensagens utilizadas por uma aplicação de email e similares. Uma aplicação de sincronização (não mostrada) também reside no sistema 902 e é programada para interagir com uma aplicação de sincronização correspondente residente em um computador hospedeiro para manter as informações armazenadas na área de armazenamento não volátil 968 sincronizadas com informações correspondentes armazenadas no computador hospedeiro. Como deve ser apreciado, outras aplicações podem ser carregadas na memória 962 e executadas no dispositivo de computação móvel de 900.
[0074] De acordo com um aspecto, o sistema 902 tem uma fonte de alimentação 970, a qual é implementada como uma ou mais baterias. De acordo com um aspecto, a fonte de alimentação 970 ainda inclui uma fonte de energia externa, tal como um adaptador AC ou um berço de ancoragem alimentado que suplementa ou recarrega as baterias.
[0075] De acordo com um aspecto, o sistema 902 inclui um rádio 972 que executa a função de transmitir e receber comunicações de frequência de rádio. O rádio 972 facilita a conectividade sem fio entre o sistema 902 e o mundo exterior, através de uma portadora de comunicações ou provedor de serviço. As transmissões para e do rádio 972 são conduzidas sob o controle do sistema de operação 964. Em outras palavras, as comunicações recebidas pela rádio 972 podem ser disseminadas para os programas de aplicação 950 através do sistema de operação 964, e vice-versa.
[0076] De acordo com um aspecto, o indicador visual 920 é utilizado para prover notificações visuais e/ou uma interface de áudio 974 é utilizada para produzir notificações audíveis através do transdutor de áudio 925. No exemplo ilustrado, o indicador visual 920 é um diodo de emissão de luz (LED) e o transdutor de áudio 925 é um alto-falante. Estes dispositivos podem ser diretamente acoplados na fonte de ali
Petição 870190065143, de 11/07/2019, pág. 44/63
30/32 mentação 970, de modo que quando ativados, estes permanecem ligados por uma duração ditada pelo mecanismo de notificação mesmo que o processador 960 e outros componentes possam desligar para conservar energia da batería. O LED pode ser programado para permanecer ou indefinidamente até que o usuário execute uma ação para indicar o status ligado do dispositivo. A interface de áudio 974 é utilizada para prover sinais audíveis para e receber sinais audíveis do usuário. Por exemplo, além de ser acoplada no transdutor de áudio 925, a interface de áudio 974 pode também ser acoplada a um microfone para receber uma entrada audível, tal como para facilitar uma conversação de telefone. De acordo com um aspecto, o sistema 902 inclui ainda uma interface de vídeo 976 que permite uma operação de uma câmera incorporada 930 para gravar imagens paradas, fluxo de vídeo, e similares.
[0077] De acordo com um aspecto, um dispositivo de computação móvel 900 que implementa o sistema 902 tem características ou funcionalidades adicionais. Por exemplo, o dispositivo de computação móvel 900 inclui dispositivos de armazenamento de dados adicionais (removíveis e/ou não removíveis), tais como discos magnéticos, discos óticos, ou fita. Tal armazenamento adicional está ilustrado na Figura 9B pela área de armazenamento não volátil 968.
[0078] De acordo com um aspecto, os dados/informações gerados ou capturados pelo dispositivo de computação móvel 900 e armazenados através do sistema 902 são armazenados localmente no dispositivo de computação móvel 900, como acima descrito. De acordo com outro aspecto, os dados são armazenados em qualquer número de meios de armazenamento que são acessíveis pelo dispositivo através do rádio 972 ou através de uma conexão com fio entre o dispositivo de computação móvel 900 e um dispositivo de computação separado associado com o dispositivo de computação móvel 900, por exemplo, um
Petição 870190065143, de 11/07/2019, pág. 45/63
31/32 computador servidor em uma rede de computação distribuída, tal como a Internet. Como deve ser apreciado, tais dados/informações são acessíveis através do dispositivo de computação móvel 900 através do rádio 972 ou através de uma rede de computação distribuída. Similarmente, de acordo com um aspecto, tais dados/informações são prontamente transferidos entre dispositivos de computação para armazenamento e utilização de acordo com meios de transferência e armazenamento de dados/informações bem conhecidos, incluindo correio eletrônico e sistemas de compartilhamento de dados/informações colaborativos.
[0079] Implementações, por exemplo, estão acima descritas com referência a diagramas de blocos e/ou ilustrações operacionais de métodos, sistemas, e produtos de programa de computador de acordo com aspectos. As funções/atos notados nos blocos podem ocorrer fora da ordem como mostrada em qualquer fluxograma. Por exemplo, dois blocos mostrados em sucessão podem de fato ser executados substancialmente concorrentemente ou os blocos podem algumas vezes ser executados na ordem inversa, dependendo da funcionalidade/atos envolvidos.
[0080] A descrição e ilustração de um ou mais exemplos providos neste pedido não pretendem limitar ou restringir o escopo como reivindicado em qualquer modo. Os aspectos, exemplos e detalhes providos neste pedido são considerados suficientes para transmitir a possessão e permitir outros fazer e utilizar o melhor modo. As implementações não devem ser consideradas como limitadas em qualquer aspecto, exemplo ou detalhe provido neste pedido. Independentemente de se mostradas e descritas em combinação ou separadamente, as várias características (tanto estruturais quanto metodológicas) pretendem ser seletivamente incluídas ou omitidas para produzir um exemplo com um conjunto de características específico. Tendo sido provido com a des
Petição 870190065143, de 11/07/2019, pág. 46/63
32/32 crição e ilustração do presente pedido, alguém versado na técnica pode prever variações, modificações, e exemplos alternativos que caem dentro do espírito dos aspectos mais amplos do conceito inventivo geral incorporado neste pedido que não se afastam do escopo mais amplo.

Claims (15)

  1. REIVINDICAÇÕES
    1. Método para detectar escopos comprometidos em um serviço online, caracterizado pelo fato de compreender:
    receber resultados de detecção de comportamentos que ocorrem em dispositivos dentro do serviço online;
    pontuar os resultados de detecção com base em quão anômalos os comportamentos associados são dentro do serviço online;
    organizar os resultados de detecção pontuados de acordo com escopos;
    aplicar uma lógica de detecção de múltiplos sinais a um dado escopo para produzir uma pontuação de confiança que indica se o dado escopo está comprometido;
    determinar se apresentar um alerta do dado escopo sendo comprometido com base em comparação da pontuação de confiança para um limite de alerta; e em resposta a determinar que o alerta deve ser apresentado do dado escopo sendo comprometido, gerar e transmitir o alerta.
  2. 2. Método de acordo com a reivindicação 1, caracterizado pelo fato de que o dado escopo está associado com um dado dispositivo ou uma dada conta de usuário dentro do serviço online.
  3. 3. Método de acordo com a reivindicação 1, caracterizado pelo fato de que pontuar os resultados de detecção ainda compreende:
    computar um identificador para um dado resultado de detecção;
    recuperar uma contagem agregada para o dado resultado de detecção;
    incrementar as contagens de população agregadas para o dado resultado de detecção;
    Petição 870190065143, de 11/07/2019, pág. 48/63
    2/5 calcular uma pontuação de anomalia para o dado resultado de detecção com base nas contagens de população agregadas; e associar a pontuação de anomalia com o dado resultado de detecção para produzir um resultado de detecção pontuado.
  4. 4. Método de acordo com a reivindicação 3, caracterizado pelo fato de que as contagens de população agregadas incluem:
    uma contagem de população bruta, incrementada para cada resultado de detecção observado; e pelo menos uma contagem de subpopulação, incrementada para cada resultado de detecção observado que inclui uma característica que define uma subpopulação de resultados de detecção.
  5. 5. Método de acordo com a reivindicação 1, caracterizado pelo fato de que organizar os resultados de detecção pontuados de acordo com os escopos ainda compreende:
    receber uma definição de escopo que identifica uma característica pela qual dividir os resultados de detecção;
    receber uma janela de tempo do tempo corrente do qual os resultados de detecção devem ser analisados são observados; e dividir os resultados de detecção que foram observados dentro da janela de tempo nos escopos de acordo com valores da característica identificada incluídos nos resultados de detecção.
  6. 6. Método de acordo com a reivindicação 1, caracterizado pelo fato de que os resultados de detecção para uma menor janela de tempo, que compreende diversos minutos de resultados de detecção, e uma maior janela de tempo, que compreende diversos dias de resultados, são incluídos nos escopos.
  7. 7. Método de acordo com a reivindicação 1, caracterizado pelo fato de que aplicar a lógica de detecção de múltiplos sinais ao dado escopo para produzir a pontuação de confiança ainda compreende:
    Petição 870190065143, de 11/07/2019, pág. 49/63
    3/5 selecionar um modelo preditivo;
    extrair características dos resultados de detecção;
    pontuar as características para conversão em características numericamente avaliadas; e prover as características para o modelo preditivo para gerar a pontuação de confiança.
  8. 8. Método de acordo com a reivindicação 7, caracterizado pelo fato de que o modelo preditivo é gerado e selecionado com base em um processo de aprendizado de máquina contínuo.
  9. 9. Sistema que inclui um processador e um dispositivo de armazenamento de memória que armazena instruções que quando executadas pelo processador proveem para detectar escopos comprometidos em um serviço online, caracterizado pelo fato de compreender:
    um pontuador de anomalias de assinatura, configurado para:
    receber um dado resultado de detecção de um evento observado ocorrer no serviço online;
    determinar um grau no qual um comportamento associado com o dado resultado de detecção foi previamente observado como ocorrendo no serviço online; e produzir uma pontuação de anomalia a ser associada com o dado resultado de detecção com base no grau no qual o comportamento foi previamente observado; e um detector de múltiplos sinais em comunicação com o pontuador de anomalias de assinatura, configurado para:
    receber um ou mais resultados de detecção que compartilham um escopo no serviço online com o dado resultado de detecção;
    receber, do pontuador de anomalias de assinatura, a pontuação de anomalia associada com o resultado de detecção;
    Petição 870190065143, de 11/07/2019, pág. 50/63
    4/5 extrair características dos resultados de detecção do escopo, as características incluindo a pontuação de anomalia; e gerar uma pontuação de confiança com base nas características extraídas para se o escopo está comprometido.
  10. 10. Sistema de acordo com a reivindicação 9, caracterizado pelo fato de que os um ou mais resultados de detecção que compartilham o escopo no serviço online com o dado resultado de detecção são observados dentro de uma janela de tempo.
  11. 11. Sistema de acordo com a reivindicação 10, caracterizado pelo fato de que o grau no qual o comportamento associado com o dado resultado de detecção foi previamente observado como ocorrendo no serviço online está baseado em ocorrências durante a janela de tempo.
  12. 12. Sistema de acordo com a reivindicação 9, caracterizado pelo fato de que o grau no qual o comportamento associado com o dado resultado de detecção foi previamente observado como ocorrendo no serviço online está baseado em:
    uma contagem de população bruta de eventos que ocorrem no serviço online; e uma contagem de subpopulação bruta de um número de ocorrências do comportamento no serviço online.
  13. 13. Sistema de acordo com a reivindicação 9, caracterizado pelo fato de que o grau no qual o comportamento associado com o dado resultado de detecção foi previamente observado como ocorrendo no serviço online está baseado em:
    uma contagem de população com escopo de um número de entidades que compreendem um escopo do serviço online; e uma contagem de subpopulação com escopo de um número de entidades no escopo associado com o comportamento.
  14. 14. Sistema de acordo com a reivindicação 13, caracteriza
    Petição 870190065143, de 11/07/2019, pág. 51/63
    5/5 do pelo fato de que as entidades que compreendem o escopo são definidas por um analista como um dos dispositivos dentro do serviço online ou contagens de usuário do serviço online.
  15. 15. Dispositivo de armazenamento legível por computador que inclui instruções executáveis por processador para detectar escopos comprometidos em serviço online, caracterizado pelo fato de compreender:
    receber resultados de detecção de comportamentos que ocorrem em dispositivos dentro do serviço online;
    pontuar os resultados de detecção com base em quão anômalos os comportamentos associados são dentro do serviço online;
    organizar os resultados de detecção pontuados de acordo com escopos, em que um dado escopo está associado com um dado dispositivo ou uma dada conta de usuário dentro do serviço online;
    aplicar uma lógica de detecção de múltiplos sinais no dado escopo para produzir uma pontuação de confiança que indica se o dado escopo está comprometido;
    determinar se alertar um analista do dado escopo sendo comprometido com base em comparar a pontuação de confiança com um limite de alerta; e em resposta a determinar que o analista deve ser alertado do dado escopo sendo comprometido, gerar e transmitir um alerta.
BR112019014366-1A 2017-02-13 2018-02-12 Análise de múltiplos sinais para identificação de esco-po comprometido BR112019014366A2 (pt)

Applications Claiming Priority (3)

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

Publications (1)

Publication Number Publication Date
BR112019014366A2 true BR112019014366A2 (pt) 2020-02-27

Family

ID=61386917

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019014366-1A BR112019014366A2 (pt) 2017-02-13 2018-02-12 Análise de múltiplos sinais para identificação de esco-po comprometido

Country Status (18)

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

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
US11042713B1 (en) * 2018-06-28 2021-06-22 Narrative Scienc Inc. Applied artificial intelligence technology for using natural language processing 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
EP3963519A1 (en) 2019-04-29 2022-03-09 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
WO2022269786A1 (ja) * 2021-06-23 2022-12-29 日本電信電話株式会社 通信データ識別装置およびその方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE374493T1 (de) * 2002-03-29 2007-10-15 Global Dataguard Inc Adaptive verhaltensbezogene eindringdetektion
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
US8122122B1 (en) * 2005-11-08 2012-02-21 Raytheon Oakley Systems, Inc. Event monitoring and collection
US8490194B2 (en) * 2006-01-31 2013-07-16 Robert Moskovitch Method and system for detecting malicious behavioral patterns in a computer, using machine learning
US7739082B2 (en) * 2006-06-08 2010-06-15 Battelle Memorial Institute System and method for anomaly detection
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
EP2659367B1 (en) * 2010-12-30 2017-02-15 Ensighten, Inc. Online privacy management
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
CN105378790B (zh) * 2013-03-15 2020-06-12 索库里公司 使用社交联网数据的风险评估
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
US20150235152A1 (en) 2014-02-18 2015-08-20 Palo Alto Research Center Incorporated System and method for modeling behavior change and consistency to detect malicious insiders
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
EP3292500A1 (en) * 2015-05-05 2018-03-14 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

Also Published As

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

Similar Documents

Publication Publication Date Title
BR112019014366A2 (pt) Análise de múltiplos sinais para identificação de esco-po comprometido
US10356107B1 (en) Detecting anomalous behavior via user authentication graphs
EP3552363B1 (en) Near real-time detection of suspicious outbound traffic
EP3574430B1 (en) Continuous learning for intrusion detection
US20200320528A1 (en) Heartbeats and consensus in verifiable outsourced ledgers
CN110462606B (zh) 智能安全管理
US8595837B2 (en) Security event management apparatus, systems, and methods
US20170180404A1 (en) Efficient identification of log events in enterprise threat detection
US11943235B2 (en) Detecting suspicious user logins in private networks using machine learning
Hernández-Álvarez et al. SmartCAMPP-Smartphone-based continuous authentication leveraging motion sensors with privacy preservation
Kuppa et al. Finding rats in cats: Detecting stealthy attacks using group anomaly detection
EP4027276A1 (en) Anomaly detection based on an event tree
Aiello et al. Unsupervised learning and rule extraction for Domain Name Server tunneling detection
US11895130B2 (en) Proactive suspicious activity monitoring for a software application framework
Malek et al. User Behaviour based Intrusion Detection System Overview
Li Federated anomaly detection with Isolation Forest in the IoT network
Chandrashekar Foolproofing network communication by k-diverse padding

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]