RU2697958C1 - Система и способ обнаружения вредоносной активности на компьютерной системе - Google Patents

Система и способ обнаружения вредоносной активности на компьютерной системе Download PDF

Info

Publication number
RU2697958C1
RU2697958C1 RU2018123685A RU2018123685A RU2697958C1 RU 2697958 C1 RU2697958 C1 RU 2697958C1 RU 2018123685 A RU2018123685 A RU 2018123685A RU 2018123685 A RU2018123685 A RU 2018123685A RU 2697958 C1 RU2697958 C1 RU 2697958C1
Authority
RU
Russia
Prior art keywords
graph
objects
graphs
computer system
analysis
Prior art date
Application number
RU2018123685A
Other languages
English (en)
Inventor
Игорь Игоревич Суменков
Сергей Юрьевич Голованов
Original Assignee
Акционерное общество "Лаборатория Касперского"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Акционерное общество "Лаборатория Касперского" filed Critical Акционерное общество "Лаборатория Касперского"
Priority to RU2018123685A priority Critical patent/RU2697958C1/ru
Priority to US16/146,142 priority patent/US11163881B2/en
Priority to EP18206739.7A priority patent/EP3588348A1/en
Priority to JP2018227133A priority patent/JP7264631B2/ja
Priority to CN201910082307.3A priority patent/CN109948335B/zh
Application granted granted Critical
Publication of RU2697958C1 publication Critical patent/RU2697958C1/ru
Priority to US17/451,761 priority patent/US12039047B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

Изобретение относится к средствам обнаружения вредоносной активности на компьютерной системе. Технический результат заключается в повышении вероятности обнаружения вредоносной активности. Собирают информацию об объектах компьютерной системы (далее объекты). Определяют связи между объектами на основании анализа собранной информации, при этом каждой связи ставится в соответствие степень достоверности связи. Формируют по меньшей мере два графа на основании определенных связей таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты, а в качестве ребер - определенные на предыдущем этапе связи. Формируют итоговый граф на основании сформированных графов таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графов и одно ребро, соединяющее упомянутые вершины. Выбирают из базы графов по меньшей мере один граф, степень схожести которого с сформированным итоговым графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых поставлен в соответствие коэффициент вредоносной активности. Выносят решение об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа сформированного и выбранного графов. 2 н. и 14 з.п. ф-лы, 4 ил.

Description

