Изучение вредоносного ПО
Анализ вредоносного ПО — это изучение или процесс определения функциональности, происхождения и потенциального воздействия данного образца вредоносного ПО, такого как вирус , червь , троянский конь , руткит или бэкдор . [1] Вредоносное ПО или вредоносное программное обеспечение — это любое компьютерное программное обеспечение, предназначенное для нанесения вреда операционной системе хоста или кражи конфиденциальных данных у пользователей, организаций или компаний. Вредоносное ПО может включать программное обеспечение, которое собирает информацию о пользователях без разрешения. [2]
Варианты использования
Существует три типичных варианта использования, обусловливающих необходимость анализа вредоносного ПО:
- Управление инцидентами компьютерной безопасности : если организация обнаруживает или подозревает, что в ее системы могло проникнуть вредоносное ПО, группа реагирования может провести анализ вредоносного ПО на всех потенциальных образцах, обнаруженных в процессе расследования, чтобы определить, являются ли они вредоносным ПО, и если да, то какое влияние это вредоносное ПО может оказать на системы в среде целевой организации.
- Исследование вредоносного ПО : Исследователи вредоносного ПО в академических или отраслевых кругах могут проводить анализ вредоносного ПО просто для того, чтобы понять, как ведет себя вредоносное ПО, и какие новейшие методы используются при его создании.
- Извлечение индикаторов компрометации : Поставщики программных продуктов и решений могут выполнять массовый анализ вредоносных программ с целью выявления потенциальных новых индикаторов компрометации; эта информация затем может быть использована для продукта или решения по безопасности, чтобы помочь организациям лучше защитить себя от атак вредоносных программ.
Типы
Метод, с помощью которого выполняется анализ вредоносного ПО, обычно относится к одному из двух типов:
- Статический анализ вредоносных программ : статический анализ или анализ кода обычно выполняется путем анализа различных ресурсов двоичного файла без его выполнения и изучения каждого компонента. Двоичный файл также может быть разобран (или подвергнут обратному проектированию ) с помощью дизассемблера, такого как IDA или Ghidra. Машинный код иногда может быть переведен в ассемблерный код, который может быть прочитан и понят людьми: аналитик вредоносных программ может затем прочитать сборку, поскольку она соотносится с определенными функциями и действиями внутри программы, затем понять инструкции сборки и получить лучшую визуализацию того, что делает программа и как она была изначально спроектирована. Просмотр сборки позволяет аналитику вредоносных программ/обратному проектированию лучше понять, что должно произойти по сравнению с тем, что происходит на самом деле, и начать составлять карту скрытых действий или непреднамеренных функций. Некоторые современные вредоносные программы создаются с использованием уклончивых методов, чтобы обойти этот тип анализа, например, путем внедрения синтаксических ошибок кода, которые будут сбивать с толку дизассемблеры, но которые все равно будут функционировать во время фактического выполнения. [3]
- Динамический анализ вредоносных программ : динамический или поведенческий анализ выполняется путем наблюдения за поведением вредоносной программы, пока она фактически работает на хост-системе. Эта форма анализа часто выполняется в среде песочницы , чтобы предотвратить фактическое заражение производственных систем вредоносной программой; многие такие песочницы представляют собой виртуальные системы, которые можно легко откатить до чистого состояния после завершения анализа. Вредоносную программу также можно отлаживать во время работы с помощью отладчика, такого как GDB или WinDbg, чтобы пошагово наблюдать за поведением и воздействием вредоносной программы на хост-систему, пока обрабатываются ее инструкции. Современное вредоносное ПО может демонстрировать широкий спектр уклончивых методов, предназначенных для обхода динамического анализа, включая тестирование для виртуальных сред или активных отладчиков, задержку выполнения вредоносных полезных нагрузок или требование некоторой формы интерактивного ввода данных пользователем. [4]
Этапы
Проверка вредоносного программного обеспечения включает несколько этапов, включая, помимо прочего, следующее:
- Ручное изменение кода
- Интерактивный анализ поведения
- Анализ статических свойств
- Полностью автоматизированный анализ
Ссылки
- ^ "Международный журнал передовых исследований в области анализа вредоносного ПО" (PDF) . ijarcsse. Архивировано из оригинала (PDF) 2016-04-18 . Получено 2016-05-30 .
- ^ "Определение вредоносного ПО" . Получено 2016-05-30 .
- ^ Хониг, Эндрю; Сикорски, Майкл (февраль 2012 г.). Практический анализ вредоносных программ. No Starch Press. ISBN 9781593272906. Получено 5 июля 2016 г.
- ^ Керагала, Дилшан (январь 2016 г.). «Обнаружение вредоносных программ и методы обхода песочницы». Институт SANS.