Математическая модель обеспечения контроля над исполнением образца и маскировки аналитических инструментов при инвазивном динамическом анализе вредоносного ПО тема диссертации и автореферата по ВАК РФ 00.00.00, кандидат наук Переберина Анастасия Александровна

  • Переберина Анастасия Александровна
  • кандидат науккандидат наук
  • 2023, ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)»
  • Специальность ВАК РФ00.00.00
  • Количество страниц 136
Переберина Анастасия Александровна. Математическая модель обеспечения контроля над исполнением образца и маскировки аналитических инструментов при инвазивном динамическом анализе вредоносного ПО: дис. кандидат наук: 00.00.00 - Другие cпециальности. ФГАОУ ВО «Московский физико-технический институт (национальный исследовательский университет)». 2023. 136 с.

Оглавление диссертации кандидат наук Переберина Анастасия Александровна

Введение

Глава 1. Обзор состояния в области исследования

1.1 Современное состояние в области анализа и детектирования вредоносного ПО

1.2 Вредоносное ПО и его виды

1.3 История развития вредоносного ПО

1.3.1 Этапы развития вредоносного ПО

1.3.2 Краткая история вредоносного ПО

1.3.3 Ключевые события в истории развития вредоносного ПО и методов антивирусной защиты

1.3.4 Программы-вымогатели

1.4 Антивирусное ПО

1.5 Развитие пассивной защиты аппаратных средств и операционных систем

1.6 Подходы к анализу вредоносного ПО

1.6.1 Статический анализ

1.6.2 Динамический анализ

1.6.3 Гонка вооружений

Глава 2. Запуск вредоносного ПО

2.1 Особенности тестовой среды

2.3 Архитектура комплекса Sandbox

2.3.1 Сетевая конфигурация

2.3.2 Цикл работы системы и автоматизация

Глава 3. Сведения из области операционных систем, внутреннего устройства ОС Windows и системного программирования

3.1 PE файлы

3.2 Таблица импорта

3.3 Таблица экспорта

3.4 Инжекция DLL

3.4.1 Внедрение кода

3.4.2 Модификация программы

3.5 Обработка исключительных ситуаций

3.5.1 Структурная обработка исключений

3.5.2 Векторная обработка исключений

3.6 Планирование потоков в Windows

3.7 Иерархический честный планировщик

3.8 Измерение времени

3.8.1 Аппаратные таймеры

3.8.2 Подсчет времени в Windows

3.8.3 Счетчики производительности Windows

3.8.4 Виртуализация времени

Глава 4. Результаты исследования

4.1 Архитектура разработанного программного комплекса

4.2 Модуль контроля

4.2.1 Патч импорта

4.2.2 Основные группы API для перехвата

4.2.3 Контроль памяти

4.2.4 Многопоточность

4.3 Модуль планирования

4.3.1 Идея реализации

4.3.2 Описание модели

4.3.3 Алгоритм планирования потоков

4.3.4 Реализация с помощью UMS API

4.3.5 Специальные перехваты для планирования

4.4 Модуль маскировки

4.4.1 Производительность

4.4.2 Маскировка инжектированного кода

4.4.3 Маскировка течения времени

4.5 Реализация программного комплекса

Заключение

Список сокращений и условных обозначений

Терминология

Список литературы

Рекомендованный список диссертаций по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Введение диссертации (часть автореферата) на тему «Математическая модель обеспечения контроля над исполнением образца и маскировки аналитических инструментов при инвазивном динамическом анализе вредоносного ПО»

Введение

В данной работе рассматривается проблема контроля потока исполнения при анализе подозрительного (потенциально вредоносного) ПО и маскировки инструментов такого контроля от обнаружения. Эта проблема является частью общей проблемы в области кибербезопасности по детектированию вредоносного ПО на основе данных мониторинга поведения программы. В настоящее время ежедневно появляется большое количество нового вредоносного ПО, поэтому классическое детектирование, основанное на поиске в базе данных сигнатур антивирусных программ, отходит на второй план, уступая место подходам, основанным на поведенческом анализе.

В центре внимания работы находится динамический анализ вредоносного ПО, то есть такой анализ, который происходит во время исполнения программы. В ходе исследования был спроектирован программно-аппаратный комплекс для безопасного запуска исследуемых образцов на тестовых серверах. Исполнение исследуемых программ осуществляется под контролем инструментов динамического анализа, которые занимаются мониторингом работы образца. Чтобы повлиять на работу системы, которая является объектом заражения (получить доступ к файлам, другим процессам и так далее), приложению необходимо обращаться к операционной системе. Аналитические инструменты отслеживают взаимодействие образца с операционной системной через предоставляемый системой интерфейс (API). Разрабатываемые инструменты названы инвазивными, так как код анализатора внедряется в целевую программу, применяются патчи кода целевой программы, а мониторинг происходит путём перехвата функций, а также обращений программы к коду системных библиотек (путём контроля доступа к памяти). При этом стоит проблема маскировки присутствия аналитических инструментов, так как современные вредоносные программы могут детектировать присутствие инструментов динамического анализа и используют разнообразные стратегии для выхода из-под контроля этих инструментов.

Стоит задача разработки динамических инструментов для анализа вредоносного ПО, при этом необходимо обеспечить контроль над исполнением образца и маскировку запуска под анализом. Для обеспечения контроля над исполнением производится разделение памяти программы на области, содержащие код системных библиотек и содержащие код приложения. Управляя доступом к этим страницам памяти, можно детектировать все обращения к системному API, в том числе нестандартными способами. Разработка начинается с более простой задачи контроля над однопоточным приложением, а затем рассматривается многопоточный случай. Потоки приложения делят виртуальное адресное пространство, поэтому для поддержания необходимого доступа к страницам памяти требуется позволить работать только тем нитям, которые обращаются к доступной части памяти. Для реализации этого подхода требуется изменение классического планирования потоков и создание математической модели, описывающей работу такой системы потоков внутри приложения.

Анализ поведения вредоносного программного обеспечения является актуальным с точки зрения информационной безопасности. Динамический анализ, при котором происходит исследование поведения образца, необходим для обнаружения новых, неизвестных ранее угроз. С момента появления первых образцов вредоносного ПО увеличилось количество его видов, сложность вредоносного ПО, скорость появления новых экземпляров, а также масштабы угроз. Инструменты динамического анализа детектируют вредоносное поведение с помощью мониторинга исполнения кода и доступа к данным. Вредоносное ПО применяет различные подходы детектирования запуска под анализом, в том числе через обнаружение аномалий потребления ресурсов, и уклонения от аналитических инструментов, в том числе через нестандартные методы передачи управления. Таким образом, решение таких задач, как обеспечение контроля над исполнением исследуемой программы и маскировки аналитических инструментов, является актуальным.