Область техники
Изобретение относится к технологиям обеспечения информационной безопасности, а более конкретно к системам и способам обнаружения вредоносной активности на компьютерной системе.
Уровень техники
Бурное развитие компьютерных технологий в последнее десятилетие, а также широкое распространение разнообразных вычислительных устройств (персональных компьютеров, ноутбуков, планшетов, смартфонов и т.д.) стали мощным стимулом для использования упомянутых устройств в разнообразных сферах деятельности и для огромного количества задач (от интернет-серфинга до банковских переводов и ведения электронного документооборота). Параллельно с ростом количества вычислительных устройств и объемом программного обеспечения, работающего на этих устройствах, быстрыми темпами росло и количество вредоносных программ.
В настоящий момент существует огромное количество разновидностей вредоносных программ. Одни крадут с устройств пользователей их персональные и конфиденциальные данные (например, логины и пароли, банковские реквизиты, электронные документы). Другие формируют из устройств пользователей так называемые бот-сети (англ. botnet) для таких атак, как отказ в обслуживании (англ. DDoS - Distributed Denial of Service) или для перебора паролей методом грубой силы (англ. bruteforce) на другие компьютеры или компьютерные сети. Третьи предлагают пользователям платный контент через навязчивую рекламу, платные подписки, отправку CMC на платные номера и т.д.
С описанными выше угрозами хорошо справляются специальные программы - антивирусы. Однако в некоторых ситуациях упомянутые антивирусы практически бесполезны, например при целевых кибератаках на компьютерные системы (англ. APT - advanced persistent threat), а также, когда при заражении компьютерных систем упомянутые антивирусы на этих компьютерных системах не функционировали (например, не были установлены или отключены).
В этом случае для установления факта заражения компьютерной системы приходится выполнять ресурсоемкий анализ состояния компьютерной системы, анализировать журналы поведения компьютерной системы, передаваемые и получаемые по компьютерной сети данные, действия пользователей и т.д. Зачастую описанные мероприятия приходится выполнять вручную, что хотя и увеличивает их эффективность, значительно повышает трудозатраты.
В публикации US 8225041 B2 описана технология управление историей производительности компьютерной системы. С этой целью производится анализ характеристик работы элементов компьютерной системы (запоминающие устройства, серверы управления, виртуализации хранения и т.д.) на основании которой строятся связи между данными на упомянутой компьютерной системе. На основании построенных связей восстанавливается история производительности компьютерной системы и предоставляется возможность управления упомянутой компьютерной системой и историей производительности.
Описанные выше технологии хорошо справляются с задачами восстановления и связывания разрозненных данных, собираемых на компьютерных системах, однако они не справляются с задачами анализа состояния компьютерной системы на основании выявленных связей упомянутых данных, на основании которых впоследствии можно определять, в каком состоянии находилась анализируемая компьютерная система в тот или иной момент времени или в тот или иной момент выполнения действий на компьютерной системе.
Настоящее изобретение позволяет решать задачу обнаружения вредоносной активности на компьютерной системе более эффективно.
Раскрытие изобретения
Изобретение предназначено для обеспечения информационной безопасности данных.
Технический результат настоящего изобретения заключается в обнаружения вредоносной активности на компьютерной системе на основании анализа связей между объектами упомянутой компьютерной системы.
Данные результаты достигаются с помощью использования системы обнаружения вредоносной активности на компьютерной системе, которая содержит: средство сбора, предназначенное для: сбора информации об объектах компьютерной системы (далее, «объекты»); определения связи между объектами на основании анализа собранной информации; передачи информации о собранных объектах и определенных связях средству формирования графов; средство формирования графов, предназначенное для: формирования по меньшей мере двух графов на основании информации о полученных связях между объектами таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты, а в качестве ребер - определенные средством сбора связи; формирования итогового графа на основании сформированных графов таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графа и одно ребро соединяющее упомянутые вершины; передачи сформированного итогового графа средству поиска и средству анализа; средство поиска, предназначенное для: выборки из базы графов по меньшей мере одного графа, степень схожести которого с полученным графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых поставлен в соответствие коэффициент вредоносной активности; передачи выбранного графа средству анализа; средство анализа, предназначенное для вынесения решения об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа графов, полученных от средства формирования графов и средства поиска.
В другом частном случае реализации системы в качестве объектов выступают по меньшей мере: файлы; сетевые пакеты; сайты; страницы оперативной памяти, как физической, так и виртуальной; процессы и связанные с ними объекты операционной системы; события операционной системы; записи в журналах операционной системы или приложений; записи в MFT; записи в реестре операционной системы.
Еще в одном частном случае реализации системы в которой информация об объекте представляет собой данные, по меньшей мере: однозначно характеризующие упомянутый объект; на основании которых возможно сформировать вывод о наличии связи между упомянутым объектом и другим объектом.
В другом частном случае реализации системы связь между двумя объектами устанавливается при выполнении условия, при котором по меньшей мере: первый объект обрабатывает данные, предоставляемые вторым объектом; первый объект использует второй объект; первый и второй объекты используются третьим объектом; упомянутые объекты имеют по меньшей мере один одинаковый характеризующий их параметр.
Еще в одном частном случае реализации системы средство сбора дополнительно при определении связи между объектами ставит ей в соответствие степень достоверности связи, а передача информации о собранных объектах и определенных связях средству формирования графов производится только в случае, если степень достоверности определенной связи между собранными объектами превышает заранее заданное пороговое значение.
В другом частном случае реализации системы оптимизируют сформированный итоговый граф с целью уменьшения связей между объектами.
Еще в одном частном случае реализации системы решение об обнаружении вредоносной активности на компьютерной системе выносится на основании анализа коэффициента вредоносности по меньшей мере одного графа, найденного в базе графов, и степени схожести упомянутого графа со сформированным графом.
В другом частном случае реализации системы на основании анализа сформированного графа определяют объект, являющийся источником вредоносной активности на компьютерной системе.
Данные результаты достигаются с помощью использования способа обнаружения вредоносной активности на компьютерной системе, при этом способ реализуется с помощью средств из системы по по. 1 и содержит этапы, на которых: собирают информацию об объектах компьютерной системы (далее, «объекты»); определяют связи между объектами на основании анализа собранной информации, при этом каждой связи ставится в соответствие степень достоверности связи; формируют по меньшей мере два графа на основании определенных связей таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты, а в качестве ребер - определенные на предыдущем этапе связи; формируют итоговый граф на основании сформированных графов таким образом, таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графа и одно ребро соединяющее упомянутые вершины; выбирают из базы графов по меньшей мере один граф, степень схожести которого с сформированным итоговым графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых поставлен в соответствие коэффициент вредоносной активности; выносят решение об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа сформированного и выбранного графов.
В другом частном случае реализации способа в качестве объектов выступают по меньшей мере: файлы; сетевые пакеты; сайты; страницы оперативной памяти, как физической, так и виртуальной; процессы и связанные с ними объекты операционной системы; события операционной системы; записи в журналах операционной системы или приложений; записи в MFT; записи в реестре операционной системы.
Еще в одном частном случае реализации способа информация об объекте представляет собой данные, по меньшей мере: однозначно характеризующие упомянутый объект; на основании которых возможно сформировать вывод о наличии связи между упомянутым объектом и другим объектом.
В другом частном случае реализации способа связь между двумя объектами устанавливается при выполнении условия, при котором по меньшей мере: первый объект обрабатывает данные, предоставляемые вторым объектом; первый объект использует второй объект; первый и второй объекты используются третьим объектом; упомянутые объекты имеют по меньшей мере один одинаковый характеризующий их параметр.
Еще в одном частном случае реализации способа на предыдущем этапе определенной связи ставится в соответствие степень достоверности связи, а формирования графов производится только на основании связей, степень достоверности которых между собранными объектами превышает заранее заданное пороговое значение.
В другом частном случае реализации способа оптимизируют сформированный итоговый граф с целью уменьшения связей между объектами.
Еще в одном частном случае реализации способа решение об обнаружении вредоносной активности на компьютерной системе выносится на основании анализа коэффициента вредоносности по меньшей мере одного графа, найденного в базе графов, и степени схожести упомянутого графа со сформированным графом.
В другом частном случае реализации способа на основании анализа сформированного графа определяют объект, являющийся источником вредоносной активности на компьютерной системе.
Краткое описание чертежей
Фиг. 1 представляет пример структурную схему системы обнаружения вредоносной активности на компьютерной системе.
Фиг. 2 представляет пример структурной схемы способа обнаружения вредоносной активности на компьютерной системе.
Фиг. 3 представляет пример схемы формирования графа на основании анализа связей между объектами компьютерной системы.
Фиг. 4 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
Введем ряд определений и понятий, которые будут использоваться при описании вариантов осуществления изобретения.
Функциональная связь - тип отношения (связи) между объектами при котором изменения каждого из объектов сопутствуют друг другу. При функциональной связи отсутствуют главные признаки причинно-следственной связи - производительность (объекты не производят друг друга), асимметричность во времени (они сосуществуют, одно из них не предшествует другому), необратимость.
Фиг. 1 представляет пример структурную схему системы обнаружения вредоносной активности на компьютерной системе.
Структурная схема системы обнаружения вредоносной активности на компьютерной системе содержит средство сбора 110, объекты компьютерной системы 111, обученную модель выбора 112, средство формирования графов 120, базу графов 131, средство поиска 130, средство анализа 140, решение 141, средство переобучения 150.
Средство сбора 110 предназначено для:
- сбора информации об объектах компьютерной системы 111 (далее, «информация об объектах» и «объекты» соответственно);
- определения связи между объектами 111 на основании анализа собранной информации, при этом каждой связи ставится в соответствие степень достоверности связи;
- передачи информации о собранных объектах 111 и определенных связях средству формирования графов 120.
Например, сбор информации об объектах компьютерной системы может осуществляться с помощью установленного в компьютерной системе специализированного драйвера, обеспечивающего перехват данных, передаваемых между процессами, по сети и т.д.
В одном из вариантов реализации системы в качестве объектов 111 выступают по меньшей мере:
- файлы;
- сетевые пакеты;
- сайты;
- страницы оперативной памяти, как физической, так и виртуальной;
- процессы и связанные с ними объекты операционной системы;
- события операционной системы;
- записи в журналах операционной системы или приложений,
- записи в MFT (англ. master file table - главная файловая таблица),
- записи в реестре операционной системы.
Например, сайт в качестве объекта 111 может представлять собой адрес, к примеру «http://google.com» или «http://files.downloads.com/chrome.exe».
Еще в одном примере журнал операционной системы «system.evtx» содержит следующую запись 111:
Figure 00000001
Figure 00000002
содержащая совокупность пар «ключ» - «значение», описывающих системное событие.
Еще в одном из вариантов реализации системы информация об объектах 111 представляет собой данные, по меньшей мере:
- однозначно характеризующие упомянутый объект 111,
- на основании которых возможно сформировать вывод о наличии связи между упомянутым объектом 111 и другим объектом 111.
Еще в одном из вариантов реализации системы в качестве информации об объектах 111 выступают по меньшей мере:
- информация о файлах:
Figure 00000003
имя файла,
Figure 00000003
путь к файлу,
Figure 00000003
размер файла;
- информация о процессах:
Figure 00000003
идентификатор процесса,
Figure 00000003
идентификаторы родительского и дочерних процессов;
Figure 00000003
имя приложения, породившего процесс;
- информация о сетевых пакетах:
Figure 00000003
адрес получения или передачи сетевого пакета,
Figure 00000003
размер сетевого пакета,
Figure 00000003
тип, размер и свертка данных, содержащихся в сетевом пакете,
Figure 00000003
имя приложения, получающего или передающего сетевой пакет;
- страницы оперативной памяти:
Figure 00000003
тип, размер, флаги страниц оперативной памяти,
Figure 00000003
размер, позиция, тип и свертка данных в страницах оперативной памяти,
Figure 00000003
идентификаторы процессов и имена приложений, работающих с данными на заданных страницах оперативной памяти;
- записи в журналах операционной системы:
Figure 00000003
ключ - значение, где в качестве ключа выступает название параметра, а в качестве значения - его значение.
Например, в реестре операционной системы (который можно рассматривать как один из журналов операционной системы) может быть следующая запись:
Figure 00000004
В качестве ключа в указанном примере выступает название поля «ImagePath», в качестве значения ключа - пара значений «тип поля» - «REG_EXPAND_SZ%», «значение поля» - <<systemroot%\KtknjRrl.exe».
Еще в одном из вариантов реализации системы связь между объектами 111 представляет собой логическую или функциональную связь (например, в виде бинарного отношения) между упомянутым объектами 111, при этом логическая связь может возникать, когда два объекта 111 используются совместно, при том, что друг с другом они могут быть не связаны (например, сетевой пакет и событие операционной системы «запись файла на диск»), функциональная связь может возникать, когда один объект 111 используются для анализа другого объекта 111 (например, сайты и сетевые пакеты).
Еще в одном из вариантов реализации системы связь между двумя объектами 111 устанавливается при выполнении условия, при котором по меньшей мере:
- первый объект обрабатывает данные, предоставляемые вторым объектом;
например, использование технологии межпроцессного взаимодействие (англ. inter-process communication, IPC), в одном из случаев которого первый процесс считывает данные из памяти второго процесса;
- первый объект использует второй объект;
например, использование программой для своей работы dll-библиотеки;
- первый и второй объекты используются третьим объектом;
например, использование программой в своей работе двух независимых dll-библиотек (т.е. dll-библиотек, функции одной из которых не используют функции другой);
- упомянутые объекты имеют по меньшей мере один одинаковый характеризующий их параметр;
например, в качестве параметра может выступать имя файла.
Более подробно описанный выше пример выглядит следующим образом: при создании сервиса выполняются:
- запись файла «KtknjRrl.exe» на жесткий диск, информация о записывается в MFT:
Figure 00000005
- запись в журнал событий данных о выполненной операции:
Figure 00000006
Figure 00000007
- запись в реестр данных о созданном сервиса:
Figure 00000008
Все три записи объединяет имя файла <<KtknjRrl.exe>>, выступающий в качестве общего параметра для MFT, журнала событий и реестра.
Еще в одном примере с помощью браузера «chrome.exe» пользователь с сайта «http://files.com» загрузил архив «drivers.zip» из которого с помощью приложения «WinZip» затем выделил файл «driver.sys». В этом случае будет установлено, что файл «driver.sys» напрямую связан с файлом «drivers.zip» и косвенно с браузером «chrome.exe». В качестве объектов 111 в приведенном примере выступают объект #1: браузер «chrome.exe», объект #2: архив «drivers.zip», объект #3: файл «driver.sys», объект #4: сайт «http://files.com».
Вообще в описанном выше примере могут быть выделены следующие связи:
Figure 00000009
Figure 00000010
Еще в одном примере демонстрации связей между объектами 111 разнообразные службы операционной системы Windows записывают данные о свой работе в журнал операционной системы «system.evtx» в формате «[id записи] [время] [процесс] [событие] [параметры]». К примеру журнал содержит следующие записи:
Figure 00000011
В таком случае будет установлено, что процесс «hsayy.exe» связан с процессом «explorer.exe», поскольку было выполнено заранее заданное условие, связывающее два разных объекта 111 - с разницей в 30 секунд был записан и считан файл один и тот же файл «data.dat».
Еще в одном из вариантов реализации системы степень достоверности связи между двумя объектами 111 представляет собой численное значение, характеризующее вероятность того, что один из упомянутых объектов 111 имеет логическую или функциональную связь с другим их упомянутых объектов 111.
Например, степень достоверности связи может быть действительным численным значением в диапазоне от 0.0 до 1.0, где значение 0.0 означает, что объекты 111 однозначно не связаны друг с другом, а 1.0 - что связь между упомянутыми объектами 111 гарантированно присутствует.
Таким образом в случае, если степень достоверности связи между объектами 111 не максимально возможная (например, 1.0 из описанного выше примере), то определение связи между объектами 111 носит вероятностный характер и зачастую связь определяется не строго, а на основании накопленного опыта, статистических данных о связи между упомянутыми объектами 111.
Например, то что два объекта 111, созданные с разницей в 0.1 секунды, являются связанными друг с другом (например, были созданы при установке программного обеспечения) является хотя и предположением, но с высокой степенью достоверности из-за огромного объема накопленных статистических данных по работе операционной системы и установке разнообразного программного обеспечения.
Еще в одном из вариантов реализации системы передача информации о собранных объектах 111 и определенных связях средству формирования графов 120 производится только в случае, если степень достоверности определенной связи между собранными объектами 111 превышает заранее заданное пороговое значение.
Еще в одном из вариантов реализации системы выбор объектов 111, по которым средство сбора 110 собирает информацию и между которыми определяет связи, осуществляется с использованием обученной модели выбора 112. Обученная модель выбора 112 формируется предварительно с использованием методов машинного обучения, известных из уровня техники, на основании обучающей выборке, включающей компьютерные системы, поведение которых заранее известно (вредоносное или безопасное), таким образом, чтобы количество выбираемых объектов 111 стремилось к минимальному, а решение, выносимое при этом средством анализа 140 на основании анализа информации об упомянутых объектах 111 и связей между ними, стремилось к максимально точному. Такой подход позволяет сократить использование вычислительных ресурсов (памяти, процессорного времени и т.д.) для определения вредоносной активности на компьютерной системе и при этом сохранить точность выносимого решения.
Поскольку в дальнейшей для определения вредоносной активности на компьютерной системе используются как сами объекты 111 (информация об объектах), так и связи между объектами 111, то удобно представлять множество выделенных объектов 111 и множество определенных связей между выделенными объектами 111 в качестве элементов графа - математического объекта, для работы с которым разработана широкая и многофункциональная теория (теория графов), а анализ сводить к решению абстрактных математических задач.
Граф - абстрактный математический объект, представляющий собой множество вершин графа и набор ребер, то есть соединений между парами вершин. Например, за множество вершин может быть взято множество объектов 111, а за множество ребер могут быть взято множество логических и функциональных связей между выделенными объектами 111.
Для разных областей применения виды графов могут различаться направленностью, ограничениями на количество связей и дополнительными данными о вершинах или ребрах. Многие структуры, представляющие практический интерес в математике и информатике, могут быть представлены графами. Например, компьютерная система может быть смоделирована при помощи ориентированного графа, в котором как упоминалось выше вершины - это объекты 111 (описываемые, совокупностью параметров, представляющих собой информацию об объектах 111), а дуги (ориентированные ребра) - логические и функциональные связи между упомянутыми объектами 111. Кроме того, каждой вершине (связи) может быть поставлен свой вес (степень достоверности связи) и сформирован взвешенный ориентированный граф.
Графы являются основным объектом изучения теории графов.
Средство формирования графов 120 предназначено для:
- формирования по меньшей мере двух графов на основании информации о полученных связях таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты 111, а в качестве ребер - определенные связи;
- формирования итогового графа на основании сформированных графов таким образом, таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графа и одно ребро соединяющее упомянутые вершины;
- передачи сформированного итогового графа средству поиска и средству анализа 130.
Например, если компьютерная система может представлять собой распределенную систему клиентов, то в этом случае на основании собранных объектов 111 с каждого клиента и определенных связей между упомянутыми объектами 111 формируются свои графы для каждого из клиентов.
В одном из вариантов реализации системы оптимизируют сформированный итоговый граф с целью уменьшения количества ребер графов (т.е. связей между объектами 111).
Например, при оптимизации графа из графа исключаются по меньшей мере:
- вершины с заранее заданными свойствами (например, объекты заданных типов, обладающие заданными параметрами),
- ребра с заранее заданными свойствами (например, связи между объектами по времени создания объектов),
- дублирующие ребра.
Еще в одном варианте реализации системы минимизируют количество пересечений ребер итогового графа, где количество пересечений ребер графа (число пересечений графа) - наименьшее число элементов в представлении данного графа как графа пересечений конечных множеств, или, эквивалентно, наименьшее число клик, необходимых для покрытия всех ребер графа).
Еще в одном из вариантов из вариантов системы средство формирования графов 120 предназначено для:
- формирования графа на основании информации о полученных связях, где качестве вершин графа выступают объекты 111, а в качестве ребер - определенные связи, таким образом, чтобы:
Figure 00000003
диаметр графа был менее заранее заданного параметра;
Figure 00000003
содержал по меньшей мере по одной вершине из первого и второго графа и одно ребро соединяющее упомянутые вершины;
- передачи сформированного графа средству поиска и средству анализа 130.
Еще в одном из вариантов реализации системы средство формирования графов 120 на основании нескольких (по меньшей мере трех) графов формирует несколько, но при этом менее, чем упомянутых графов (по меньшей мере два) итоговых графа.
Например, при анализе компьютерной системы, представляющей собой распределенную систему (к примеру, персональные компьютеры, объединенные в локальную сеть) для каждого компьютера (по сути самостоятельного элемента компьютерной системы) формируют по нескольку графов. Затем, на основании сформированных для каждого компьютера графов формируют по одному итоговому графу и передают всю совокупность сформированных итоговых графов средству поиска 130.
В еще одном примере, в случае, если компьютерная система представляет собой распределенную систему, граф строится на основании информации об объектах 111 упомянутой компьютерной системы, включающей имена пользователей и их IP адреса, содержащейся в записях журналах операционной системы «security.evtx». В итоге, к примеру, получаются следующая цепочка действий (направленный граф):
пользователь #1 создал файл на компьютере #1 → …
… → пользователь #1 прошел авторизацию с компьютера #2 → …
… → на компьютере #2 пользователь #1 имперсонализировался из пользователя #2 → …
… → пользователь #2 прошел авторизацию с компьютера #3 и т.д.
Средство поиска 130 предназначено для:
- выборки из базы графов 131 по меньшей мере одного графа, степень схожести которого с полученным графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых на основании анализа упомянутой активности поставлен в соответствие коэффициент вредоносной активности;
- передачи выбранного графа средству анализа 140.
В одном из вариантов реализации системы база графов 131 пополняется заранее графами, сформированными на основании объектов 111, выбранных из компьютерных систем, вредоносная активность которых известна. При этом упомянутые графы формируются с использованием описанных выше средства сбора 110 и средства формирования графов 120.
Еще в одном из вариантов реализации системы база графов 131 пополняется графами, сформированными на основании объектов 111, выбранных из компьютерных систем, входящих в обучающую выборку, на основании которой производилось машинное обучение модели выбора 112.
Еще в одном из вариантов реализации системы в базе графов 131 хранятся не сами сформированные описанными выше способами графы, а их свертки. При этом средство поиска 130 дополнительно на основании графа, полученного от средства формирования графов 120, вычисляет его свертку, а поиск в базе графов 131 производит на основании сравнения свертки вычисленной свертки графа с хранящимися в базе свертками графов.
Еще в одном из вариантов реализации системы в качестве свертки графа используется гибких хэш (англ. fuzzy hash).
Еще в одном из вариантов реализации системы определяется степень изоморфизма графов, на основании которой определяется степень схожести упомянутых графов.
Средство анализа 140 предназначено для вынесения решения 141 об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа графов, полученных от средства формирования графов 120 и средства поиска 130.
В одном из вариантов реализации системы решение об обнаружении вредоносной активности на компьютерной системе выносится на основании анализа коэффициента вредоносности по меньшей мере одного графа, найденного в базе графов, и степени схожести упомянутого графа со сформированным графом.
Например, итоговая степень вредоносности анализируемой компьютерной системы может вычисляться по формуле
Figure 00000012
где
w - коэффициент вредоносности анализируемой компьютерной системы,
wj - коэффициент вредоносности j-ого графа, выбранного из базы графов 131,
c{i,j} - степень схожести i-ого сформированного графа и j-ого графа, выбранного из базы графов 131,
N - количество сформированных графов для анализируемой компьютерной системы,
М - количество графов, выбранных из базы графов 131.
Еще в одном примере коэффициент вредоносности w анализируемой компьютерной системы может находиться в диапазоне от 0,0 (на компьютерной системе не было вредоносной активности) до 1,0 (на компьютерной системе вредоносная активность была). При этом, если упомянутый коэффициент вредоносности wm превышает заранее заданное значение (к примеру, 0,75) выносится решение о том, что на анализируемой компьютерной системе обнаружена вредоносная активность.
Еще в одном из вариантов реализации системы на основании анализа сформированного графа определяют объект 111, являющийся источником вредоносной активности на компьютерной системе.
Средство переобучения 150 предназначено для переобучения модели выбора 112 на основании вынесенного средством анализа 140 решения 141, таким образом, чтобы при повторном анализе той же компьютерной системы на вредоносность для формирования графов средством формирования графов 120 на основании анализа объектов 111, выбранных средством сбора 110, по меньшей мере:
- количество выбираемых объектов 111 стремилось к минимальному, а решение, выносимое при этом средством анализа 140 на основании анализа информации об упомянутых объектах 111 и связей между ними, стремилось к максимально точному;
- использование вычислительных ресурсов для формирования графов средством формирования графов 120 было меньше, чем при использовании объектов 111, выбранных при использовании непереобученной модели.
Рассмотрим работу системы обнаружения вредоносной активности на компьютерной системе на следующем примере:
Пользователь последовательно выполнил следующие действия:
- подключился к удаленному компьютеру с вводом пароля,
- создал новый сервис;
что в свою очередь стало причиной следующих изменений в упомянутой компьютерной системе:
- создание сервиса модифицирует реестр,
- сервис запускает Powershell,
- Powershell создает файл.
Средство сбора 110 собирает информацию об объектах компьютерной системы 111:
- объект # 1 - запись в журнале,
- объект #2 - запись в журнале,
- объект #3 - ключ в реестре,
- объект #4 - запись в журнале,
- объект #5 - создание файлы на файловой системе.
Средство формирования графов 120 на основании собранных объектов 111 строит связи на основании следующих данных:
объект # 1 (запись в журнале) → [связь по имени пользователя] → ….
… → объект #2 (запись в журнале) → [связь по имени сервиса] → …
… → объект #3 (ключ в реестре) → [связь по имени файлы в ключе реестра] → …
… → объект #4 (запись в журнале) → [связь по имени файла в журнале] → …
… → объект #5 (создание файлы на файловой системе)
Фиг. 2 представляет пример структурной схемы способа обнаружения вредоносной активности на компьютерной системе.
Структурная схема способа обнаружения вредоносной активности на компьютерной системе содержит этап 210, на котором собирают информацию об объектах компьютерной системы, этап 220, на котором определяют связи между объектами, этап 230, на котором формируют графы, этап 240, на котором формируют итоговый граф, этап 250, на котором выбирают графы, этап 260, на котором выносят решение о вредоносной активности, этап 270, на котором переобучают модель выбора.
На этапе 210 собирают информацию об объектах компьютерной системы 111.
В частном случае реализации способа выбор объектов 111 для которых собирается информация осуществляется с использованием обученной модели выбора 112.
На этапе 220 определяют связи между объектами 111 на основании анализа собранной информации, при этом каждой связи ставится в соответствие степень достоверности связи.
В одном из частных случаев реализации способа объекты 111, степень достоверности связи между которыми ниже заранее заданного порогового значения, из дальнейшего анализа компьютерной системы на вредоносность исключаются.
Таким образом достигается уменьшение используемых для анализа компьютерной системы на вредоносность вычислительных ресурсов.
На этапе 230 формируют по меньшей мере два графа на основании определенных связей (в том числе, с использованием установленной степени достоверности связи) таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты 111, а в качестве ребер - определенные связи.
На этапе 240 формируют итоговый граф на основании сформированных графов таким образом, таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графа и одно ребро соединяющее упомянутые вершины.
На этапе 250 выбирают из базы графов 131 по меньшей мере один граф, степень схожести которого с сформированным итоговым графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых на основании анализа упомянутой активности поставлен в соответствие коэффициент вредоносной активности.
В одном из вариантов реализации способа выставление коэффициентов вредоносной активности осуществляется любым известным из уровня техники способом, в том числе на основании анализа упомянутого графа аналитиком.
На этапе 260 выносят решение об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа сформированного и выбранного графов.
На этапе 270 переобучают модель выбора 112 на основании вынесенного на этапе 260 решения 141, таким образом, чтобы при повторном анализе той же компьютерной системы на вредоносность для формирования графов на этапе 230 на основании анализа объектов 111, выбранных на этапе 210, по меньшей мере:
- количество выбираемых объектов 111 стремилось к минимальному, а решение, выносимое при на этапе 260 на основании анализа информации об упомянутых объектах 111 и связей между ними, стремилось к максимально точному;
- использование вычислительных ресурсов для формирования графов на этапе 230 было меньше, чем при использовании объектов 111, выбранных при использовании непереобученной модели.
Фиг. 3 представляет пример схемы формирования графа на основании анализа связей между объектами компьютерной системы.
Схеме формирования графа на основании анализа связей между объектами компьютерной системы 111 содержит сформированные исходные графы 310 и 320, объединенный граф 330, оптимизированный граф 340, при этом каждый граф в качестве вершин графов выступают объекты компьютерной системы 301, 302, 303.
При этом объекты 301 могут рассматриваться как разные объекты (для удобства они все объединены под единым индексом, по сути являясь различными), а объекты 302 и 303 являются одинаковыми.
Исходные графы 310 и 320 формируются на основании анализа собранных объектов 301, 320, 303 и выявленных связей между ними.
На Фиг. 3 сплошными линиями обозначаются функциональные связи между объектами 111, пунктирными линиями - логические связи, стрелками - связывающий и связываемый объекты (т.е. стрелка отходит от объекта 111, породившего связь к объекту 111, ставшему связанным с упомянутым объектом 111). Например, если из архива будет выделен файл, то стрелкой будет показана функциональная связь от архива к выделенному файлу.
Например, с помощью средства сбора 110 собираются информацию об объектах компьютерной системы 111, при этом компьютерная система может состоять из нескольких независимых компонент (к примеру, клиента и сервера) и упомянутые объекты 111, собранные с разных независимых компонент, могут также считаться независимыми. Таким образом будет сформировано несколько исходных графов.
Еще в одном примере компьютерная система является унитарной (содержит лишь один независимый компонент), поэтому все собранные объекты 111 могут считаться зависимыми, тем не менее они также могут быть разделены на несколько относительно независимых (с малым количеством связей) групп, для которых будет построено несколько (для каждой группы свой) исходных графов.
Например, на компьютерной системе работает вредоносная программа, позволяющая осуществлять удаленное управление упомянутой компьютерной системой (англ. backdoor) - получая команды от «хозяина», упомянутая вредоносная программа может выполнять те или иные вредоносные или несанкционированные действия. Можно рассмотреть частный случай, когда вредоносная программа получила две разные команды «зашифровать документы» и «получить пароли». Оба действия будут независимыми и могут быть выполнены разными модулями вредоносной программы. При анализе такой компьютерной системы будет построено 2 независимых графа, в одном из которых по большей части объектами 111 станут файлы (документы), а во второй - записи в журналах операционной системы. Тем не менее связь между двумя графами можно будет отследить по сетевой активности (которая отразится также в журналах операционной системы), источнику активности (модулям вредоносной программы), времени начала активности, сетевым пакетам и т.д.
Средство формирования графов 120 формирует исходные графы 310, 320 таким образом, чтобы они содержали (в качестве вершин) по меньшей мере два одинаковых или схожих объекта 111 (схожие объекты - объекты, у которых по меньшей мере по одному параметру отличается друг от друга на величину, не больше заданной). Например, исходный граф 310 содержит два одинаковых объекта 303.
Объединенный граф 330 формируется на основании сформированных ранее исходных графов 310 и 320.
Средство формирования графов 120 формирует объединенный граф 330 таким образом, чтобы в него входили все одинаковые или схожие объекты 111, присутствующие во всех исходных графах, на основании который формируется объединенный граф 330. Например, объединенный граф 330 содержит все объекты 302, 303, присутствующие в исходных графах 310, 320.
Объединенный граф 330 может считаться итоговым графом, на основании которого средство поиска 130 будет производить последующий анализ упомянутого графа. Тем не менее, для того, чтобы система обнаружения вредоносной активности на компьютерной системы была менее требовательной к компьютерным ресурсам (место в базе графов, вычислительные ресурсы для формирования, поиска и анализа графов и т.д.) средство формирования графов 120 производит оптимизацию объединенного графа 330 и формирует оптимизированный граф 340.
Оптимизированный граф 340 формируется на основании сформированного ранее объединенного графа 330.
Средство формирования графов 120 формирует оптимизированный граф 340 таким образом, чтобы в него входили все одинаковые или схожие объекты 111, присутствующие во всех исходных графах, и объединенном графе. Например, оптимизированный граф 340 содержит все объекты 302, 303, присутствующие в исходных графах 310, 320 и объединенном графе 330.
При этом все несвязанные с упомянутыми объектами 111 объекты и связи (вершины и ребра) могут быть удалены из оптимизированного графа 340 (отмечены как незакрашенные круги 301).
Таким образом после оптимизации кроме упомянутых объектов 302, 303 могут быть выявлены объекты 304, между которыми установлена связь, не определяемая ранее, на этапе формирования исходных графов 310, 320.
Оптимизированный граф 340 является уже более компактным, чем объединенный граф 330, поэтому последующие работы с использованием оптимизированного графа более оптимальны.
Фиг. 4 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 4. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.

