Исследователи из университета Северной Каролины в содружестве с Майкрософт создали прототип виртуальной системы предотвращения вторжений, которая обеспечивает эффективную защиту ОС от руткитов режима ядра без заметных потерь в производительности.
Руткиты режима ядра маскируют свое присутствие и деятельность на зараженной машине, перехватывая системные функции и подменяя управляющую информацию на уровне ядра. Система HookSafe защищает гостевую ОС от несанкционированного доступа руткитов режима ядра, работая в режиме гипервизора.
Прототип системы был протестирован в среде Ubuntu Linux 8.10, где было идентифицировано около 6 тыс. точек возможного перехвата, разбросанных по 40 физическим страницам. HookSafe успешно отразила атаки девяти известных руткитов, ориентированных на Linux. Семь из них потерпели неудачу при попытке инсталляции, а два, внедрившись в ядро, не смогли замаскироваться. Максимальное снижение производительности из-за присутствия гипервизора составило 6%.
Разработчики признают, что HookSafe — частичное решение проблемы, к тому же не лишенное недостатков. Система предотвращает только те атаки, которые она может распознать, поэтому база сигнатур указателей должна быть создана заранее. Самостоятельно локализовать нужные данные в пространстве ядра она не способна, они выявляются путем динамического анализа при прогоне незараженной версии ОС на эмуляторе. Этот метод несовершенен, так как часть указателей может быть упущена и не будет занесена в базу. В реальных условиях ситуация усугубится, когда усилится приток программных обновлений и новых драйверов. Кроме того, HookSafe защищает ядро, но не предотвращает запуск руткита.
Отчет [PDF 188 Кб] о новой разработке был представлен на 16-й конференции ACM по компьютерной и сетевой безопасности (CCS 2009), недавно проведенной в Чикаго. Авторы проекта планируют продолжить исследования, сосредоточившись на тотальной защите ядра. Они также работают над версией HookSafe для Windows.
HookSafe — защита от руткитов