Новизна исследования состоит в предложении нового подхода к динамическому анализу, основанного на обеспечении контроля над

анализируемым образцом с помощью разделения исполняемой памяти на два класса, математической модели планирования при разделении потоков на два пула по классу исполняемой памяти и алгоритма честного иерархического планировщика для данной модели, методов маскировки аналитических инструментов, основанных на перехвате API и контроле над течением времени для исследуемого ПО.

Цель исследования - разработка программного обеспечения, осуществляющего динамический анализ потенциально вредоносного ПО, и создание математической модели управления исполнением анализируемого процесса под контролем инструментов динамического анализа ПО. При этом необходимо обеспечить контроль над исполнением исследуемого ПО и маскировку присутствия в системе аналитических инструментов.

Были сформулированы следующие задачи:

1. Разработать инструменты динамического анализа ПО, при этом необходимо

a. осуществлять мониторинг активности приложения (низкоуровневых событий процесса, таких как вызовы системного API)

b. обеспечить контроль над доступом к коду приложения и системному коду

2. Разработать математическую модель и алгоритм планирования исполнения потоков в условиях контроля над доступом к памяти и внедрить его в разрабатываемые аналитические инструменты

3. Разработать механизмы маскировки присутствия аналитических инструментов и деградации производительности системы из-за присутствия аналитических инструментов

Теоретическая значимость работы состоит в предложении подхода к динамическому анализу вредоносного ПО, разработке архитектуры программного комплекса и алгоритмов, обеспечивающих работу аналитических инструментов.

Практическая значимость работы состоит в разработке инструментов для динамического анализа программного обеспечения, а также предложением

подходов и техник, описанных в ряде работ с изложением ключевых идей имплементации.

Методология и методы исследования. Были использованы методы проектирования информационных систем и программных комплексов, методы, которые применяются при динамическом анализе программного обеспечения, техники перехвата вызовов функций, обработки исключений (VEH), патча программы, инжектирования dll, модификации прав доступа к страницам памяти, механизм планирования потоков в режиме пользователя (UMS API), техники контроля над течением времени с точки зрения программы на основе подхода гипервизоров виртуальных машин. Для построения математической модели планирования используются теория алгоритмов и математические методы анализа, методы теории операционных систем. Для реализации программного комплекса используются методы системного программирования.

Основные положения, выносимые на защиту:

1. Новый подход к динамическому анализу вредоносного ПО, основанный на обеспечении контроля над анализируемым образцом с помощью разделения исполняемой памяти на два класса, а именно код приложения и код системных библиотек, и модификации защиты доступа к страницам памяти

2. Математическая модель планирования при разделении потоков на два пула по классу исполняемой памяти и алгоритм честного иерархического планировщика для данной модели, обеспечивающий выполнение только разрешенного в определенные моменты класса кода и маскировку работы алгоритма

3. Метод маскировки присутствия аналитических инструментов, основанный на перехвате API и контроле над течением времени для исследуемого ПО

4. Архитектура программного комплекса для анализа ПО, включающая разработанные инструменты динамического анализа, состоящие из Модуля контроля, Модуля планирования и Модуля маскировки

5. Комплекс программ, реализующий предложенный подход на основе модификации прав доступа к страницам памяти в Модуле контроля, предложенный алгоритм планирования в Модуле планирования, предложенный метод маскировки в Модуле маскировки Степень достоверности и апробация: достоверность полученных результатов обеспечивается использованием существующих методов и подходов, согласованных с другими исследованиями, публикациями научных статей в рецензируемых журналах. Данная работа была представлена на научных конференциях МФТИ, а также на саммитах по информационной безопасности (Acronis Global Cyber Summit) и форумах (Global Cyber Protection Forum) ИТ-компании Акронис, по результатам диссертации был проведен научный доклад на кафедре информатики и вычислительной математики МФТИ.

Основные результаты по теме диссертации были изложены в научных статьях (в том числе 2 статьях, индексируемых РИНЦ, и 2 статьях, индексируемых Scopus) и патентах (2 патента USPTO) [1-8], разработанный программный комплекс был внедрен в ИТ-компании «Киберпротект» (cyberprotect.ru).

Личный вклад соискателя в работах с соавторами заключается в следующем: [1, 2, 5, 6, 7, 8] - разработка инструментов динамического анализа программного обеспечения, архитектуры и применяемых подходов, моделей и алгоритмов, [3, 4] - проектирование и разработка программного-аппаратного комплекса для безопасного и автоматизированного запуска образцов вредоносного ПО.

Диссертация состоит из введения, 4 глав и заключения. Полный объём диссертации составляет 136 страниц, включая 17 рисунков и 3 таблицы. Список литературы содержит 106 наименований.

Глава 1. Обзор состояния в области исследования 1.1 Современное состояние в области анализа и детектирования

вредоносного ПО

В настоящее время исследование поведения вредоносного ПО является актуальным вопросом информационной безопасности. Вредоносное ПО эволюционирует и совершенствуется, становится все более эффективным, а киберпреступники внедряют новые образцы, подходы и векторы заражения. Традиционные подходы антивирусного ПО, основанные на поиске сигнатур известных образцов в базах данных, не могут обнаруживать новые экземпляры вредоносного ПО, использующие неизвестные ранее уязвимости и способы атаки. Поэтому применяются инструменты статического анализа ПО, исследующие исполняемые файлы, и инструменты динамического анализа, исследующие поведение ПО во время его работы [10]. Статический анализ осложняется техниками защиты - упаковщиками и крипторами - которые нельзя обойти без динамического анализа, и особенностями загрузки PE (например, использование ApiSetSchema при разрешении импортов). Динамический анализ требует специальной среды для безопасного запуска кода, потенциально являющегося вредоносным. В качестве такой среды может выступать ограниченное и контролируемое окружение (виртуальная машина, антивирусная песочница).

