четверг, 4 августа 2011 г.

Противодействие криминалистической экспертизе со стороны вредоносных программ

Вчера мы выпустили исследовательский отчет об одном интересном троянце Win32/Hodprot. Интересен он тем, что использует довольно хитрые механизмы противодействия своему обнаружению в системе. Итак, давайте обо всем по порядку ;)

Процесс заражения системы можно описать следующей схемой:




Интересно, что для повышения привилегий используется уязвимость MS10-015, которая одинаково хорошо работает на всех 32-битных версиях винды и не так часто встречается в других вредоносных программах. Следующим интересным моментом является способ отключения Windows File Protection, собственно подменяется библиотека sfcfiles.dll, которая содержит список файлов для восстановления и некоторые файлы из этого списка уже исключены. Модифицированная sfcfiles.dll, является некоторой отправной точкой загрузки зловреда, после перезагрузки системы, т.к. в процессе загрузки системы winlogon автоматом подгружает эту библиотеку. Если изобразить все это в виде схемы, то выглядеть это будет так:


В общем троян интересный, но давайте вернемся к теме поста. А дело все в том, что кроме использования не стандартной техники выживания после перезагрузки, Win32/Hodprot использует еще интересную схему хранения своих компонентов и полезной нагрузки. А точнее хранит он ее в реестре в зашифрованном виде, что затрудняет поиск на зараженной системе компонентов этого троянца и усложняет криминалистическую экспертизу, т.к. стандартные инструменты тут уже будут бессильны. Хранится все в таком вот виде:


Каждый ключ реестра предназначен для хранения определенного типа информации:


Согласитесь далеко не каждый криминалист сможет распознать в этом ключе реестра какой-то злой умысел, поэтому образ одной такой зараженной системы и попал к нам в руки в процессе анализа которой мы распознали активные компоненты Win32/Hodprot. В последнее время и особенно в банковских троянах все чаще встречаются техники противодействия криминалистической экспертизе. К примеру, в Win32/Shiz была команда !kill_os для модификации секторов жесткого диска и удаления системных компонент, дабы сделать систему неработоспособной.

И кстати, тут еще опубликовали статистику по распространению наиболее активных семейств банковских троянцев ;)