Поиск следов RootKit уровня ядра на сайтах

26.10.2019

Сайты Черкасс для обнаружения присутствия RootKit уровня ядра иногда предлагают проверить различные особенности RootKit. Зная особенности некоторых RootKit уровня ядра, вы можете обнаружить их установку. Например, Knark скрывает процесс, если вы посылаете ему сигнал 31. Это свойство можно использовать, чтобы обнаружить факт инсталляции Knark. Запустите процесс (скажем, просто выведя «hello world» на экран) и пошлите ему сигнал 31 (kill -31 pid). Если он не обнаруживается в списке процессов, но печать на экран продолжается, на машине, вероятно, инсталлирован Knark. К сожалению, данный способ не совсем надежен, так как у других RootKit уровня ядра это свойство отсутствует. Более того, атакующий, которому не нужна подобная возможность, в состоянии изменить исходный код Knark и устранить ее, что приведет к повышению скрытности атаки.

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

Хотя описанные приемы достаточно эффективны, существует слишком большое разнообразие инструментов с RootKit уровня ядра на сайтах, чтобы они перехватили много атак. Более того, поиск присутствия этих особенностей последовательным перебором RootKit уровня ядра включает массу работы, требующей вашего внимания. Эти методы могут быть хорошей идеей, если вы подозреваете, что RootKit уровня ядра уже установлен, но как у вас появятся такие подозрения? Как вы узнаете, что необходимо дальнейшее расследование?