Различные подходы к анализу ПО рассматриваются статье [10]. Здесь также описаны возможные тестовые среды для исполнения ПО под контролем инструментов мониторинга и анализа и приводится обзор некоторых программных реализаций. Для анализа подозрительного ПО (с целью последующего детектирования) может быть использован перехват API (hooking), что также рассматривается в существующих работах. В работе [11] утверждается, что вредоносная программа может быть детектирована путём трассировки вызовов API по частоте и порядку, в котором они вызываются. Авторы исследования [12] используют анализ вызовов API и демонстрируют 92% успешность детектирования с малым количеством ложных срабатываний. Многие работы используют идеи

машинного обучения и/или различные способы подсчета энтропии, например [13, 14, 15].

Подходы к динамическому анализу ПО были рассмотрены в работе [9]. Использование таких методов, как перехват вызовов функции и анализ аргументов, является стандартным подходом в этой области, который встречается во многих решениях [10]. Известной также является техника W xor X (write xor execute), которая основана на модификации прав доступа к страницам памяти (с помощью установки NX/XD бита) и применяется для того, чтобы пропустить этап распаковки кода [10]. Разработанные в данной работе инструменты основаны на таких методах (в частности, используется перехват вызова функции и изменение прав доступа к странице).

В данном исследовании уделяется внимание маскировке аналитических инструментов. Антивирусное программное обеспечение пытается обнаружить вредоносные программы, используя различные методы, включая динамический анализ. В свою очередь, киберпреступники адаптируют вредоносное ПО для уклонения анализа и прохождения антивирусного сканирования. Современные методы, которые используются вредоносными программами, описаны в статьях [16], [17]. Их применение вынуждает аналитические инструменты препятствовать своему детектированию, также используя методы маскировки. Таким образом, в данной области возникает так называемая гонка вооружений, и механизмы обеих сторон были рассмотрены в [7].

Стоит также отметить, что присутствие аналитических инструментов может влиять на производительность ОС. Необычное изменение времени выполнения программы может быть обнаружено вредоносным ПО и отмечено как факт исполнения под анализом или в среде с ограниченными ресурсами. Производительность влияет на пропускную способность аналитической системы (т. е. количество экземпляров, которые можно запустить под контролем аналитических инструментов в единицу времени). Снижение производительности также можно замаскировать, контролируя течение времени для процесса во время исполнения под анализом.

1.2 Вредоносное ПО и его виды

Вредоносное ПО - программное обеспечение, устанавливаемое на компьютеры и устройства без разрешения пользователя либо выполняющее заведомо вредоносные действия, а также действия, отличные от описанных в документации [18]. Оно может получать несанкционированный доступ к ресурсам компьютера или хранимой на нем информации. Нередко любые экземпляры вредоносного ПО называют «вирусами», но вирус - это только один из видов вредоносного ПО, обладающий определенными характеристиками. При этом современные образцы вредоносного ПО могут сочетать в себе свойства различных видов, и их бывает трудно отнести к какому-либо классу [10].

Среди вредоносного ПО можно выделить такие классы, как червь, вирус, троянский конь, шпионское ПО, бот (и ботнет), руткиты (и буткиты). Характерным признаком червя является самовоспроизведение, т. е. способность распространяться, заражая уязвимые хосты в сетевых окружениях. Вирус же представляет собой вредоносный код, который внедряется в код уязвимой программы или операционной системы и не может быть исполнен независимо (по аналогии с биологическими вирусами). Более подробно классификация вредоносного ПО приведена в работе [9].

На рисунке 1 представлено распределение по видам вредоносного ПО для ОС Windows в 2017 году и первом квартале 2018 года по данным AV-TEST. Последние исследования лаборатории можно увидеть в отчете [21] и на портале portal.av-atlas.org.

1.3 История развития вредоносного ПО 1.3.1 Этапы развития вредоносного ПО

В истории развития и распространения вредоносного ПО можно выделить следующие этапы:

Этап I (1972 - 1982 гг.), на котором появляются первые самовоспроизводящиеся программы

Этап II (1983 - 1986 гг.), на котором возникают первые вирусы и антивирусы

Этап III (1987 - 1989 гг.), на котором происходят первые эпидемии вредоносного ПО

Этап IV (1990 - 2004 гг.), на котором происходит технологический рост вредоносного ПО и выход в Интернет

Современный этап (2004 - 2022 гг.), на котором вредоносное ПО становится средством криминального заработка

2017 год: 40.90% - трояны; 26.41% - классические вирусы; 18.50% - скриптовые вирусы; 4.50% - трояны, ориентированные на кражу паролей; 4.29% - черви; 1.78%

- программы-вымогатели; 1.39% - бекдоры; 0.20% - боты; 0.08% - эксплойты; 0.01% - программы дозвона; 1.95% - другое вредоносное ПО.

2018 год: 51.48% - трояны; 18.93% - классические вирусы; 10.56% - скриптовые вирусы; 8.03% - трояны, ориентированные на кражу паролей; 5.01% - черви; 1.38%

- программы-вымогатели; 2.05% - бекдоры; 0.36% - боты; 0.16% - эксплойты; 0.02% - программы дозвона; 2.02% - другое вредоносное ПО. Источник: AV-TEST.

Рисунок 1 - Распределение по видам вредоносного ПО для ОС Windows

Первые персональные компьютеры появились в 1970-х годах. А уже в 1980-х годах начали появляться первые компьютерные «вирусы». В данном разделе рассматривается, зачем они были созданы, как работали и как распространялись, и описываются этапы развития вредоносного ПО, начиная с появления самовоспроизводящихся программ в 1970-х и заканчивая рассветом ключевых современных угроз, таких как программы-вымогатели.

Несмотря на то, что вредоносное ПО характеризуется намерением причинить вред пользователю, первые экземпляры вредоносного ПО таковыми не являлись. Они были созданы в качестве научных экспериментов, как демонстрационные программы или же с развлекательными целями, а имена их авторов-исследователей стали известны всему миру и вошли в историю. Так как антивирусных программ ещё не было, у первых «вирусов» не было необходимости скрывать своё присутствие в системе. Интернет в то время только зарождался, и «вирусам» приходилось распространяться через физические носители - в то время это были дискеты.

Распространившись, «вирусные» технологии попали в руки злоумышленников, и вредоносное ПО стало атаковать компьютеры пользователей с целью повреждения данных, шпионажа и вымогательства денежных средств. Теперь авторы вредоносного ПО - интернет-преступники, которые зачастую остаются безымянными. На рисунке 2 показан экспоненциальный рост количества вредоносного ПО с 1984 по 2018 год. В настоящее время количество вредоносного ПО практически достигло миллиарда экземпляров. На рисунке 3 показано количество вредоносного ПО и потенциально нежелательного ПО (potentially unwanted application, PUA) с учетом последних данных AV-TEST. Ко второму классу относятся программы, которые устанавливаются в систему без согласия пользователя или распространяются с другими программами, при этом данные экземпляры могут содержать рекламу, отслеживать действия пользователя,

