RU2770570C2 - Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы - Google Patents
Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы Download PDFInfo
- Publication number
- RU2770570C2 RU2770570C2 RU2020128090A RU2020128090A RU2770570C2 RU 2770570 C2 RU2770570 C2 RU 2770570C2 RU 2020128090 A RU2020128090 A RU 2020128090A RU 2020128090 A RU2020128090 A RU 2020128090A RU 2770570 C2 RU2770570 C2 RU 2770570C2
- Authority
- RU
- Russia
- Prior art keywords
- file
- files
- machine learning
- learning model
- suspicious process
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 158
- 230000008569 process Effects 0.000 title claims abstract description 120
- 238000010801 machine learning Methods 0.000 claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 25
- 230000004048 modification Effects 0.000 claims abstract description 9
- 238000012986 modification Methods 0.000 claims abstract description 9
- 230000008859 change Effects 0.000 claims description 32
- 238000012549 training Methods 0.000 claims description 27
- 238000012360 testing method Methods 0.000 claims description 18
- 238000013528 artificial neural network Methods 0.000 claims description 12
- 238000010200 validation analysis Methods 0.000 claims description 12
- 238000003066 decision tree Methods 0.000 claims description 10
- 238000012417 linear regression Methods 0.000 claims description 10
- 238000007477 logistic regression Methods 0.000 claims description 10
- 238000007637 random forest analysis Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 238000012706 support-vector machine Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 4
- 239000000126 substance Substances 0.000 abstract 1
- 230000002155 anti-virotic effect Effects 0.000 description 12
- 238000001514 detection method Methods 0.000 description 9
- 238000013459 approach Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 4
- 230000002265 prevention Effects 0.000 description 4
- 241000700605 Viruses Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001012 protector Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/565—Static detection by checking file integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/568—Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
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)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Изобретение относится к области вычислительной техники. Технический результат заключается в улучшении уровня защиты файлов компьютерной системы от шифровальщиков, а также в снижении ошибок первого и второго рода при определении подозрительного процесса, связанного с шифровальщиком. Раскрыт способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы (далее - шифровальщик), реализованный на процессоре компьютерной системы, содержащий инструкции, согласно которым: а) определяют с использованием средства обработки по меньшей мере один файл, в который была произведена запись данных (далее - изменение) подозрительным процессом на основании обработки системных вызовов, используемых подозрительным процессом; б) определяют с использованием средства обработки характеристики каждого упомянутого файла; в) определяют класс изменения каждого упомянутого файла с использованием средства анализа путем применения обученной первой модели машинного обучения, получающей в качестве входных данных упомянутые характеристики файла; г) с использованием средства анализа определяют подозрительный процесс как связанный с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла. 2 н. и 23 з.п. ф-лы, 8 ил.
Description
Область техники
Изобретение относится к области информационной безопасности.
Уровень техники
Бурное развитие компьютерных технологий в последние годы, а также широкое распространение разнообразных вычислительных устройств (персональных компьютеров, ноутбуков, планшетов, смартфонов и т.д.) стали мощным стимулом для использования этих устройств в разнообразных сферах деятельности и для огромного количества задач (от обработки и хранения личных фотографий до банковских переводов и ведения электронного документооборота). Одновременно с ростом количества вычислительных устройств и программного обеспечения (сокр. ПО), работающего на этих устройствах, быстрыми темпами росло и количество вредоносного ПО.
В настоящий момент существует множество разновидностей вредоносного ПО, и подавляющее большинство предназначено для принесения прибыли своим создателям. Один тип вредоносного ПО выполняет кражу с устройств пользователей их персональных и конфиденциальных данных (например, логинов и паролей, банковских реквизитов, электронных документов и т.д.). Другой тип вредоносного ПО формирует из устройств пользователей так называемые бот-сети (англ. botnet) для атак на другие компьютеры, компьютерные сети или веб-ресурсы (например, атака типа «отказ в обслуживании» или атака методом «грубой силы»). Третий тип вредоносного ПО предлагает пользователям платный контент через навязчивую рекламу, платные подписки, отправку CMC на платные номера и т.д.
Одной из разновидностей вредоносного ПО являются вредоносные программы для вымогания (англ. ransomware). После проникновения на устройства пользователей они нарушают их работоспособность (например, блокируя устройства ввода, повреждая данные, ограничивая доступ к элементам интерфейса и т.д.). При этом жертве обычно предлагается заплатить за восстановление доступа к файлам, но даже после этого злоумышленники не всегда возвращают данные или управление устройством законному владельцу. Наиболее опасными из программ-вымогателей является вредоносное программное обеспечение, шифрующее файлы (шифровальщики). Их вредоносная деятельность заключается в повреждении данных, представляющих ценность для пользователей (например, баз данных, документов Microsoft Office, фотографий, видеороликов и т.п.). Повреждение данных происходит посредством их шифрования, переименования или сокрытия содержащих указанные данные файлов.
Поскольку не только конфиденциальность данных, но и их целостность зачастую представляют большую ценность, защита данных является важной задачей. В качестве способов борьбы с описанной выше угрозой можно выделить своевременное выявление вредоносного приложения на устройстве пользователя с его последующей деактивацией, что позволяет защитить данные от несанкционированной модификации, а также регулярное создание резервных копий данных, что позволяет даже в случае несанкционированной модификации данных произвести их восстановление.
Появление новых видов шифровальщиков требует регулярного написания новых сигнатур для их обнаружения. На это тратится большое количество различных ресурсов, при этом в ряде случаев шифровальщики расшифровывают себя после запуска, используя уникальные распаковщики, тем самым усложняя сигнатурное детектирование.
Поведенческое детектирование демонстрирует более гибкий подход, так как способно отслеживать характерные черты распространения шифровальщиков и обнаруживать появление или изменение большого количества файлов.
Во-первых, особенность шифровальщиков в том, что они делают недоступными многие или даже все файлы заданных типов (изображения, финансовые документы и т.д.) на жестком диске. К тому моменту, когда подобное поведение будет обнаружено, часть данных будет зашифрована. Для предотвращения работы шифровальщиков может быть использовано резервное копирование затронутых файлов, что требует дополнительных затрат ресурсов, замедляя работу легитимного ПО.
Во-вторых, существует ряд программ, поведение которых тоже имеет черты, связанные с действиями в файловой системе, характерными для шифровальщиков. Например, приложения-архиваторы обладают многими поведенческими признаками, характерными для шифровальщиков. Оба типа ПО могут модифицировать в течение короткого времени большое количество файлов пользователей, а файлы, полученные в результате их исполнения, имеют множество схожих черт, и найти различия с помощью детерминированных правил или аналитических алгоритмов является сложно выполнимой задачей.
Это может привести к ошибочному причислению таких программ к вредоносным, то есть к ошибкам второго рода. Но файлы, оставленные вредоносным ПО, имеют некоторые отличия от легитимных файлов пользователя, именно по этим отличиям предлагается искать зашифрованные файлы для обнаружения деятельности троянов-шифровалыциков.
Однако большинство существующих методов обнаружения шифровальщиков не используют ключевую особенность шифрующего вредоносного программного обеспечения - создание на компьютере жертвы файлов, информация в которых не может быть прочитана пользователем без расшифровки злоумышленниками. В результате возникает техническая проблема, заключающаяся в высоком уровне ошибок первого и второго рода при определении вредоносного программного обеспечения, шифрующего файлы компьютерной системы.
Известна публикация US 20180018458 A1, в которой описан способ обнаружения шифровальщиков путем анализа энтропии файлов, измененных неизвестными процессами. В патенте US 9852289 B1 описан способ защиты файлов от вирусов-шифровальщиков путем определения изменений файлов, характерных для шифровальщиков. Примерами таких изменений являются: изменение заголовка файла, изменение метаданных файла, шифрование файла. Однако, в найденных публикациях используются фиксированные правила для обнаружения шифровальщиков. Кроме того, набор признаков, характеризующих вредоносные действия шифровальщиков, достаточно ограничен. Таким образом, приведенные технологии допускают большой уровень ошибок первого и второго рода при обнаружении шифровальщиков и не решают заявленную техническую проблему. Например, многие легитимные архиваторы также создают зашифрованные файлы на диске, изменяют расширения файлов и их метаданные. Поэтому упомянутые технологии могут посчитать новое легитимное приложение для архивации как шифровальщик, допустив ошибку первого рода. Аналогичным образом существующие решения могут пропустить новый вид шифровальщиков, допустив тем самым ошибку второго рода.
Поэтому возникает необходимость в новых методах обнаружения шифровальщиков, использующих современные методы машинного обучения, а именно в системе и способе определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы.
Раскрытие сущности изобретения
Первый технический результат заключается в улучшении уровня защиты файлов компьютерной системы от шифровальщиков, за счет определения подозрительного процесса как связанного с шифровальщиком с использованием обученной модели машинного обучения, получающей в качестве входных данных характеристики файлов, созданных или измененных подозрительным процессом.
Второй технический результат заключается в снижении ошибок первого и второго рода при определении подозрительного процесса, связанного с шифровальщиком, за счет применения обученной модели машинного обучения, получающей в качестве входных данных характеристики файлов, созданных или измененных подозрительным процессом.
Согласно варианту реализации, используется способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы (далее - шифровальщик), в котором: определяют с использованием средства обработки по меньшей мере один файл, в который была произведена запись данных (далее - изменение) подозрительным процессом на основании обработки системных вызовов, используемых подозрительным процессом; определяют с использованием средства обработки характеристики каждого упомянутого файла; определяют класс изменения каждого упомянутого файла с использованием средства анализа путем применения обученной первой модели машинного обучения, получающей в качестве входных данных упомянутые характеристики файла; с использованием средства анализа определяют подозрительный процесс как связанный с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла.
Согласно одному из частных вариантов реализации класс изменения включает: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением.
Согласно другому частному варианту реализации для каждого упомянутого файла дополнительно определяют вероятность принадлежности изменений файла к одному из классов изменений.
Согласно еще одному частному варианту реализации определяют количество файлов, для которых вероятность изменения файла шифровальщиком превышает первый порог, затем если определенное количество файлов превышает второй порог, определяют подозрительный процесс как связанный с шифровальщиком.
Согласно одному из частных вариантов реализации определяют подозрительный процесс как связанный с шифровальщиком, если количество файлов, классифицированных как измененные шифровальщиком, превышает второй порог.
Согласно другому частному варианту реализации характеристики файла включают одну или несколько из следующих характеристик: энтропию по меньшей мере части файла; метаданные файла; по меньшей мере одну часть файла.
Согласно еще одному частному варианту реализации первая модель машинного обучения является одной из: нейронная сеть; решающее дерево; случайный лес; метод опорных векторов; метод k-ближайших соседей; логистическая регрессия; линейная регрессия; байесовская классификация; градиентный бустинг.
Согласно одному из частных вариантов реализации определяют подозрительный процесс как связанный с шифровальщиком путем применения обученной второй модели машинного обучения, получающей в качестве входных данных определенные классы изменения для каждого определенного файла.
Согласно другому частному варианту реализации с использованием средства обработки дополнительно определяют: характеристики подозрительного процесса, в частности, идентификатор подозрительного процесса, контекст подозрительного процесса; события средства защиты, связанные с наблюдаемым процессом; информацию о системе; при этом вторая модель машинного обучения дополнительно получает в качестве входных данных определенные характеристики подозрительного процесса, упомянутые события средства защиты, информацию о системе.
Согласно еще одному частному варианту реализации вторая модель машинного обучения является одной из: нейронная сеть; решающее дерево; случайный лес; метод опорных векторов; метод k-ближайших соседей; логистическая регрессия; линейная регрессия; байесовская классификация; градиентный бустинг.
Согласно варианту реализации, используется система определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы, содержащая: средство обработки, предназначенное для: определения по меньшей мере одного файла, в который была произведена запись данных подозрительным процессом на основании обработки системных вызовов, используемых подозрительным процессом; определения характеристик каждого упомянутого файла; средство анализа, предназначенное для: определения класса изменения каждого упомянутого файла путем применения обученной первой модели машинного обучения, получающей в качестве входных данных упомянутые характеристики файла; определения подозрительного процесса как связанного с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла; средство обучения, предназначенное для обучения первой модели машинного обучения на данных обучающей выборки, включающей характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
Согласно одному из частных вариантов реализации обучающая выборка дополнительно включает характеристики файлов, созданных или измененных по меньшей мере одним известным легитимным процессом, связанным с по меньшей мере одним известным легитимным программным обеспечением.
Согласно другому частному варианту реализации средство обучения дополнительно предназначено для тестирования и валидации обученной первой модели машинного обучения на данных тестовой и валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы тестовой и валидационной выборок отсутствуют в обучающей выборке.
Согласно еще одному частному варианту реализации класс изменения включает: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением.
Согласно одному из частных вариантов реализации для каждого упомянутого файла первая модель машинного обучения дополнительно определяет вероятность принадлежности изменений файла к одному из классов изменений.
Согласно другому частному варианту реализации средство анализа определяет количество файлов, для которых вероятность изменения файла шифровальщиком превышает первый порог, затем если определенное количество файлов превышает второй порог, определяют подозрительный процесс как связанный с шифровальщиком.
Согласно еще одному частному варианту реализации средство анализа определяет подозрительный процесс как связанный с шифровальщиком, если количество файлов, классифицированных как измененные шифровальщиком, превышает второй порог.
Согласно одному из частных вариантов реализации характеристики файла включают: энтропию по меньшей мере части файла; метаданные файла; по меньшей мере одну часть файла.
Согласно другому частному варианту реализации первая модель машинного обучения является одной из: нейронная сеть; решающее дерево; случайный лес; метод опорных векторов; метод k-ближайших соседей; логистическая регрессия; линейная регрессия; байесовская классификация; градиентный бустинг.
Согласно одному из частных вариантов реализации средство анализа дополнительно служит для определения подозрительного процесса как связанного с шифровальщиком путем применения обученной второй модели машинного обучения, получающей в качестве входных данных определенные классы изменения для каждого определенного файла.
Согласно другому частному варианту реализации средство обработки дополнительно определяет: характеристики подозрительного процесса, в частности, идентификатор подозрительного процесса, контекст подозрительного процесса; события средства зашиты, связанные с наблюдаемым процессом; информацию о системе; при этом вторая модель машинного обучения дополнительно получает в качестве входных данных определенные характеристики подозрительного процесса, упомянутые события средства защиты, информацию о системе.
Согласно еще одному частному варианту реализации вторая модель машинного обучения является одной из: нейронная сеть; решающее дерево; случайный лес; метод опорных векторов; метод k-ближайших соседей; логистическая регрессия; линейная регрессия; байесовская классификация; градиентный бустинг.
Согласно одному из частных вариантов реализации средство обучения дополнительно предназначено для обучения второй модели машинного обучения на данных второй обучающей выборки, включающей классы изменений файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
Согласно другому частному варианту реализации вторая обучающая выборка дополнительно включает классы изменений файлов, созданных или измененных по меньшей мере одним известным легитимным процессом, связанным с по меньшей мере одним известным легитимным программным обеспечением.
Согласно еще одному частному варианту реализации средство обучения дополнительно предназначено для тестирования и валидации обученной второй модели машинного обучения на данных второй тестовой и второй валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы второй тестовой и второй валидационной выборок отсутствуют во второй обучающей выборке.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
На Фиг. 1 представлена система определения шифровальщиков.
На Фиг. 2а-2г представлены примеры компьютерных директорий после работы различных шифровальщиков.
На Фиг. 3 представлен пример модулей средства защиты компьютера.
На Фиг. 4 представлен вариант способа определения шифровальщика.
На Фиг. 5 представлен пример компьютерной системы общего назначения.
Осуществление изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако, настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
На Фиг. 1 представлена система определения шифровальщиков.
Система включает средство обработки 103, которое предназначено для определения по меньшей мере одного файла 102, в который была произведена запись данных (также - измененный файл) подозрительным процессом 101, на основании обработки системных вызовов, в частности, для работы с файлами, используемыми подозрительным процессом 101 (например, функция WinAPI CreateFile). В одном частном варианте реализации дополнительно отслеживают системные вызовы для работы с потоками, записью в поток и др. Средство обработки 103 также предназначено для определения характеристик каждого определенного файла 102. В частном варианте реализации характеристики файла 102 включают энтропию (информационную энтропию) по меньшей мере части файла 102, метаданные файла 102 (расширение, тип, заголовок и др.), по меньшей мере одну часть файла 102. В еще одном частном варианте реализации характеристики файла 102 включают информацию о приложении или процессе, который произвел запись данных в файл 102. Другие примеры характеристик файла 102 будут описаны ниже.
Средство анализа 104 связано со средством обработки 103 и предназначено для определения класса изменения каждого определенного файла 102 путем применения обученной первой модели машинного обучения 106, получающей в качестве входных данных упомянутые характеристики файла 102. В частном варианте реализации изменения включают по меньшей мере следующие классы: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением. Средство анализа 104 также предназначено для определения подозрительного процесса 101 как связанного с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла 102.
Система включает средство обучения 105, предназначенное для обучения первой модели машинного обучения 106 на данных обучающей выборки, включающей характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
В частном варианте реализации первая модель машинного обучения 106 является одной из:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
Стоит отметить, что в предпочтительном варианте реализации обучающая выборка включает только характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком. То есть характеристики исходных файлов до их изменения процессом, связанным с шифровальщиком, не будут использоваться для обучения первой модели машинного обучения 106. Такой подход обладает рядом преимуществ. В частности, обученная на упомянутой обучающей выборке первая модель машинного обучения 106 будет иметь высокое качество классификации и низкое количество ошибок первого и второго рода при классификации шифровальщиков, для которых невозможно определить состояние файла до его изменения шифровальщиком.
Тем не менее, в другом частном варианте реализации обучающая выборка дополнительно включает характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, запущенным из легитимного файла (приложения).
Первая модель машинного обучения 106 определяет принадлежность изменений файла к одному из двух классов изменений. В одном варианте реализации для этого в качестве первой модели машинного обучения 106 используется модель классификации (обучение с учителем) на два упомянутых класса. В другом варианте реализации в качестве первой модели машинного обучения используется модель кластеризации или модель определения аномалий (обучение без учителя).
В одном из предпочтительных вариантов реализации в качестве первой модели машинного обучения 106 используется полносвязная нейронная сеть. Выбор параметров нейронной сети, таких как количество внутренних слоев и нейронов, активационная функция и др., может происходить таким образом, чтобы обеспечить наилучшее качество классификации и наименьшее количество ошибок первого и второго рода. В качестве активационной функции могут использоваться функции: ReLU (англ. Rectified Linear Unit - усеченное линейное преобразование), softmax, логистическая функция, функция Хевисайда и другие.
При использовании в качестве первой модели классификации 106 модели поиска аномалий возможно использование обучающей выборки, состоящей из одного класса. То есть обучающая выборка будет включать характеристики файлов, созданных или измененных легитимным ПО или шифровальщиком. Причем каждую из групп можно рассматривать как аномальную по отношению к другой. В итоге определение аномалии будет соответствовать одному классу, отсутствие аномалии - другому. В одном варианте обучающая выборка содержит файлы, созданные или измененные известными шифровальщиками. В этом случае файлы, созданные или измененные неизвестными ранее шифровальщиками, также будут обнаружены заявленной системой определения шифровальщиков ввиду обобщающих свойств моделей машинного обучения. Таким образом, будет улучшен уровень защиты файлов компьютерной системы не только от известных шифровальщиков, но также и от новых ранее неизвестных шифровальщиков. Также использование заявленного подхода позволяет снизить ошибки первого и второго рода при определении подозрительного процесса 101, связанного с шифровальщиком. В другом варианте обучающая выборка содержит характеристики файлов, созданных или измененных легитимным ПО.
В еще одном частном варианте реализации средство обучения 105 дополнительно предназначено для тестирования и валидации обученной первой модели машинного обучения 106 на данных тестовой и валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы тестовой и валидационной выборок отсутствуют в обучающей выборке.
В еще одном частном варианте реализации для каждого определенного файла 102 первая модель машинного обучения 106 дополнительно определяет вероятность принадлежности изменений файла к одному из классов изменений. При этом в еще одном частном варианте реализации средство анализа 104 определяет количество файлов (из определенных файлов 102), для которых вероятность изменения файла шифровальщиком превышает первый порог (например, 0.5), затем если определенное количество файлов превышает второй порог (например, 3), то средство анализа 104 определяет подозрительный процесс 101 как связанный с шифровальщиком. Например, если количество файлов, у которых вероятностью изменения файла шифровальщиком более 0.5, превышает 3 файла, то подозрительный процесс 101 будет определен как связанный с шифровальщиком. Описанные подходы позволяют снизить количество ложных срабатываний по сравнению с известными из уровня техники сигнатурными и эвристическими подходами, в которых смотрят на изменения одного файла по заданным правилам. При этом, в известных подходах, если один файл был изменен легитимным ПО (например, архиватором), и содержит характерные для шифровальщиков изменения, то подозрительный процесс 101 может быть признан шифровальщиком, хотя на самом деле является легитимным процессом.
Далее по тексту приведены примеры различных отличительных параметров и признаков, характерных для файлов, созданных или измененных шифровальщиками. В одном варианте реализации упомянутые далее параметры и признаки файлов также могут быть использованы в качестве характеристик файла, которые используются средством анализа 104.
Одной из характеристик файла является энтропия (информационная энтропия). Для вычисления информационной энтропии можно воспользоваться любой известной из уровня техники формулой, в частности, следующей формулой:
где H - энтропия информации, p(i) - вероятность появления символа со значением i.
Шифровальщики во время своей деятельности используют такие алгоритмы шифрования, как AES, RSA, RC4 и другие. Существуют разные критерии оценки качества алгоритмов шифрования, например, путем сравнения значений энтропии. Данная величина может служить для опознавания зашифрованных или случайных данных, и для разных форматов файлов характерны определенные значения энтропии. Однако определение файлов, измененных шифровальщиком, на основании только значения энтропии файла будет сопровождаться ошибками первого рода. Так как форматы архивов "rar", "zip", "7z" и подобные имеют энтропию, схожую с файлами, созданными вредоносным шифровальщиком (в случае, если имеют схожую степень сжатия), но отличаются наличием определенной структуры файла, благодаря которой их можно разархивировать. Особого рассмотрения требуют форматы, подобные "docx", так как они тоже состоят из архивов, широко используются и поддерживают шифрование. Помимо этого, нужно учитывать, что существует огромное количество общеизвестных форматов файлов, и компаниями могут создаваться особые форматы для внутреннего использования. Все это делает неэффективным сравнение созданных программой файлов с коллекцией известных форматов для определения вредоносной активности и шифровальщиков.
Дополнительные трудности создают шифровальщики, которые не изменяют весь файл целиком, а шифруют лишь часть файла. Для таких случаев может быть рассчитана энтропия отдельных частей файла. Например, путем деления файла на части равного размера и последующего вычисления энтропии для каждой части файла (далее - кусочная энтропия). При этом во многих архивах часть файла отводится для сохранения оригинальных имен файлов, что нечасто встречается в шифровальщиках. Поэтому в качестве еще одной характеристики файла, может быть использована минимальная из кусочных энтропий.
На значение энтропии оказывает влияние размер файла, поэтому значение размера файла также может быть использовано в качестве характеристики файла.
Во многих случаях характерной чертой файлов, созданных шифровальщиком, являются специфические имена зашифрованных файлов. Поэтому имена файлов также могут быть использованы в качестве одной из характеристик файла.
Довольно часто в именах файлов присутствует почта злоумышленников, как показано на Фиг. 2а (пример директории после работы шифровальщика Trojan-Ransom. Win32.Crysis). Поэтому в качестве еще одной характеристики файла также возможно использование информации о наличии или отсутствии строки в названии, отвечающей формату почтового ящика RFC 5322.
В случаях, подобных изображенному на Фиг. 2б (пример директории после работы еще одного шифровальщика), название файлов представляет собой строку, состоящую из шестнадцатеричных цифр, соответствие или несоответствие такому формату подходит для подачи на вход аналитической части системы. Также важным параметром может служить диапазон используемых символов. В отдельную группу можно отнести названия, в которых присутствуют расширение файлов или символа точки, что является нехарактерным признаком для легитимных файлов, но встречается среди файлов, зашифрованных шифровальщиком. Также можно отслеживать наличие или отсутствие специальных символов, редко встречающихся в названиях легитимных файлов, но присутствующих в зашифрованных именах файлов (Фиг. 2в): "[", "]", "{", "}", "@" знаки арифметических операций и другие символы.
Все упомянутые параметры и признаки могут быть использованы в качестве характеристик файла средством анализа 104.
В исполняемых файлах, архивах, форматах "docx" и "pdf" присутствуют последовательности байт, которые можно интерпретировать как строки заданной длины. В то же время в зашифрованных файлах длина строк крайне мала, и они являются последовательностью случайных символов, что редко встречается в легитимных файлах. В качестве характеристик файла могут быть выбраны количество строк, длина наибольшей из них и средняя длина строк.
В большинстве случаев шифровальщики меняют расширения файлов на несуществующие, поэтому признак соответствия расширения файла несуществующему формату файлов также может использоваться в качестве характеристики файла.
На Фиг. 2г (пример директории после работы шифровальщика Rapid) расширения файлов имеют большую длину, что не является типичным для легитимных файлов.
Еще одной отличительной особенностью зашифрованных файлов является присутствие специфичных слов, таких как "lol", "fox", "ransom" и другие. При использовании сигнатурных методов детектирования требуется создание «белого» списка с разрешенными расширениями файлов или «черного» списка - с запрещенными. То есть ПО, создававшее несколько файлов с таким расширением, считалось бы вредоносным. Создание подобных списков является крайне трудоемкой задачей, при этом списки должны постоянно содержать актуальную информацию о всех используемых расширениях как в легитимном ПО, так и во вредоносном, что невозможно. Помимо этого, существуют ситуации, в которых вредоносное ПО может мимикрировать под легитимное, в таких случаях шифровальщики не будут обнаружены. Поэтому данный подход сам по себе не является совершенным. Но подобные списки можно добавить в качестве характеристик файлов в первую модель машинного обучения 106. В этом случае расширению файла будет ставиться в соответствие некоторая шкала, в которой, например, ноль будет означать доверенное расширение, а наибольшее значение присваиваться группе с наиболее подозрительными расширениями. С учетом других характеристик файлов и параметров первой модели машинного обучения 106 уровень обнаружения шифровальщиков может быть улучшен.
В еще одном частном варианте реализации средство анализа 104 определяет подозрительный процесс 101 как связанный с шифровальщиком (то есть класс изменения соответствует изменению, произведенному шифровальщиком), если количество файлов, классифицированных как измененные шифровальщиком, превышает второй порог. Этот вариант соответствует предпочтительному варианту реализации, когда средство анализа 104 определяет класс изменения для каждого определенного файла, при этом вероятность принадлежности к классу изменений не обязательно определена.
В одном из частных вариантов реализации средство анализа 104 дополнительно служит для определения подозрительного процесса как связанного с шифровальщиком путем применения обученной второй модели машинного обучения 107, получающей в качестве входных данных определенные классы изменения для каждого определенного файла 102, то есть результат применения первой модели машинного обучения 106.
В еще одном частном варианте реализации средство обработки 103 дополнительно определяет:
а) характеристики подозрительного процесса 101, в частности, идентификатор подозрительного процесса, контекст подозрительного процесса;
б) события антивируса (средства защиты 108), связанные с наблюдаемым процессом, в частности, вердикт антивируса и отдельных модулей антивируса, изменение списка автозапуска, обращение в Интернет и другие;
в) информацию о системе.
При этом вторая модель машинного обучения 107 дополнительно получает в качестве входных данных определенные характеристики подозрительного процесса, упомянутые события антивируса, информацию о системе. Упомянутые события антивируса и информация о системе могут быть определены как самим средством обработки 103, так и с помощью средства защиты 108.
В одном из частных вариантов реализации вторая модель машинного обучения 107 является одной из:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
В еще одном частном примере реализации средство обучения 105 предназначено для обучения второй модели машинного обучения 107 на данных второй обучающей выборки, включающей классы изменений файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
В одном из частных вариантов реализации вторая обучающая выборка дополнительно включает классы изменений файлов, созданных или измененных по меньшей мере одним известным легитимным процессом, связанным с по меньшей мере одним известным легитимным ПО.
В другом частном варианте реализации средство обучения 105 дополнительно предназначено для тестирования и валидации обученной второй модели машинного обучения 107 на данных второй тестовой и второй валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы второй тестовой и второй валидационной выборок отсутствуют во второй обучающей выборке. Стоит также отметить, что и другие частные варианты реализации, описанные ранее применительно к первой модели машинного обучения 106, будут применимы и ко второй модели машинного обучения 107.
На Фиг. 3 приведен пример модулей средства защиты 108 компьютера 20. Средство защиты 108 (антивирус или другое средство защиты) устройства может содержать модули, предназначенные для обеспечения безопасности устройства: сканер по доступу, сканер по требованию, почтовый антивирус, веб антивирус, модуль проактивной защиты, модуль HIPS (англ. Host Intrusion Prevention System - система предотвращения вторжений), DLP-модуль (англ. data loss prevention - предотвращение утечки данных), сканер уязвимостей, эмулятор, сетевой экран и др. В частном варианте реализации указанные модули могут быть составной частью средства защиты 108. В еще одном варианте реализации данные модули могут быть реализованы в виде отдельных программных компонент.
Сканер по доступу содержит функционал определения вредоносной активности всех открываемых, запускаемых и сохраняемых файлов на компьютерной системе пользователя. Сканер по требованию отличается от сканера по доступу тем, что сканирует заданные пользователем файлы и директории по требованию пользователя.
Почтовый антивирус необходим для контроля входящей и исходящей электронной почты на предмет содержания вредоносных объектов. Веб-антивирус служит для предотвращения исполнения вредоносного кода, который может содержаться на веб-сайтах, посещаемых пользователем, а также для блокирования открытия веб-сайтов. Модуль HIPS служит для определения нежелательной и вредоносной активности программ и блокирования ее в момент исполнения. DLP-модуль служит для определения и предотвращения утечки конфиденциальных данных за пределы компьютера или сети. Сканер уязвимостей необходим для определения уязвимостей на устройстве (например, отключены некоторые компоненты средства защиты, не актуальные вирусные базы, закрыт сетевой порт и пр.). Сетевой экран осуществляет контроль и фильтрацию сетевого трафика в соответствии с заданными правилами. Работа эмулятора заключается в имитации гостевой системы во время исполнения инструкций файла в эмуляторе и будет подробно рассмотрена далее. Модуль проактивной защиты использует поведенческие сигнатуры для определения поведения исполняемых файлов и их классификации по уровню доверия. Стоит, отметить, что средство защиты 108 может включать и другие модули, для осуществления функционала, описанного на Фиг. 1.
На Фиг. 4 представлен вариант способа определения шифровальщика.
При запуске неизвестного файла, создается новый процесс (например, функцией WinAPI CreateProcess) с новым идентификатором процесса (англ. process identifier, PID). Такой процесс будет рассматриваться в настоящем изобретении как подозрительный процесс.Стоит также отметить, что настоящее изобретение также позволяет определить процесс как связанный с шифровальщиком, когда процесс является доверенным (например, системным), но создает или изменяет файлы таким же образом, как это делают шифровальщики. Такая ситуация возможна, когда речь идет о бесфайловом вредоносном ПО (англ. fileless malware). Такое вредоносное ПО может использовать, например, доверенное ПО PowerShell для выполнения вредоносных команд. При этом вредоносный код не хранится на диске в виде файлов, а содержится только в оперативной памяти, и поэтому не может быть обнаружен путем сканирования файлов на компьютерной системе. Тем не менее, заявленное изобретение способно обнаружить упомянутое бесфайловое вредоносное ПО в одном из вариантов реализации, в котором все процессы компьютерной системы рассматриваются как подозрительные процессы. Кроме того, в качестве подозрительных процессов могут рассматриваться не все процессы, а только те процессы, которые входят в определенный обновляемый список. Данный обновляемый список может включать подозрительные и наиболее часто используемые шифровальщиками системные процессы.
Согласно заявленному способу определения шифровальщиков, на шаге 401 определяют с использованием средства обработки 103 по меньшей мере один файл 102, в который была произведена запись данных подозрительным процессом 101 на основании обработки системных вызовов для работы с файлами, используемых подозрительным процессом 101. Где запись данных включает создание нового файла, а также внесение изменений в существующий файл. На шаге 402 определяют с использованием средства обработки 103 характеристики каждого определенного файла 102.
Затем на шаге 403 определяют класс изменения каждого определенного файла с использованием средства анализа 104 путем применения обученной первой модели машинного обучения 106, получающей в качестве входных данных упомянутые характеристики файла. В частном варианте реализации класс изменения включает: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением. В итоге, на шаге 404 с использованием средства анализа 104 определяют подозрительный процесс 101 как связанный с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла.
После определения подозрительного процесса 101 как связанного с шифровальщиком, средство защиты 108 обеспечивает защиту компьютерного устройства на шаге 405. При этом защита компьютерного устройства может включать:
а) остановку подозрительного процесса и всех связанных с ним потоков и других процессов;
б) удаление (перемещение на карантин) файла, из которого был запущен подозрительный процесс;
в) восстановление измененных файлов из резервной копии, при этом резервная копия файлов может быть сохранена перед записью данных в упомянутые файлы подозрительным процессом;
г) обновление антивирусных баз и запуск антивирусной проверки (сканер по требованию).
Частные примеры реализации, описанные к системе по Фиг. 1 также применимы и к способу по Фиг. 4.
Таким образом, заявленные система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы обеспечивает решение заявленной технической проблемы и позволяет достичь заявленных технических результатов, а именно улучшить уровень защиты файлов компьютерной системы от шифровальщиков за счет определения подозрительного процесса как связанного с шифровальщиком с использованием обученной модели машинного обучения, получающей в качестве входных данных характеристики файлов, созданных или измененных подозрительным процессом, а также снизить ошибки первого и второго рода при определении подозрительного процесса, связанного с шифровальщиком, за счет применения обученной модели машинного обучения, получающей в качестве входных данных характеристики файлов, созданных или измененных подозрительным процессом.
Фиг. 5 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 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, представленного на Фиг. 5. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях (также - информационных системах), внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В соответствии с описанием, компоненты, этапы исполнения, структура данных, описанные выше, могут быть выполнены, используя различные типы операционных систем, компьютерных платформ, программ.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.
Claims (86)
1. Способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы (далее - шифровальщик), реализованный на процессоре компьютерной системы, содержащий инструкции, согласно которым:
а) определяют с использованием средства обработки по меньшей мере один файл, в который была произведена запись данных (далее - изменение) подозрительным процессом на основании обработки системных вызовов, используемых подозрительным процессом;
б) определяют с использованием средства обработки характеристики каждого упомянутого файла;
в) определяют класс изменения каждого упомянутого файла с использованием средства анализа путем применения обученной первой модели машинного обучения, получающей в качестве входных данных упомянутые характеристики файла;
г) с использованием средства анализа определяют подозрительный процесс как связанный с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла.
2. Способ по п. 1, в котором изменения включают по меньшей мере следующие классы: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением.
3. Способ по п. 2, в котором для каждого упомянутого файла дополнительно определяют вероятность принадлежности изменений файла к одному из классов изменений.
4. Способ по п. 3, в котором определяют количество файлов, для которых вероятность изменения файла шифровальщиком превышает первый порог, затем, если определенное количество файлов превышает второй порог, определяют подозрительный процесс как связанный с шифровальщиком.
5. Способ по п. 2, в котором определяют подозрительный процесс как связанный с шифровальщиком, если количество файлов, классифицированных как измененные шифровальщиком, превышает второй порог.
6. Способ по п. 1, в котором характеристики файла включают одну или несколько из следующих характеристик:
а) энтропию по меньшей мере части файла;
б) метаданные файла;
в) по меньшей мере одну часть файла.
7. Способ по п. 1, в котором первую модель машинного обучения реализуют при помощи одного из алгоритмов:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
8. Способ по п. 1, в котором дополнительно определяют подозрительный процесс как связанный с шифровальщиком путем применения обученной второй модели машинного обучения, получающей в качестве входных данных определенные классы изменения для каждого определенного файла.
9. Способ по п. 8, в котором с использованием средства обработки дополнительно определяют:
а) характеристики подозрительного процесса, в частности идентификатор подозрительного процесса, контекст подозрительного процесса;
б) события средства защиты, связанные с наблюдаемым процессом;
в) информацию о системе;
при этом вторая модель машинного обучения дополнительно получает в качестве входных данных определенные характеристики подозрительного процесса, упомянутые события средства защиты, информацию о системе.
10. Способ по п. 8, в котором вторую модель машинного обучения реализуют при помощи одного из алгоритмов:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
11. Система определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы, содержащая процессор, выполненный с возможностью реализации:
а) средства обработки, предназначенного для:
• определения по меньшей мере одного файла, в который была произведена запись данных подозрительным процессом на основании обработки системных вызовов, используемых подозрительным процессом;
• определения характеристик каждого упомянутого файла;
б) средства анализа, предназначенного для:
• определения класса изменения каждого упомянутого файла путем применения обученной первой модели машинного обучения, получающей в качестве входных данных упомянутые характеристики файла;
• определения подозрительного процесса как связанного с шифровальщиком на основании класса изменения файла, определенного для каждого упомянутого файла;
в) средства обучения, предназначенного для обучения первой модели машинного обучения на данных обучающей выборки, включающей характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
12. Система по п. 11, в которой обучающая выборка дополнительно включает характеристики файлов, созданных или измененных по меньшей мере одним известным легитимным процессом, связанным с по меньшей мере одним известным легитимным программным обеспечением.
13. Система по п. 11, в которой средство обучения дополнительно предназначено для тестирования и валидации обученной первой модели машинного обучения на данных тестовой и валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы тестовой и валидационной выборок отсутствуют в обучающей выборке.
14. Система по п. 11, в которой изменения включают по меньшей мере следующие классы: изменения, произведенные шифровальщиком; изменения, произведенные легитимным программным обеспечением.
15. Система по п. 14, в которой для каждого упомянутого файла первая модель машинного обучения дополнительно определяет вероятность принадлежности изменений файла к одному из классов изменений.
16. Система по п. 15, в которой средство анализа определяет количество файлов, для которых вероятность изменения файла шифровальщиком превышает первый порог, затем, если определенное количество файлов превышает второй порог, определяют подозрительный процесс как связанный с шифровальщиком.
17. Система по п. 14, в которой средство анализа дополнительно определяет подозрительный процесс как связанный с шифровальщиком, если количество файлов, классифицированных как измененные шифровальщиком, превышает второй порог.
18. Система по п. 11, в которой характеристики файла включают:
а) энтропию по меньшей мере части файла;
б) метаданные файла;
в) по меньшей мере одну часть файла.
19. Система по п. 11, в которой первая модель машинного обучения реализуется при помощи одного из алгоритмов:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
20. Система по п. 11, в которой средство анализа дополнительно служит для определения подозрительного процесса как связанного с шифровальщиком путем применения обученной второй модели машинного обучения, получающей в качестве входных данных определенные классы изменения для каждого определенного файла.
21. Система по п. 20, в которой средство обработки дополнительно определяет:
а) характеристики подозрительного процесса, в частности идентификатор подозрительного процесса, контекст подозрительного процесса;
б) события средства зашиты, связанные с наблюдаемым процессом;
в) информацию о системе;
при этом вторая модель машинного обучения дополнительно получает в качестве входных данных определенные характеристики подозрительного процесса, упомянутые события средства защиты, информацию о системе.
22. Система по п. 20, в которой вторая модель машинного обучения реализуется при помощи одного из алгоритмов:
а) нейронная сеть;
б) решающее дерево;
в) случайный лес;
г) метод опорных векторов;
д) метод k-ближайших соседей;
е) логистическая регрессия;
ж) линейная регрессия;
з) байесовская классификация;
и) градиентный бустинг.
23. Система по п. 20, в которой средство обучения дополнительно предназначено для обучения второй модели машинного обучения на данных второй обучающей выборки, включающей классы изменений файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком.
24. Система по п. 23, в которой вторая обучающая выборка дополнительно включает классы изменений файлов, созданных или измененных по меньшей мере одним известным легитимным процессом, связанным с по меньшей мере одним известным легитимным программным обеспечением.
25. Система по п. 23, в которой средство обучения дополнительно предназначено для тестирования и валидации обученной второй модели машинного обучения на данных второй тестовой и второй валидационной выборок соответственно, включающих характеристики файлов, созданных или измененных по меньшей мере одним известным процессом, связанным с по меньшей мере одним известным шифровальщиком, при этом файлы второй тестовой и второй валидационной выборок отсутствуют во второй обучающей выборке.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020128090A RU2770570C2 (ru) | 2020-08-24 | 2020-08-24 | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы |
US17/320,362 US12086236B2 (en) | 2020-08-24 | 2021-05-14 | System and method for identifying a cryptor that encodes files of a computer system |
EP21178042.4A EP3961449B1 (en) | 2020-08-24 | 2021-06-07 | System and method for identifying a cryptor that encodes files of a computer system |
CN202110685763.4A CN114091046A (zh) | 2020-08-24 | 2021-06-21 | 识别对计算机系统的文件进行编码的加密器的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020128090A RU2770570C2 (ru) | 2020-08-24 | 2020-08-24 | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2020128090A RU2020128090A (ru) | 2022-02-24 |
RU2020128090A3 RU2020128090A3 (ru) | 2022-02-24 |
RU2770570C2 true RU2770570C2 (ru) | 2022-04-18 |
Family
ID=80270778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020128090A RU2770570C2 (ru) | 2020-08-24 | 2020-08-24 | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы |
Country Status (2)
Country | Link |
---|---|
US (1) | US12086236B2 (ru) |
RU (1) | RU2770570C2 (ru) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11030691B2 (en) * | 2018-03-14 | 2021-06-08 | Chicago Mercantile Exchange Inc. | Decision tree data structure based processing system |
RU2770570C2 (ru) * | 2020-08-24 | 2022-04-18 | Акционерное общество "Лаборатория Касперского" | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150058987A1 (en) * | 2013-08-22 | 2015-02-26 | F-Secure Corporation | Detecting File Encrypting Malware |
RU2622630C2 (ru) * | 2015-06-05 | 2017-06-16 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ восстановления модифицированных данных |
US9852289B1 (en) * | 2014-04-30 | 2017-12-26 | Symantec Corporation | Systems and methods for protecting files from malicious encryption attempts |
US20180018458A1 (en) * | 2016-07-14 | 2018-01-18 | Mcafee, Inc. | Mitigation of ransomware |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7620987B2 (en) * | 2005-08-12 | 2009-11-17 | Microsoft Corporation | Obfuscating computer code to prevent an attack |
US8719939B2 (en) * | 2009-12-31 | 2014-05-06 | Mcafee, Inc. | Malware detection via reputation system |
RU2491615C1 (ru) * | 2012-02-24 | 2013-08-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ формирования записей для обнаружения программного обеспечения |
US10685111B2 (en) * | 2016-10-31 | 2020-06-16 | Crowdstrike, Inc. | File-modifying malware detection |
WO2018130904A1 (en) * | 2017-01-11 | 2018-07-19 | Morphisec Information Security Ltd. | Early runtime detection and prevention of ransomware |
US20180248896A1 (en) * | 2017-02-24 | 2018-08-30 | Zitovault Software, Inc. | System and method to prevent, detect, thwart, and recover automatically from ransomware cyber attacks, using behavioral analysis and machine learning |
US10878090B2 (en) * | 2017-10-18 | 2020-12-29 | AO Kaspersky Lab | System and method of detecting malicious files using a trained machine learning model |
US11042638B2 (en) * | 2017-11-14 | 2021-06-22 | Southern Methodist University | Detecting malicious software using sensors |
US11494491B2 (en) * | 2018-03-16 | 2022-11-08 | Acronis International Gmbh | Systems and methods for protecting against malware code injections in trusted processes by a multi-target injector |
US10795994B2 (en) * | 2018-09-26 | 2020-10-06 | Mcafee, Llc | Detecting ransomware |
RU2770570C2 (ru) * | 2020-08-24 | 2022-04-18 | Акционерное общество "Лаборатория Касперского" | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы |
US20220292198A1 (en) * | 2021-03-15 | 2022-09-15 | AO Kaspersky Lab | Systems and methods for modifying a malicious code detection rule |
-
2020
- 2020-08-24 RU RU2020128090A patent/RU2770570C2/ru active
-
2021
- 2021-05-14 US US17/320,362 patent/US12086236B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150058987A1 (en) * | 2013-08-22 | 2015-02-26 | F-Secure Corporation | Detecting File Encrypting Malware |
US9852289B1 (en) * | 2014-04-30 | 2017-12-26 | Symantec Corporation | Systems and methods for protecting files from malicious encryption attempts |
RU2622630C2 (ru) * | 2015-06-05 | 2017-06-16 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ восстановления модифицированных данных |
US20180018458A1 (en) * | 2016-07-14 | 2018-01-18 | Mcafee, Inc. | Mitigation of ransomware |
Also Published As
Publication number | Publication date |
---|---|
RU2020128090A (ru) | 2022-02-24 |
US12086236B2 (en) | 2024-09-10 |
US20220058261A1 (en) | 2022-02-24 |
RU2020128090A3 (ru) | 2022-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Reshmi | Information security breaches due to ransomware attacks-a systematic literature review | |
Beaman et al. | Ransomware: Recent advances, analysis, challenges and future research directions | |
Gopinath et al. | A comprehensive survey on deep learning based malware detection techniques | |
CN110659483B (zh) | 使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 | |
CN109583193B (zh) | 目标攻击的云检测、调查以及消除的系统和方法 | |
Ramesh et al. | Automated dynamic approach for detecting ransomware using finite-state machine | |
US20110041179A1 (en) | Malware detection | |
Gül et al. | A survey on anti-forensics techniques | |
Jethva et al. | Multilayer ransomware detection using grouped registry key operations, file entropy and file signature monitoring | |
Roseline et al. | A comprehensive survey of tools and techniques mitigating computer and mobile malware attacks | |
Bijitha et al. | A survey on ransomware detection techniques | |
RU2634181C1 (ru) | Система и способ обнаружения вредоносных компьютерных систем | |
Aslan et al. | Using a subtractive center behavioral model to detect malware | |
Vidyarthi et al. | Static malware analysis to identify ransomware properties | |
Maniath et al. | Survey on prevention, mitigation and containment of ransomware attacks | |
RU2770570C2 (ru) | Система и способ определения процесса, связанного с вредоносным программным обеспечением, шифрующим файлы компьютерной системы | |
Cen et al. | Ransomware early detection: A survey | |
Lemmou et al. | A behavioural in‐depth analysis of ransomware infection | |
Kardile | Crypto ransomware analysis and detection using process monitor | |
Atapour et al. | Modeling Advanced Persistent Threats to enhance anomaly detection techniques | |
RU2622630C2 (ru) | Система и способ восстановления модифицированных данных | |
Thomas | Machine Learning Applications for Cybersecurity | |
Poongodi et al. | Behavioral malware detection and classification using deep learning approaches | |
Mahboubi et al. | Digital immunity module: Preventing unwanted encryption using source coding | |
Oujezsky et al. | Data Backup System with Integrated Active Protection Against Ransomware |