Claims (64)

1. Система обнаружения вредоносной активности на компьютерной системе, которая содержит:
а) средство сбора, предназначенное для
сбора информации об объектах компьютерной системы (далее, «объекты»);
определения связи между объектами на основании анализа собранной информации;
передачи информации о собранных объектах и определенных связях средству формирования графов;
б) средство формирования графов, предназначенное для
формирования по меньшей мере двух графов на основании информации о полученных связях между объектами таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты, а в качестве ребер - определенные средством сбора связи;
формирования итогового графа на основании сформированных графов таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графов и одно ребро, соединяющее упомянутые вершины;
передачи сформированного итогового графа средству поиска и средству анализа;
в) средство поиска, предназначенное для
выборки из базы графов по меньшей мере одного графа, степень схожести которого с полученным графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых поставлен в соответствие коэффициент вредоносной активности;
передачи выбранного графа средству анализа;
г) средство анализа, предназначенное для вынесения решения об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа графов, полученных от средства формирования графов и средства поиска.
2. Система по п. 1, в которой в качестве объектов выступают, по меньшей мере:
• файлы;
• сетевые пакеты;
• сайты;
• страницы оперативной памяти, как физической, так и виртуальной;
• процессы и связанные с ними объекты операционной системы;
• события операционной системы;
• записи в журналах операционной системы или приложений;
• записи в MFT;
• записи в реестре операционной системы.
3. Система по п. 1, в которой информация об объекте представляет собой данные, по меньшей мере:
• однозначно характеризующие упомянутый объект;
• на основании которых возможно сформировать вывод о наличии связи между упомянутым объектом и другим объектом.
4. Система по п. 1, в которой связь между двумя объектами устанавливается при выполнении условия, при котором по меньшей мере:
• первый объект обрабатывает данные, предоставляемые вторым объектом;
• первый объект использует второй объект;
• первый и второй объекты используются третьим объектом;
• упомянутые объекты имеют по меньшей мере один одинаковый характеризующий их параметр.
5. Система по п. 1, в которой средство сбора дополнительно при определении связи между объектами ставит ей в соответствие степень достоверности связи, а передача информации о собранных объектах и определенных связях средству формирования графов производится только в случае, если степень достоверности определенной связи между собранными объектами превышает заранее заданное пороговое значение.
6. Система по п. 1, в которой оптимизируют сформированный итоговый граф с целью уменьшения связей между объектами.
7. Система по п. 1, в которой решение об обнаружении вредоносной активности на компьютерной системе выносится на основании анализа коэффициента вредоносности по меньшей мере одного графа, найденного в базе графов, и степени схожести упомянутого графа со сформированным графом.
8. Система по п. 1, в которой на основании анализа сформированного графа определяют объект, являющийся источником вредоносной активности на компьютерной системе.
9. Способ обнаружения вредоносной активности на компьютерной системе, при этом способ реализуется с помощью средств из системы по п. 1 и содержит этапы, на которых:
а) собирают информацию об объектах компьютерной системы (далее, «объекты»);
б) определяют связи между объектами на основании анализа собранной информации, при этом каждой связи ставится в соответствие степень достоверности связи;
в) формируют по меньшей мере два графа на основании определенных связей таким образом, чтобы диаметр графа был менее заранее заданного параметра, при этом в качестве вершин графа выступают объекты, а в качестве ребер - определенные на предыдущем этапе связи;
г) формируют итоговый граф на основании сформированных графов таким образом, чтобы итоговый граф содержал по меньшей мере по одной вершине из первого и второго графов и одно ребро, соединяющее упомянутые вершины;
д) выбирают из базы графов по меньшей мере один граф, степень схожести которого с сформированным итоговым графом превышает заранее заданный уровень, при этом в базе графов хранятся заранее сформированные графы активности компьютерной системы, каждому из которых поставлен в соответствие коэффициент вредоносной активности;
е) выносят решение об обнаружении вредоносной активности на компьютерной системе на основании результатов анализа сформированного и выбранного графов.
10. Способ по п. 9, по которому в качестве объектов выступают, по меньшей мере:
• файлы;
• сетевые пакеты;
• сайты;
• страницы оперативной памяти, как физической, так и виртуальной;
• процессы и связанные с ними объекты операционной системы;
• события операционной системы;
• записи в журналах операционной системы или приложений;
• записи в MFT;
• записи в реестре операционной системы.
11. Способ по п. 9, по которому информация об объекте представляет собой данные, по меньшей мере:
• однозначно характеризующие упомянутый объект;
• на основании которых возможно сформировать вывод о наличии связи между упомянутым объектом и другим объектом.
12. Способ по п. 9, по которому связь между двумя объектами устанавливается при выполнении условия, при котором по меньшей мере:
• первый объект обрабатывает данные, предоставляемые вторым объектом;
• первый объект использует второй объект;
• первый и второй объекты используются третьим объектом;
• упомянутые объекты имеют по меньшей мере один одинаковый характеризующий их параметр.
13. Способ по п. 9, по которому на этапе б) определенной связи ставится в соответствие степень достоверности связи, а формирования графов производится только на основании связей, степень достоверности которых между собранными объектами превышает заранее заданное пороговое значение.
14. Способ по п. 9, по которому оптимизируют сформированный итоговый граф с целью уменьшения связей между объектами.
15. Способ по п. 9, по которому решение об обнаружении вредоносной активности на компьютерной системе выносится на основании анализа коэффициента вредоносности по меньшей мере одного графа, найденного в базе графов, и степени схожести упомянутого графа со сформированным графом.
16. Способ по п. 9, по которому на основании анализа сформированного графа определяют объект, являющийся источником вредоносной активности на компьютерной системе.
RU2018123685A 2018-06-29 2018-06-29 Система и способ обнаружения вредоносной активности на компьютерной системе RU2697958C1 (ru)