All years Last 10 years Last 5 yeais Last 24 months Last 12 months

• Total Matoare

Рисунок 2 - Рост количества вредоносного ПО с 1984 по 2018 год1

Рисунок 3 - Рост количества вредоносного ПО и потенциально нежелательного

ПО с 2008 по 2022 год

1 По данным с сайта немецкого независимого исследовательского института информационной безопасности ЛУ-ТЕБТ: https://www.av-test.org/en/statistics/malware/

изменять настройки браузера, фильтровать результаты поисковых запросов и совершать другие нежелательные для пользователя действия.

Для противодействия киберпреступности возникла наука и индустрия информационной безопасности. Помимо частного и корпоративного сектора, «вирусные» технологии привлекли внимание государственных структур: появились юридические определения вредоносного ПО и законы, предусматривающие ответственность за его создание и использование; в полиции, спецслужбах и армии появились соответствующие подразделения; возникли и укоренились термины, отражающие новые виды противостояния (информационного): кибервойна (cyberwarfare), кибероружие (cyberweapon), система защиты информационного периметра (infosec defence perimeter).

В свою очередь, вредоносные программы начали использовать более изощренные методы заражения системы и применять методы маскировки.

В ответ на развитие вредоносного ПО появились антивирусные средства. Антивирусная индустрия зародилась в конце 1980-х, а уже через 10 лет антивирусы стали обязательным программным обеспечением для пользователя ПК [19].

Антивирусы одновременно защитили компьютеры пользователей и вызвали настоящую эволюцию «вирусных» технологий. Современные «вирусы» могут преследовать большое количество целей, таких как майнинг криптовалюты или кража данных банковских карт. Они применяют различные техники защиты от обнаружения антивирусными программами, такие как шифрование и модификация собственного кода во время исполнения. Их поведение сложно исследовать в лабораторных условиях, так как они могут обнаружить тестовую среду и присутствие аналитических инструментов. И, наконец, с распространением Интернета у них появился бесчисленный потенциал для заражения других компьютеров, при этом заражение может происходить даже без участия пользователя.

1.3.2 Краткая история вредоносного ПО

До появления вирусов сама идея вредоносного ПО, проникающего на компьютеры пользователей, казалась фантастической. Первая связанная с данной темой работа была посвящена самовоспроизведению программ - это была «Теория самовоспроизводящихся автоматов» фон Неймана (1949 год). Разработки фон Неймана были продолжены исследователями в 1970-80-х годах, после чего появились первые самовоспроизводящиеся программы. Данный период характеризуется единичными инцидентами и вирусами-легендами.

Впервые термин «вирус» был применён в 1982 году. Первые вирусы занимались, в основном, самовоспроизведением и выполняли несложную, зачастую бесполезную, деятельность. С ростом популярности персональных компьютеров Apple II и IBM PC распространение получили и вирусы. В 1987 происходят первые вирусные эпидемии. Тогда же появился первый по-настоящему вредоносный вирус, который представлял собой вайпер и удалял всю информацию на диске пользователя.

Данный период характеризуется как эпоха «классических вирусов» для MS-DOS. До появления глобальных компьютерных сетей большинство вирусов распространялось на съёмных носителях, в частности, на гибких дисках [22]. На заре эры персональных компьютеров многие пользователи регулярно обменивались информацией и программами на дискетах. Тогда некоторые вирусы распространялись путём заражения программ, в то время как другие устанавливали себя в загрузочный сектор диска. Вирусы в то время могли быть использованы для нарушения работы компьютера жертвы или для уничтожения файлов. При этом они не могли предоставить какую-либо обратную связь своему автору (например, передать ему обнаруженные конфиденциальные данные). Первые антивирусные утилиты уже существовали, однако уровень компьютерной безопасности был низким.

С распространением глобальных сетей всё изменилось. В ноябре 1988 года происходит эпидемия знаменитого червя Морриса, который открыл эру сетевых

червей, пришедших на смену классическим вирусам, и обратил внимание мирового сообщества на информационную безопасность. В 1988 - 1989 годах появляются первые версии многих известных антивирусных продуктов. В то время применяются традиционные (реактивные) технологии защиты, которые ориентировались на поиск сигнатур известных вирусов, информация о которых содержалась в базах данных.

В ответ на появление средств компьютерной защиты происходит технологический рост вредоносного ПО. Вирусы начинают применять шифрование своего кода, различные приёмы маскировки своего присутствия в системе (стелс-технологии), а также приёмы, препятствующие отладке и дизассемблированию (технологии бронирования). В 1990 году появляется первый полиморфный вирус, а в 1997 - метаморфный. Традиционные методы антивирусной защиты устаревают, и антивирусы начинают применять проактивные технологии защиты, включающие в себя анализ поведения программ во время их исполнения. В 1992 году появляются технологии анализа программ с применением эмуляции и использованием антивирусной песочницы.

С появлением Интернета приходит эра Интернет-червей, которые распространяются посредством электронной почты, а также через веб-сайты. Первые Интернет-черви появляются в 1999 году и используют методы социальной инженерии, чтобы убедить пользователя открыть заражённый файл. А уже в 20002001 году они начинают использовать высокотехнологичные решения, использующие уязвимости в системном и прикладном ПО, чтобы запустить вредоносный код без ведома пользователей. «В современном Интернет в среднем каждое тридцатое письмо заражено почтовым червём, около 70% всей корреспонденции - нежелательна. С ростом сети Интернет увеличивается количество потенциальных жертв вирусописателей, выход новых операционных систем влечёт за собой расширение спектра возможных путей проникновения в систему и вариантов возможной вредоносной нагрузки для вирусов» [23]. Сейчас нас окружает большое количество микропроцессоров, встроенных в электронные приборы, которые имеют доступ в сеть - так называемый Интернет вещей.

Теоретически, каждое из этих устройств может участвовать в удалённой атаке на центры обработки данных. Также в будущем можно ожидать распространение вирусов для «умных домов».

