T1622: Предотвращение отладки

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

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

Разные злоумышленники могут выполнять разные проверки в зависимости от цели и других факторов, в частности использовать вызов функций IsDebuggerPresent() и NtQueryInformationProcess() нативного API или проверять флаг BeingDebugged в блоке операционного окружения процесса (PEB). Поиск артефактов отладки также может включать проверку времени, аппаратных точек останова, обработки прерываний или генерации исключений (в предположении, что отладчик будет "поглощать" или обрабатывать потенциальные ошибки.

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

Какие продукты Positive Technologies покрывают технику

Описание методов обнаружения техники пока недоступно

Способы обнаружения

IDDS0009Источник и компонент данныхПроцесс: Создание процессаОписание

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

IDDS0009Источник и компонент данныхПроцесс: Вызовы API ОСОписание

Отслеживайте вызовы API (такие как IsDebuggerPresent()), которые могут использовать различные средства для выявления отладчиков и обхода отладочной среды. Иногда бывает сложно выявить признаки обхода отладчиков — эффективность зависит от методов, применяемых злоумышленниками, и необходимых мер по мониторингу.

IDDS0015Источник и компонент данныхЖурналы приложений: Содержимое журналов приложенийОписание

Отслеживайте признаки аномальной и потенциально вредоносной активности в журналах отладчиков.

IDDS0017Источник и компонент данныхКоманда: Выполнение командОписание

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