Priority Applications (6)

Application Number Priority Date Filing Date Title
RU2018123685A RU2697958C1 (ru) 2018-06-29 2018-06-29 Система и способ обнаружения вредоносной активности на компьютерной системе
US16/146,142 US11163881B2 (en) 2018-06-29 2018-09-28 Systems and methods for detecting malicious activity in a computer system
EP18206739.7A EP3588348A1 (en) 2018-06-29 2018-11-16 Systems and methods for detecting malicious activity in a computer system
JP2018227133A JP7264631B2 (ja) 2018-06-29 2018-12-04 コンピュータシステムにおける不正行為を検出するためのシステム及び方法
CN201910082307.3A CN109948335B (zh) 2018-06-29 2019-01-28 用于检测计算机系统中的恶意活动的系统和方法
US17/451,761 US12039047B2 (en) 2018-06-29 2021-10-21 Detecting malicious activity in a computer system using computer system objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2018123685A RU2697958C1 (ru) 2018-06-29 2018-06-29 Система и способ обнаружения вредоносной активности на компьютерной системе

Publications (1)

Publication Number Publication Date
RU2697958C1 true RU2697958C1 (ru) 2019-08-21

Family

ID=67733833

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018123685A RU2697958C1 (ru) 2018-06-29 2018-06-29 Система и способ обнаружения вредоносной активности на компьютерной системе