Кроме того, с появлением Интернета появилась возможность установить обратную связь инфицированной машины с оператором вредоносного ПО. Теперь вирусописатели могут не только уничтожать данные и разрушать работу систем, но и получать данные с заражённой системы, в том числе проводить вычисления на компьютере жертвы (например, в целях майнинга криптовалюты), заниматься шпионской активностью (например, кражей данных банковских карт), осуществлять удалённое управление системой (например, создавая ботнеты) и т. д. Это привело к распространению различных способов заработка с помощью вредоносного ПО и криминализации Интернета.

С появлением в 2009 году анонимной платёжной системы Биткоин выплаты стали безопасными для вирусописателей, поэтому развитие получили программы-вымогатели. Вымогатели-шифровальщики достигли своего рассвета в 2017 году и вызвали огромное количество эпидемий. Для борьбы с вымогателями-шифровальщиками недостаточно просто обнаружить и удалить вредоносное ПО, нужно ещё восстановить данные пользователя. Поэтому происходит интеграция антивирусных продуктов и технологий бекапа данных.

Похожие диссертационные работы по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Список литературы диссертационного исследования кандидат наук Переберина Анастасия Александровна, 2023 год

Список литературы

1. Переберина А. А., Костюшко А. В. Разработка инструментария для динамического анализа вредоносного программного обеспечения // Научный журнал «Труды МФТИ». Том 10, № 3 (39) 2018. URL: https://mipt.ru/upload/medialibrarv/58a/trudy-mfti-2018 3 39 .pdf (дата обращения: 20.09.2023).

2. Переберина А. А., Костюшко А. В. Обеспечение контроля над исполнением образцов вредоносного программного обеспечения при динамическом анализе // Труды 61-й Всероссийской научной конференции МФТИ. с. 181182. URL: https://mipt.ru/ science/5top 100/education/ !%D0%A4%D0%9F%D0%9C%D0%9 8.pdf (дата обращения: 20.09.2023).

3. Переберина А. А., Костюшко А. В. Проектирование программно-аппаратного комплекса для запуска вредоносного программного обеспечения // Научный журнал «Труды МФТИ». Том 10, № 2 (38) 2018. URL: https://mipt.ru/upload/medialibrary/721/trudv-mfti- 2 38 oblo.pdf (дата обращения: 20.09.2023).

4. Переберина А. А., Костюшко А. В. Проектирование программно-аппаратного комплекса для сбора данных о поведении вредоносного программного обеспечения // Труды 60-й Всероссийской научной конференции МФТИ. с. 202-204. URL: https://abitu.net/public/admin/mipt-conference/FPMI.pdf (дата обращения: 20.09.2023).

5. Alexey Kostyushko, Vladimir Strogov, Serguei Beloussov, Stanislav Protasov, Anastasia Pereberina, Nikolay Grebennikov Methods and cloud-based systems for protecting devices from malwares // USPTO. US10826919B2, 2020. URL: https://patents.google.com/patent/US 10826919B2/en (дата обращения: 20.09.2023).

6. Alexey Kostyushko, Vladimir Strogov, Serguei Beloussov, Stanislav Protasov, Anastasia Pereberina, Nikolay Grebennikov Methods and cloud-based systems for

detecting malwares by servers // USPTO. US11012449B2, 2021. URL: https://patents.google.com/patent/US11012449B2/en (дата обращения: 20.09.2023).

7. Pereberina A., Kostyushko A., Tormasov A. An Approach to Dynamic Malware Analysis Based on System and Application Code Split // Journal of Computer Virology and Hacking Techniques. Volume 18, issue 3, pp. 231-241, Sep. 2022. 10.1007/s 11416-021 -00412-z. Published Jan. 2022.

8. Pereberina A., Kostyushko A., Tormasov A. An algorithm for scheduling of threads for system and application code split approach in dynamic malware analysis // Journal of Computer Virology and Hacking Techniques. 2023. 10.1007/ s11416-023-00473-2. Published Apr. 2023.

9. Переберина А. А. Проектирование программно-аппаратного комплекса для автоматического запуска вредоносного программного обеспечения и разработка инструментария для динамического анализа // Магистерская диссертация. 2020. URL: http://cs.mipt.ru/wp/wp-content/uploads/2018/06/%D0%9F%D0%B5%D 1 %80%D0%B5%D0%B 1%D0 %B5%D1%80%D0%B8%D0%BD%D0%B0-%D0%90.%D0%90..pdf (дата обращения: 20.09.2023).

10. Egele, M., Scholte, Th., Kirda, E., Kruegel, C. A survey on automated dynamic malware-analysis techniques and tools // ACM Computing Surveys. Vol. 44, No. 2, Article 6 (2012).

11. S. Z. M. Shaid, M. A. Maarof In memory detection of Windows API call hooking technique // 2015 International Conference on Computer, Communications, and Control Technology (I4CT). 2015, pp. 294-298.

12. Y. Ye, D. Wang, T. Li, D. Ye IMDS: intelligent malware detection system // Proceedings of the 13 th ACM SIGKDD international conference on Knowledge discovery and data mining. San Jose, California, USA, 2007.

13. Nitin Kanaskar, Remzi Seker, Jiang Bian, Vir V. Phoha Dynamical System Theory for the Detection of Anomalous Behavior in Computer Programs // IEEE

TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS - PART C: APPLICATIONS AND REVIEWS. VOL. 42, NO. 6, NOVEMBER 2012.

14. Ucci D., Aniello L., Baldoni R. Survey on the Usage of Machine Learning Techniques for Malware Analysis // ACM Transactions on the Web. 2017. Vol. 1, No. 1, Article 1. URL: https://arxiv.org/pdf/1710.08189.pdf (дата обращения: 20.09.2023).

15. Pfeffera A., Ruttenberga B., Kellogga L., Howarda M., Calla C., O'Connora A., Takataa G., Reillya S., Pattena T., Taylora J., Halla R., Lakhotiab A., Milesb C., Scofieldc D., Frankc J. Artificial Intelligence Based Malware Analysis. 2017. URL: https://arxiv.org/pdf/1704.08716.pdf (дата обращения: 20.09.2023).

16. Plumerault, F., David, B. DBI, debuggers, VM: gotta catch them all // J Comput Virol Hack Tech 17. 105-117 (2021). URL: https://doi.org/10.1007/s11416-020-00371-x (дата обращения: 20.09.2023).

17. Plumerault, F., David, B. Exploiting flaws in Windbg: how to escape or fool debuggers from existing flaws // J Comput Virol Hack Tech 16. 173-183 (2020). URL: https://doi.org/10.1007/s 11416-020-00347-x (дата обращения: 20.09.2023).

18. Давайте определимся. Блог компании Dr.Web. Выпуск 641. URL: https://www.drweb.ru/pravda/issue/7numbeF641 (дата обращения: 20.09.2023).

19. Касперский Е. Компьютерное зловредство // СПб.: Питер. 2009. 208 с.

20. Лекция 3: Классификация вирусов // Информационная безопасность: Антивирусная защита компьютерных систем. 2007. Интуит, национальный открытый университет. URL: https: //www. intuit.ru/studies/professional retraining/940/courses/15 5/lecture/429 7 (дата обращения: 20.09.2023).

21. SECURITY REPORT 2019/2020 // AV-TEST. URL: https://www.av-test.org/fileadmin/pdf/security report/AV-TEST Security Report 2019-2020.pdf (дата обращения: 20.09.2023).

22. Sack H. Fred Cohen and the first Computer Virus // scihi.org. 2021. URL: http://scihi.org/fred-cohen-and-the-first-computer-virus/ (дата обращения: 20.09.2023).

23. Лекция 2: История компьютерных вирусов // Информационная безопасность: Антивирусная защита компьютерных систем. 2007. Интуит, национальный открытый университет. URL: https: //www. intuit.ru/studies/professional retraining/940/courses/15 5/lecture/429

5 (дата обращения: 20.09.2023).

24. Highland H. J. A History Of Computer Viruses - Introduction // Computers & Security, 16 (1997). pp. 412-415. ISSN 0167-4048, doi:10.1016/S0167-4048(97)82245-6.

25. Макаренко С. И. Информационная безопасность: учебное пособие. // Ставрополь: СФ МГГУ им. М. А. Шолохова, 2009. 372 с.

26. История компьютерных вирусов // Википедия. 2022. URL: https://ru.wikipedia.org/wiki/История компьютерных вирусов (дата обращения: 20.09.2023).

27. Highland H. J. A History Of Computer Viruses - The Famous 'Trio' // Computers

6 Security, 16 (1997). pp. 416-429. URL: https://www.cs.umd.edu/class/spring2018/cmsc414-0101/papers/3viruses.pdf (дата обращения: 20.09.2023).

28. Zeltser L. The Evolution of Malicious Agents // 2020. URL: https://zeltser.com/media/docs/malicious-agents.pdf (дата обращения: 20.09.2023).

29. Beaucamps P. Advanced Polymorphic Techniques // Proceedings of world academy of science, engineering and technology. 2007. Vol. 25, issn 1307-6884.

30. Spinellis, D. Reliable identification of bounded-length viruses is NP-complete // IEEE Transactions on Information Theory. Vol. 49(1), pp. 280-284. January 2003. DOI: 10.1109/TIT.2002.806137.

31. Краткая история хакеров // Лаборатория Касперского. URL: https://encyclopedia.kaspersky.ru/knowledge/a-brief-history-of-hacking/ (дата обращения: 20.09.2023).

32. Kasslin K. T-110.6220: Malware Analysis and Antivirus Technologies Windows Kernel Malware // F-Secure. 2010. URL: http://www.cse.tkk.fi/fi/opinnot/T-110.6220/2010_Spring_Malware_Analysis_and_Antivirus_Tchnologies/luennot-files/T-110.6220 Kernel.pdf (дата обращения: 20.09.2023).

33. 2017 state of malware report // Malwarebytes LABS. 2017. URL: https: //www. malwarebytes. com/pdf/white-papers/stateofmalware .pdf (дата обращения: 20.09.2023).

34. Распознавание программ-вымогателей (ransomware): чем отличаются трояны-шифровальщики // Лаборатория Касперского. URL: https://www.kaspersky.ru/resource-center/threats/ransomware-attacks-and-types (дата обращения: 20.09.2023).

35. Young A., Yung M. Cryptovirology: extortion-based security threats and countermeasures // IEEE Symposium on Security and Privacy. 1996. pp. 129-140. doi: 10.1109/SECPRI. 1996.502676.

36. Johnson K. Bypassing PatchGuard on Windows x64 // uninformed.org. 2005. URL: http://uninformed.org/index.cgi?v=3&a=3 (дата обращения: 20.09.2023).

37. Johnson K. Subverting PatchGuard Version 2 // uninformed.org. 2006. URL: http://uninformed.org/index.cgi?v=6&a= 1 (дата обращения: 20.09.2023).

38. Johnson K. A Brief Analysis of PatchGuard Version 3 // uninformed.org. 2007. URL: http://uninformed.org/index.cgi?v=8&a=5 (дата обращения: 20.09.2023).

39. Fisher D. Ken "Skywing" Johnson joins Microsoft security team // threatpost.com. 2009. URL : https://threatpost.com/ken-skywing-johnson-joins-microsoft-security-team-032509/72482/ (дата обращения: 20.09.2023).

40. Ermolov M., Shishkin A. Bypassing patchguard on Windows 8.1 and Windows 10 // Positive Technologies. 2014. URL : http://2014.zeronights.ru/assets/files/slides/patchguard.pdf (дата обращения: 20.09.2023).

41. Memory Corruption Attacks The (almost) Complete History // BlackHat USA. 2010. URL: http://media.blackhat.com/bh-us-10/whitepapers/Meer/BlackHat-USA-2010-Meer-History-of-Memory-Corruption-Attacks-wp.pdf (дата обращения: 20.09.2023).

42. Younan Y. An overview of common programming security vulnerabilities and possible solutions // Брюссельский свободный университет. 2003. URL: http://fort-knox.org/thesis.pdf (дата обращения: 20.09.2023).

43. Kocher P., Genkin D., Gruss D., Haas W., Hamburg M., Lipp M., Mangard S., Prescher T., Schwarz M., Yarom Y. Spectre Attacks: Exploiting Speculative Execution // arxiv.org. 2018. URL: https://arxiv.org/abs/1801.01203 (дата обращения: 20.09.2023).

44. Lipp M., Schwarz M., Gruss D., Prescher T., Haas W., Mangard S., Kocher P., Genkin D., Yarom Y., Hamburg M. Meltdown // arxiv.org. 2018. URL: https://arxiv.org/abs/1801.01207 (дата обращения: 20.09.2023).