Country Status (3)

Country Link
US (1) US11163881B2 (ru)
JP (1) JP7264631B2 (ru)
RU (1) RU2697958C1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2799117C1 (ru) * 2022-11-30 2023-07-04 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система предотвращения получения несанкционированного доступа к объектам корпоративной сети
WO2024117925A1 (ru) * 2022-11-30 2024-06-06 Публичное Акционерное Общество "Сбербанк России" Предотвращение получения несанкционированного доступа к корпоративной сети

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11588832B2 (en) * 2019-08-02 2023-02-21 Crowdstrike, Inc. Malicious incident visualization
CN111124675B (zh) * 2019-12-11 2023-06-20 华中科技大学 一种面向图计算的异构存内计算设备及其运行方法
US11503047B2 (en) 2020-03-13 2022-11-15 International Business Machines Corporation Relationship-based conversion of cyber threat data into a narrative-like format
US20210286879A1 (en) * 2020-03-13 2021-09-16 International Business Machines Corporation Displaying Cyber Threat Data in a Narrative

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU91213U1 (ru) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" Система автоматического составления описания и кластеризации различных, в том числе и вредоносных, объектов
US20120110263A1 (en) * 2007-10-31 2012-05-03 Kazuhisa Fujita Management method of performance history and a management system of performance history
US8931092B2 (en) * 2012-08-23 2015-01-06 Raytheon Bbn Technologies Corp. System and method for computer inspection of information objects for shared malware components
RU2654151C1 (ru) * 2017-08-10 2018-05-16 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005157650A (ja) 2003-11-25 2005-06-16 Matsushita Electric Ind Co Ltd 不正アクセス検知システム
JP2006155124A (ja) 2004-11-29 2006-06-15 Savant:Kk 監視プログラム、これを記憶したコンピュータ読み取り可能な記録媒体、並びに前記監視プログラムが格納されたサーバ及び監視装置
JP5324824B2 (ja) 2008-05-27 2013-10-23 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワーク・ノードを分類する情報処理装置、情報処理システム、情報処理方法およびプログラム
JP5613000B2 (ja) 2010-10-08 2014-10-22 Kddi株式会社 アプリケーション特性解析装置およびプログラム
US8799190B2 (en) 2011-06-17 2014-08-05 Microsoft Corporation Graph-based malware classification based on file relationships
CN104303153B (zh) 2012-03-22 2017-06-13 洛斯阿拉莫斯国家安全股份有限公司 用于异常子图检测、异常/更改检测和网络态势感知的路径扫描
US9413773B2 (en) 2013-03-14 2016-08-09 Cybereason Inc. Method and apparatus for classifying and combining computer attack information
JP6219621B2 (ja) 2013-07-02 2017-10-25 セコム株式会社 通信照合装置
US9148441B1 (en) 2013-12-23 2015-09-29 Symantec Corporation Systems and methods for adjusting suspiciousness scores in event-correlation graphs
US9886581B2 (en) 2014-02-25 2018-02-06 Accenture Global Solutions Limited Automated intelligence graph construction and countermeasure deployment
US9225730B1 (en) 2014-03-19 2015-12-29 Amazon Technologies, Inc. Graph based detection of anomalous activity
WO2015140842A1 (ja) 2014-03-20 2015-09-24 日本電気株式会社 システムを監視する情報処理装置及び監視方法
US20160057159A1 (en) * 2014-08-22 2016-02-25 Syracuse University Semantics-aware android malware classification
US9736173B2 (en) 2014-10-10 2017-08-15 Nec Corporation Differential dependency tracking for attack forensics
US9621579B2 (en) 2014-11-21 2017-04-11 Symantec Corporation Systems and methods for protecting against unauthorized network intrusions
JP6285390B2 (ja) 2015-04-22 2018-02-28 株式会社日立製作所 サイバー攻撃分析装置及びサイバー攻撃分析方法
US9740862B1 (en) * 2015-06-29 2017-08-22 Juniper Networks, Inc. Identifying malware based on a relationship between a downloader file and a downloaded file
US10757114B2 (en) * 2015-09-17 2020-08-25 Harman International Industries, Incorporated Systems and methods for detection of malicious activity in vehicle data communication networks
US9967265B1 (en) 2015-09-29 2018-05-08 EMC IP Holding Company LLC Detecting malicious online activities using event stream processing over a graph database
US10015192B1 (en) 2015-11-06 2018-07-03 Cisco Technology, Inc. Sample selection for data analysis for use in malware detection
US10460033B2 (en) * 2015-11-11 2019-10-29 Adobe Inc. Structured knowledge modeling, extraction and localization from images
JP6582922B2 (ja) 2015-11-26 2019-10-02 富士通株式会社 グラフ処理プログラム、グラフ処理方法、および情報処理装置
US10572537B2 (en) * 2016-04-13 2020-02-25 International Business Machines Corporation Efficient graph optimization
US9967267B2 (en) 2016-04-15 2018-05-08 Sophos Limited Forensic analysis of computing activity
US9928366B2 (en) * 2016-04-15 2018-03-27 Sophos Limited Endpoint malware detection using an event graph
US10313365B2 (en) 2016-08-15 2019-06-04 International Business Machines Corporation Cognitive offense analysis using enriched graphs
US20180069937A1 (en) 2016-09-02 2018-03-08 VeriHelp, Inc. Event correlation and association using a graph database
US10523691B2 (en) 2017-01-06 2019-12-31 Cisco Technology, Inc. Graph prioritization for improving precision of threat propagation algorithms
KR101764674B1 (ko) 2017-01-06 2017-08-03 한국인터넷진흥원 침해 자원에 대한 그래프 데이터베이스 생성 방법 및 그 장치
US10572658B2 (en) 2017-01-23 2020-02-25 Paypal, Inc. Identifying computer behavior using visual data organization and graphs
US10205735B2 (en) 2017-01-30 2019-02-12 Splunk Inc. Graph-based network security threat detection across time and entities
US10839098B2 (en) * 2017-04-07 2020-11-17 International Business Machines Corporation System to prevent export of sensitive data
US10841333B2 (en) * 2018-01-08 2020-11-17 Sophos Limited Malware detection using machine learning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120110263A1 (en) * 2007-10-31 2012-05-03 Kazuhisa Fujita Management method of performance history and a management system of performance history
RU91213U1 (ru) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" Система автоматического составления описания и кластеризации различных, в том числе и вредоносных, объектов
US8931092B2 (en) * 2012-08-23 2015-01-06 Raytheon Bbn Technologies Corp. System and method for computer inspection of information objects for shared malware components
RU2654151C1 (ru) * 2017-08-10 2018-05-16 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2799117C1 (ru) * 2022-11-30 2023-07-04 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система предотвращения получения несанкционированного доступа к объектам корпоративной сети
WO2024117925A1 (ru) * 2022-11-30 2024-06-06 Публичное Акционерное Общество "Сбербанк России" Предотвращение получения несанкционированного доступа к корпоративной сети
RU2805277C1 (ru) * 2023-01-16 2023-10-13 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система выявления аномального взаимодействия узлов информационно-вычислительной сети