45. Abadi, M. N., Budiu, M., Erlingsson, Ü., Ligatti, J. Control-Flow Integrity: Principles, Implementations, and Applications // Proceedings of the 12th ACM conference on Computer and communications security. 2005. pp. 340-353. doi: 10.1145/1102120.1102165. ISBN 1-59593-226-7.

46. A Technical Look at Intel's Control-flow Enforcement Technology // Intel. 2020. URL:

https://www.intel.com/content/www/us/en/developer/articles/technical/technical-look-control-flow-enforcement-

technology.html?wapkw=control%20flow%20enforcement%20technology%20C ET (дата обращения: 20.09.2023).

47. Mitigations that are built in to Windows 10 // Microsoft. 2022. URL: https://docs.microsoft.com/en-us/windows/securitv/threat-protection/overview-of-threat-mitigations-in-windows-10#mitigations-that-are-built-in-to-windows-10 (дата обращения: 20.09.2023).

48. Protect devices from exploits // Microsoft. 2022. URL: https://leam.microsoft.com/en-us/microsoft-365/security/defender-

endpoint/exploit-protection?view=o365-worldwide (дата обращения: 20.09.2023).

49. Enable virtualization-based protection of code integrity // Microsoft. 2022. URL: https://learn.microsofit.com/en-us/windows/securitv/threat-protection/device-guard/enable-virtualization-based-protection-of-code-integrity (дата обращения: 20.09.2023).

50. Isolated User Mode (IUM) Processes // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/isolated-user-mode--ium--processes (дата обращения: 20.09.2023).

51. Ege Balci Искусство антидетекта. Часть 1 - Введение в техники детектирования. // securitylab.ru. 2017. URL: https: //www. securitylab. ru/analytics/485677. php (дата обращения: 20.09.2023).

52. Wannacry ransomware campaign exploiting smb vulnerability // CERT-EU. 2017. URL: https: //cert.europa.eu/static/SecurityAdvisories/2017/CERT-EU- SA2017-012.pdf (дата обращения: 20.09.2023).

53. M. Carpenter, T. Liston, E. Skoudis Hiding virtualization from attackers and malware // Security Privacy, IEEE 5 (3) (2007) 62-65. doi:10.1109/MSP.2007.63.

54. Wojner Ch. Mass Malware Analysis: A Do-It-Yourself Kit // 2009. URL: https://cert.at/media/files/downloads/papers/mass malware analysis/files/cert.at-mass malware analysis 1.0.pdf (дата обращения: 20.09.2023).

55. Cuckoo Sandbox What is Cuckoo7 // URL: https://cuckoo.sh/docs/introduction/what.html (дата обращения: 20.09.2023).

56. Building an Automated Behavioral Malware Analysis Environment using Open Source Software // SANS Institute. 2009. https://www.sans.org/reading-room/whitepapers/tools/buildingautomated-behavioral-malware-analysis-environment-open-source-software-33129 (дата обращения: 20.09.2023).

57. Winlogon and GINA. // Microsoft. 2021. URL: https: //learn. microsoft.com/en-us/windows/win3 2/secauthn/winlogon-and- gina (дата обращения: 20.09.2023).

58. Filter Manager Concepts. // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows-hardware/drivers/ifs/filter-manager-concepts (дата обращения: 20.09.2023).

59. Pietrek, M. Peering Inside the PE: A Tour of the Win32 Portable Executable File Format // Microsoft Systems Journal. 1994. URL: https://learn.microsoft.com/en-us/previous-versions/ms809762(v=msdn.10) (дата обращения: 20.09.2023).

60. PE-формат. Часть 3 — Импорт // kaimi.io. 2011. URL: https://kaimi.io/2011/09/pe-format-import/ (дата обращения: 20.09.2023).

61. Касперски, К. Путь воина — внедрение в PE/COFF-файлы // Системный администратор. №6 (19). 2004. URL: http://samag.ru/archive/article/297 (дата обращения: 20.09.2023).

62. Hosseini, A. Ten Process Injection Techniques: A Technical Survey Of Common And Trending Process Injection Techniques // Elastic. 2017. URL: https://www.elastic.co/blog/ten-process-iniection-techniques-technical-survey-common-and-trending-process (дата обращения: 20.09.2023).

63. Process Handles and Identifiers. // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/process-handles-and-identifiers (дата обращения: 20.09.2023).

64. Shilon, O. On API-MS-WIN-XXXXX.DLL, and Other Dependency Walker Glitches // 2016. URL: https://ofekshilon.com/2016/03/27/on-api-ms-win-xxxxx-dll-and-other-dependency-walker-glitches/ (дата обращения: 20.09.2023).

65. Api set resolution // 2017. URL: https://lucasg.github.io/2017/10/15/Api-set-resolution/ (дата обращения: 20.09.2023).

66. Structured Exception Handling. // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/debug/structured-exception-handling (дата обращения: 20.09.2023).

67. Pietrek, M. A Crash Course on the Depths of Win32™ Structured Exception Handling // Microsoft Systems Journal. 1997. URL: http://bytepointer.com/resources/pietrek crash course depths of win32 seh.htm (дата обращения: 20.09.2023).

68. Exception Dispatching // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/debug/exception-dispatching (дата обращения: 20.09.2023).

69. Exception Handling // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/debug/exception-handling (дата обращения: 20.09.2023).

70. About Structured Exception Handling // Microsoft. 2021. URL: https://leam.microsoft.com/en-us/windows/win32/debug/about-structured-exception-handling (дата обращения: 20.09.2023).

71. Frame-based Exception Handling // Microsoft. 2021. URL: https://leam.microsoft.com/en-us/windows/win32/debug/frame-based-exception-handling (дата обращения: 20.09.2023).

72. Vectored Exception Handling // Microsoft. 2021. URL: https://leam.microsoft.com/en-us/windows/win32/debug/vectored-exception-handling (дата обращения: 20.09.2023).

73. Russinovich, M., Solomon, D., Ionescu, A. Windows Internals (6th ed.). Parts 1 and 2 // Redmond, Washington: Microsoft Press. Sep. 2012.

74. Scheduling Priorities // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/scheduling-priorities (дата обращения: 20.09.2023).

75. Priority Inversion // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/priority-inversion (дата обращения: 20.09.2023).

76. Priority Boosts // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/priority-boosts (дата обращения: 20.09.2023).

77. Li, T., Baumberger, D., Hahn, S. Efficient and Scalable Multiprocessor Fair Scheduling Using Distributed Weighted Round-Robin // ACM SIGPLAN Notices 44(4):65-74. D0I:10.1145/1594835.1504188. Feb. 2009.

78. Demers, A., Keshav, S., Shenker. S. Analysis and simulation of a fair queueing algorithm // In Proceedings of ACM SIGCOMM'89, pages 1-12, Sept. 1989.

79. Goyal, P., Vin, H. M., Cheng, H. Start-time fair queueing: A scheduling algorithm for integrated services packet switching networks // IEEE/ACM Transactions on Networking, 5(5): 690-704, Oct. 1997.

80. Duda, K. J., Cheriton, D. R. Borrowed-virtual-time (BVT) scheduling: Supporting latency-sensitive threads in a generalpurpose scheduler // In Proceedings of the 17th ACM Symposium on Operating System Principles, pages 261-276, Dec. 1999.

81. Chandra, A., Adler, M., Goyal, P., Shenoy, P. Surplus fair scheduling: A proportional-share CPU scheduling algorithm for symmetric multiprocessors // In Proceedings of the 4th Symposium on Operating Systems Design and Implementation, pages 45-58, Oct. 2000.

82. Goyal, P., Guo, X., Vin, H. M. A hierarchical CPU scheduler for multimedia operating systems // In Proceedings of the Second Symposium on Operating Systems Design and Implementation, pages 107-121, Oct. 1996.

83. Jones, M. Inside the Linux 2.6 Completely Fair Scheduler // IBM Developer. 2009. URL: https://developer.ibm.com/tutorials/l-completely-fair-scheduler (дата обращения: 20.09.2023).

84. Shreedhar, M., Varghese, G. Efficient fair queueing using deficit round robin // ACM SIGCOMM Computer Communication Review. 25 (4): 231. 1995. doi: 10.1145/217391.217453. ISSN 0146-4833.

85. Lenzini, L., Mingozzi, E., Stea, G. Aliquem: A novel DRR implementation to achieve better latency and fairness at O(1) complexity // IEEE 2002 Tenth IEEE International Workshop on Quality of Service (Cat. No.02EX564). p. 77. 2002. doi: 10.1109/IWQoS.2002.1006576. ISBN 978-0-7803-7426-3. S2CID 62158653.

86. Tabatabaee, S. M., Le Boudec, J.-Y. Deficit Round-Robin: A Second Network Calculus Analysis // 2021 IEEE 27th Real-Time and Embedded Technology and Applications Symposium (RTAS). Nashville, TN, USA: IEEE: 171-183. 2021. doi: 10.1109/RTAS52030.2021.00022. ISBN 978-1-6654-0386-3.

87. Parekh, A. K., Gallager, R. G. A generalized processor sharing approach to flow control in integrated services networks: The single-node case // IEEE/ACM Transactions on Networking. 1 (3): 344. 1993. doi:10.1109/90.234856.

88. Timekeeping in VMware Virtual Machines // VMware. 2011. URL: https://www.vmware.com/files/pdf/techpaper/Timekeeping-In-VirtualMachines.pdf (дата обращения: 20.09.2023).

89. System time // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win3 2/sysinfo/system-time (дата обращения: 20.09.2023).

90. Local time // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/sysinfo/local-time (дата обращения: 20.09.2023).

91. File times // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/sysinfo/file-times (дата обращения: 20.09.2023).

92. Windows time // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win32/sysinfo/windows-time (дата обращения: 20.09.2023).

93. Interrupt time // Microsoft. 2021. URL: https://learn.microsoft.com/en-us/windows/win3 2/sysinfo/interrupt-time (дата обращения: 20.09.2023).

94. KUSER_SHARED_DATA structure (ntddk.h) // Microsoft. 2022. URL: https://leam.microsoft.com/en-us/windows-hardware/drivers/ddi/ntddk/ns-ntddk-kuser shared data (дата обращения: 20.09.2023).

95. Acquiring high-resolution time stamps // Microsoft. 2023. URL: https://leam.microsoft.com/en-us/windows/win32/sysinfo/acquiring-high-resolution-time-stamps (дата обращения: 20.09.2023).

96. Zachary Amsden, Timekeeping Virtualization for X86-Based Architectures // Red Hat. 2010. URL: https://www.kernel.org/doc/html/latest/virt/kvm/x86/timekeeping.html (дата обращения: 20.09.2023).

97. Intel® 64 and IA-32 Architectures Software Developer's Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D and 4 // Intel. 2022. URL: https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html (дата обращения: 20.09.2023).

98. RtlAddFunctionTable function // Microsoft. 2022. URL: https://leam.microsoft.com/en-us/windows/win32/api/winnt/nf-winnt-rtladdfunctiontable (дата обращения: 20.09.2023).

99. PE Format. The .pdata Section // Microsoft. 2022. URL: https://leam.microsoft.com/en-us/windows/win32/debug/pe-format#the-pdata-section (дата обращения: 20.09.2023).

100. Ionescu, A. The Linux kernel hidden inside Windows 10 // BlackHat. 2016. URL: https://github.com/ionescu007/lxss/blob/master/The%20Linux%20kernel%20hid den%20inside%20windows%2010.pdf (дата обращения: 20.09.2023).

101. Hammons, J. Pico Process Overview // Microsoft. 2016. URL: https://learn.microsoft.com/en-us/archive/blogs/wsl/pico-process-overview (дата обращения: 20.09.2023).

102. User-Mode Scheduling // Microsoft. 2022. URL: https://learn.microsoft.com/en-us/windows/win32/procthread/user-mode-scheduling (дата обращения: 20.09.2023).

103. Uninformed TLB Desynchronization (Split TLB) // uninformed.org. 2007. URL: http://uninformed.org/index.cgi?v=6&a=1&p=21 (дата обращения: 20.09.2023).

104. Mayap Kamga, C. L., Hagimont, D. Virtual processor frequency emulation // 19th International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2013) held as part of WORLDCOMP'13, 22 July 2013 - 25 July 2013 (Las Vegas, United States).

105. Mayap Kamga, C. L. CPU Frequency Emulation Based on DVFS // 2012 IEEE Fifth International Conference on Utility and Cloud Computing, 2012, pp. 367374, doi: 10.1109/UCC.2012.34.

106. 2023 state of malware report // Malwarebytes LABS. 2023. URL: https ://go.malwarebytes.com/rs/805-USG-

300/images/MWB State of Malware Report 2023.pdf (дата обращения: 20.09.2023).

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.