Also Published As

Publication number Publication date
JP7264631B2 (ja) 2023-04-25
US11163881B2 (en) 2021-11-02
US20200004964A1 (en) 2020-01-02
US20220035917A1 (en) 2022-02-03
JP2020013532A (ja) 2020-01-23

Similar Documents

Publication Publication Date Title
RU2697958C1 (ru) Система и способ обнаружения вредоносной активности на компьютерной системе
RU2724710C1 (ru) Система и способ классификации объектов вычислительной системы
RU2679785C1 (ru) Система и способ классификации объектов
US10878090B2 (en) System and method of detecting malicious files using a trained machine learning model
RU2444056C1 (ru) Система и способ ускорения решения проблем за счет накопления статистической информации
US11880455B2 (en) Selecting a detection model for detection of a malicious file
RU2659737C1 (ru) Система и способ управления вычислительными ресурсами для обнаружения вредоносных файлов
US10929534B2 (en) System and method detecting malicious files using machine learning
RU2654151C1 (ru) Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов
CN109948335B (zh) 用于检测计算机系统中的恶意活动的系统和方法
JP2012527691A (ja) アプリケーションレベルセキュリティのためのシステムおよび方法
RU2724800C1 (ru) Система и способ обнаружения источника вредоносной активности на компьютерной системе
RU2673708C1 (ru) Система и способ машинного обучения модели обнаружения вредоносных файлов
TWI617939B (zh) 攻擊節點偵測裝置、方法及其電腦程式產品
RU2587424C1 (ru) Способ контроля приложений
RU2702081C2 (ru) Система и способ обнаружения модификации веб-ресурса
US12039047B2 (en) Detecting malicious activity in a computer system using computer system objects
RU2776926C1 (ru) Способ изменения правила обнаружения вредоносного кода
EP3674943A1 (en) System and method of detecting a source of malicious activity in a computer system