Rootkit
Содержание:
- Методы обнаружения руткитов в системе
- Как обнаружить руткит?
- Как удалить руткиты?
- Так что же такое руткиты?
- Список поддерживаемых операционных систем
- Защита от LKM-руткитов
- Что делают руткиты?
- Обзор бесплатных программ для удаления руткитов
- Концепт-руткиты
- Почему руткиты сложно обнаружить и удалить?
- Как удалить руткиты
- Как удалить руткит программой RootkitBuster.
- Steps to Remove a Rootkit Using the MalwareBytes Anti-Rootkit Tool
Методы обнаружения руткитов в системе
С точки зрения обнаружения, руткиты относятся к высокотехнологичным кодам. Они спрятаны без явных признаков наличия в системе. Его не видят многие антивирусные и сканирующие программы. В идеале, конечно, они должны перехватить подозрительные сигналы о передаче информации разных приложений ПК и выявлять наличие руткита сразу. Но, чаще руткиты заражают компьютер, оставаясь не замеченными, и стирает следы своей деятельности. Антивирусник в таких условиях не выявляет вредоносный объект, и, соответственно, не пытается его устранить.
Признаки, указывающие на присутствие руткита в ОС:
Периодическое зависание работы ПК
Разные действия руткита влияют на нагрузку операционной системы. Если при работе на компьютере запущено малое количество программ и приложений, и ПК зависает по неоправданным причинам, возможно, в систему внедрился руткит.
Пересылка сообщений по интернету при деактивированных приложениях, отвечающих за данный процесс
Руткиты часто управляются хакерами вручную и те производят свои действия в определенное подходящее время, не постоянно. Поэтому определить этот факт достаточно сложно.
Основные симптомы, что в системе появился руткит:
- Исчезновение конфиденциальной личной информации с ПК
- Неподтвержденный доступ к страницам соц. сетей, почте и другим сервисам
- Блокировка (полная или частичная) доступа к ПК
- Медлительная работа устройства
- Беспричинное увеличение расхода оперативной памяти в ожидающем режиме
- Снижение качества интернет связи
Если вы заметили один или несколько таких симптомов, проведите полную проверку своего устройства на наличие руткитов.
Как обнаружить руткит?
Обнаружение и удаление руткитов чрезвычайно сложно, а в некоторых случаях практически невозможно без современного оборудования для обнаружения руткитов.
Это связано с тем, что после установки руткит принимает меры для обеспечения своего выживания, скрывая свое присутствие в хост-системе.
Руткиты могут обходить стандартные инструменты операционной системы, используемые для сканирования и мониторинга, а также подрывать работу антивирусного программного обеспечения, предназначенного для их обнаружения.
Скомпрометированное устройство может быть не в состоянии обнаружить несанкционированные модификации самого себя или своих компонентов.
Из-за этих технических сложностей для обнаружения руткитов можно использовать несколько различных подходов, в том числе:
Ищем ошибки и глюки
Руткиты встраиваются в системные процессы, перехватывая, а иногда и изменяя их действия.
Из-за этого руткиты часто нестабильны, вызывая заметные проблемы с компьютером, такие как замедление работы системы, сбои программного обеспечения, медленные процессы загрузки и даже пресловутый «синий экран смерти».
Если ваше устройство используется как часть ботнета, вы заметите значительную загрузку ЦП даже без запуска каких-либо приложений, а также быструю разрядку аккумулятора и даже перегрев устройства.
Обычно, если ваш компьютер внезапно выходит из строя, вам необходимо продолжить расследование на предмет заражения вредоносным ПО, включая руткиты.
Установка антивирусного программного обеспечения
Расширенные антивирусные пакеты поставляются с проприетарными инструментами сканирования руткитов (один из моих любимых инструментов для обнаружения руткитов — Bitdefender).
Во-первых, эти сканеры сравнивают ваши файлы с базой данных известных вредоносных программ — это может помочь найти руткит до того, как он встроится в ваше устройство, но не после того, как он получит root-доступ.
Затем сканеры используют анализ поведения, чтобы определить, не выполняет ли какой-либо из ваших файлов необычную активность на вашем диске.
Это может быть особенно эффективно для обнаружения руткитов пользовательского режима, которые подключаются к надежным файлам приложений.
Bitdefender также предлагает специальный режим восстановления, который перезагружает вашу систему и запускается перед загрузкой вашей операционной системы, чтобы обнаружить руткиты режима ядра.
Использование альтернативного надежного носителя
Альтернативным доверенным носителем является другое устройство (это может быть другой компьютер или USB-накопитель), которое можно использовать для сканирования зараженного устройства.
Поскольку альтернативный доверенный носитель запускается до загрузки системы, руткит не может использовать операционную систему зараженного устройства для сокрытия своего присутствия.
«Panda Dome» включает загрузочный USB-комплект Rescue Kit, который может сканировать ваш компьютер во время загрузки.
Анализ дампа памяти
Дампы памяти содержат список энергозависимой памяти компьютера (оперативной памяти).
Энергозависимые данные — это данные, которые хранятся во временной памяти компьютера во время его работы.
Дампы памяти содержат ценные изменчивые данные, показывающие состояние устройства до инцидента, такого как сбой или нарушение безопасности.
Анализ дампа памяти может предоставить уникальные данные, такие как сетевые соединения, учетные данные, сообщения чата, запущенные процессы, внедренные фрагменты кода, историю интернета и другие ключевые детали, которые могут быть использованы для идентификации атаки руткитов.
Анализ дампа памяти довольно сложен, и его не должны выполнять неквалифицированные пользователи.
Проведение проверки целостности
Большинство файлов имеют цифровую подпись, созданную законным издателем — по сути, это идентификатор или паспорт, который позволяет приложению вносить определенные изменения в вашу систему.
Руткиты пользовательского режима, зависящие от внедрения DLL, могут выполнять все виды деятельности в вашей системе, притворяясь легитимным программным обеспечением, но тщательный анализ сигнатуры и поведения взломанного приложения может показать, нормально оно ведет себя или нет.
Windows 10 имеет встроенные проверки целостности, которые периодически происходят во время загрузки и выполнения, а некоторые специализированные сканеры руткитов, такие как «RootkitRemover» от McAfee, также выполняют проверки целостности.
Как удалить руткиты?
К счастью, руткитные атаки сегодня не очень распространены, так как различные системы защиты ядра стали более продвинутыми. Но если устройство уже заражено, то процесс удаления может быть довольно сложным. Его можно удалить:
- С помощью сторонних инструментов, таких как антивирусные и анти-руткитные программы. Попробуйте использовать несколько различных инструментов, так как одного может быть недостаточно, чтобы избавиться от его;
- Переустановка ОС. В зависимости от типа руткита, это потенциально может очистить зараженное устройство;
- В случае прошивки руткита или руткитов ядра, стороннее ПО может быть неэффективным. Возможно, потребуется создать резервную копию данных, очистить систему и переустановить все заново, чтобы избавиться от него.
Так что же такое руткиты?
Вышеприведенные пограничные случаи наводят на мысль, что нет никаких зловредных «руткитов», а есть лишь некие техники – техники обхода системных механизмов защиты и техники сокрытия в системе. Как и любая мощная технология, они могут быть использованы как во вред, так и во благо. В частности, обычный подход проактивных антируткитов – бороться с руткитами их же оружием (перехват системных функций и т.д.).
Любая из таких техник в большей или меньшей степени вписывается в понятие «руткит», которое каждый сам определяет для себя, так или иначе опираясь на мнение большинства либо на точку зрения авторитетного меньшинства специалистов. Для чего нужно это определение? Для того чтобы не попасть в ловушку слов, когда речь идет о таких пограничных случаях, как упомянутое выше скандальное обнаружение «руткитов» в коммерческих продуктах. Вместо того чтобы делать поспешные выводы, испугавшись страшного слова «руткит», стоит разобраться, как именно реализован механизм, объявленный кем-то компрометирующим, и какие именно угрозы он в себе таит в действительности. Весьма показателен в этом смысле «скандальный руткит», обнаруженный в продукте Kaspersky Antivirus 7.0. Используемая в продукте техника, которую сочли компрометирующей, – размещение служебной информации в «стримах» файловой системы, т. е. в таких ее участках, которые недоступны при прямом наблюдении. Есть ли в этой технике обход системных механизмов? Нет; «стримы» – это документированная функция операционной системы. Скрывается ли вредоносная активность? Нет; скрывается только служебная небинарная информация. Является ли эта техника уязвимостью – иными словами, может ли злоумышленник воспользоваться ею в своих целях? Нет, он может воспользоваться лишь самими «стримами» для сокрытия кода вируса (что действительно реализовано в некоторых вредоносных программах) – но это уже уязвимость ОС, а не коммерческого продукта. Так и где же здесь руткит?
Ситуация с Sony DRM немного другая. Используемая в защите техника действительно являлась уязвимостью в том смысле, что позволяла злоумышленнику назвать свои вредоносные программы определенным образом, вследствие чего они автоматически становились невидимыми. И вредоносные программы, эксплуатирующие эту уязвимость, действительно существуют – правда, появились они уже после того, как информация об этой уязвимости была опубликована в Интернете.
Временная линейка руткит-событий
Список поддерживаемых операционных систем
- Microsoft Windows XP SP2, SP3.
- Microsoft Windows Vista.
- Microsoft Windows Vista SP1, SP2.
- Microsoft Windows 7.
- Microsoft Windows 7 SP1.
- Microsoft Windows 8, 8.1.
- Microsoft Windows 10 TH1, TH2, RS1, RS2, RS3, RS4, RS5, RS6.
- Microsoft Windows Server 2003 R2 Standard / Enterprise SP2.
- Microsoft Windows Server 2003 Standard / Enterprise SP2.
- Microsoft Windows Server 2008 Standard / Enterprise SP2.
- Microsoft Windows Small Business Server 2011.
- Microsoft Windows Server 2008 R2 Standard / Enterprise SP0 и выше 64-разрядная.
- Microsoft Windows Server 2012 64-разрядная.
- Microsoft Windows Server 2012 R2 64-разрядная.
- Microsoft Windows Server 2016 64-разрядная.
Защита от LKM-руткитов
Несмотря на изощренные способы маскировки руткитов, установить, что система заражена, зачастую не так сложно. Руткиты перехватывают функции, а тут, как показано ранее, вариантов немного.
В случаях с подменой адресов лучше всего иметь исходный вариант таблицы, чтобы впоследствии можно было проверить ее целостность, но нужно помнить, что после обновления ядра адреса могут измениться. Для сплайсинга можно проверить, нет ли по адресу функции байта со значением , соответствующего , и выявить хук (что уже не столь просто, если он установлен не в начале).
Обнаружить скрытые соединения в простейшей ситуации можно внешним сканером портов, но при использовании Port knocking это вряд ли даст результат, разве что придется мониторить трафик, проходящий через сетевой шлюз.
Еще есть интересная задача — поискать в памяти ядра дескриптор модуля, отвязанного от списка загруженных модулей. Найдя, можно вернуть его в список, чтобы затем использовать (если, конечно, руткит не подменил и его на всякий случай). Существует решение (см. раздел 6), позволяющее обнаружить в памяти объекты, похожие на дескрипторы LKM, но оно работает на уже очень старых и только 32-битных ядрах. Перебор же памяти современных систем затруднен из-за огромного адресного пространства, но оттого эта задача становится лишь интересней.
Однако установить наличие руткита в системе — лишь полдела. Неплохо бы его оттуда убрать, а еще и найти сам исполняемый файл, чтобы было что поизучать на выходных. Самый простой и безотказный способ — взять носитель с зараженной операционкой и искать там подозрительные файлы загружаемых модулей со сторонней машины, хотя это не поможет против одного сверхсекретного метода хранения файлов (кто знаком с такими вредоносами, тоже пишите). Но это совсем не интересно, правда? К тому же наверняка существуют системы, для которых пребывать в нерабочем состоянии, пока идет поиск, крайне нежелательно. Поэтому попробуем исследовать зараженную машину изнутри. Что же может выдать присутствие руткита и при этом указать на файл вредоносного модуля?
Что делают руткиты?
Руткит — это набор вредоносных программ, скрытых в вашем компьютере и предназначенных для проникновения в места, обычно недоступных неавторизованному пользователю, и получения контроля над системой. Хакеры могут использовать уязвимости в программном обеспечении для удаленного управления им. Руткиты очень трудно обнаружить, так как они используют сложные схемы маскировки, чтобы скрыть свое местонахождение. Он может прятаться на уровне ядра, которое управляет всей системой, или маскироваться под другое ПО и даже приложения. Руткиты также могут загружаться с ОС и перехватывать ее связь. Помимо ноутбука или настольного компьютера, руткит также может быть нацелен на устройства IOT. Он имеет высокий уровень опасности и трудно удаляется.
Использование руткитов
Что хакеры могут сделать с руткитами:
- Заразить устройство вредоносным ПО. Хакеры мастерски маскируют такое ПО и могут внедрить его в вашу систему;
- Предоставляет доступ в систему для хакеров. Руткит может служить в качестве шлюза для хакера для взлома ваших учетных записей, данных и т.д. Если он получит контроль над ОС, то с легкостью будет контролировать ваше устройство. Хакер сможет желать это с помощью вредоносного ПО или троянских программ, которые загрузит в зараженное устройство;
- Хакер сможет взять под контроль антивирусные программы и распространять вредоносное ПО.
Но руткиты также могут быть использованы и для хороших целей, таких как обнаружение хакерских атак, защиты программного обеспечения безопасности или защиты ноутбуков от кражи, позволяя осуществлять их мониторинг в случае кражи.
Обзор бесплатных программ для удаления руткитов
Существует много программ для борьбы с руткитами. Но, большинство из них предназначены для технически подкованных пользователей, которые хорошо знают особенности работы операционных систем. Такие программы вряд ли подойдут обычным пользователям. Однако, в данном классе программ есть и несколько вариантов, которые не потребуют от пользователей особых технических знаний, при этом они будут столь же эффективны.
Программа удаления руткитов Kaspersky TDSSKiller от одноименной компании
Одним из лучших решений можно назвать . Данная программа имеет достаточно простой и понятный интерфейс. Она достаточно быстро работает, и способна обнаружить достаточно большое число руткитов.
удалось обнаружить и удалить все известные современные руткиты (TDSS, Zeus, TDL4 и т.д.). Единственный ее недостаток — это то, что очень похоже, что программа распознает только небольшой диапазон руткитов. И хочется надеяться, что со временем количество распознаваемых типов будет только увеличиваться. Тогда можно будет смело сказать, что это решение, которое подойдет всем.
Но, тем не менее, его положительные стороны все же перевешивают все негативные моменты, так как программа во всех тестах быстро и просто находила и удаляла руткиты. При этом так же немаловажным является то, что она нормально работает с 64-битными системами.
GMER и RootRepeal комплексный подход к поиску и удалению руткитов
Есть пара хороших программ, которые будут очень полезными опытным пользователям. Это и RootRepeal (не поддерживает 64-битную ОС). Это очень популярные программы, но для их использования нужно хорошо понимать устройство операционных систем, чтобы можно было интерпретировать их результаты сканирования системы. У каждой из этих программ имеется достаточно хорошая документация по работе и использованию. Но, если вы относитесь к той категории пользователей, которые хотят нажать только одну кнопку, и через некоторое время получить надпись «Теперь все просто отлично», то тогда вам больше подойдет .
На самом деле сложно их порекомендовать обычным пользователям, ведь результаты для них могут показаться просто набором непонятных символов (результаты имеют чисто технических характер, т.е. полное отсутствие красивых фраз «Утилита все сама очистила», «Вам не о чем беспокоиться» и т.д.). Обычно действовать необходимо быстро, поэтому эти программы вы вспомните в последнюю очередь. Но, если все же вы каким-то образом поймали особо редкий и сложно очищаемый руткит, то они станут неоценимыми помощниками в борьбе за свой компьютер, ведь вам будет предоставлен огромный спектр полезной информации.
Программа удаления руткитов Avast Anti-Rootkit от известного производителя
Интерфейс напоминает окно командной строки, но не надо пугаться, ведь интерфейс очень простой и понятный в использовании. Эта программа может сканировать компьютер и MBR на наличие руткитов, а так же фиксировать ряд проблем. Обычным пользователям может быть немного не просто понять результаты работы программы, но тем не менее, программа свою задачу выполняет хорошо. Она так же хорошо нашла TDSS и ряд других современных руткитов, как и TDSS Killer. Но, были небольшие проблемы при их удалении. Зато у данной программы есть одна важная функциональность, без которой порой сложно обойтись при удалении руткитов. Это возможность выполнить FixMBR прямо из Windows. Обычно для этого нужно загрузиться с диска восстановления Windows или LiveCD. А в данной программе для этого надо всего лишь кликнуть на кнопке FixMBR. Именно поэтому такую программу стоит всегда держать при себе.
Антивирусное средство Dr.Web CureIt! профилактика полезна
Следующий продукт, который входит в обзор — это . Его всегда стоит держать при себе. CureIt! не является полноценным инструментом для поиска и удаления руткитов, как другие программы, о которых шла речь ранее. Это скорее бесплатный сканер вредоносных программ, по сути, миниантивирус. Но, он достаточно эффективен при борьбе с рядом руткитов. Правда, гарантировать, что он сможет выловить все руткиты тоже нельзя. Его скорее стоит применять как дополнение к основному средству по борьбе с руткитами. Тем не менее, стоит отметить, что на время своего сканирования он создает достаточно безопасную среду исполнения. Тот факт, что он останавливает все процессы делает ему только плюс, так как вредоносные программы могут попытаться блокировать его работу. Он так же может производить глубокое сканирование вашего диска. Так же позволяет перезагрузиться в безопасный режим для поиска и удаления вредоносных программ.
Концепт-руткиты
К 2006 году большинство руткитов уже более или менее успешно обнаруживались расплодившимися к тому времени антируткитами; бум руткитов пошел на спад. Но пытливая исследовательская мысль продолжала поиск новых недетектируемых техник.
Больше всего энтузиазма вызывала идея использовать аппаратную виртуализацию, встраиваемую в новые процессоры от Intel и AMD, для того чтобы решить задачу перехвата управления операционной системой. При таком перехвате ни одна антируткит-утилита, известная на сегодняшний день, не может детектировать руткит. В течение 2006 года было представлено три таких концепции: SubVirt (pdf), BluePill (pdf)
и Vitrio (pdf). Сейчас детектирование этих руткитов считается открытой проблемой – но «в дикой природе» они не встречаются.
Второе направление исследований – загрузочные руткиты. Они решают все ту же задачу тотального управления операционной системой, перехватывая ее на стадии загрузки. Старая идея записывания кода в загрузочный сектор диска, известная еще со времен DOS-вирусов, возродилась в виде концептуального руткита eEye Bootroot (pdf) в 2005 году. Была еще одна похожая концепт-реализация – Vbootkit (pdf) (2007), которая позиционировалась в первую очередь как исследование актуального в тот момент вопроса о безопасности MS Vista.
Почему руткиты сложно обнаружить и удалить?
Как вы уже могли догадаться, основная причина кроется в том, как действуют руткиты, то есть прячутся и могут длительное время бездействовать. Однако, этот момент стоит чуть более подробно описать, так как есть нюансы.
Во-первых, многие люди сталкиваются с тем, что со временем комп начинает либо медленнее функционировать, либо вообще компьютер тормозит. Поэтому, небольшое ухудшение производительности от действий руткита можно вполне спутать с «захламленным компьютером».
Во-вторых, руткиты могут распространяться во все подключенные устройства — жесткие диски, флешки и прочее. Это значит, что если руткит был в компе долгое время, то его копий может быть много.
В-третьих, важно помнить, что это вредоносное обеспечение содержит в себе наборы инструментов. Это значит, что руткит может скачивать и свои различные версии (с соответствующим набором для противодействия антивирусам), а так же иные виды руткитов и вирусов
К примеру, почистили от троянов, а руткит остался.
В-четвертых, чем больше мест поддерживает возможность для программирования, тем больше возможностей у руткитов. К примеру, если такой вирус внедрится в прошивку биоса (буткит — bootkit) или контроллера жесткого диска, то обнаружить его станет в разы сложнее.
Существуют и иные нюансы, но даже из этих видно, что вопрос не так уж и прост.
Как удалить руткиты
Лучшим средством от руткитов являются антивирусные диски. Многие крупные компании, специализирующиеся на борьбе с вирусами, предлагают свои антивирусные диски. С удалением руткитов хорошо справляются Windows Defender Offline и Kaspersky Rescue Disc.
Выбирать антивирусные диски для борьбы с руткитами следует из соображения, что вирусы при запуске антивирусного диска никак не могут воспрепятствовать проверке системы. Это связано с тем, что антивирусные диски работают, когда сама Windows не запущена, а вместе с ней не запущены и сопутствующие программы, в том числе вирусы и руткиты.
Также можно выделить несколько приложений, которые являются эффективными при борьбе с руткитами:
- TDSSKiller (от Касперского);
- Dr.Web Cureit;
- AVZ.
Все эти три утилиты распространяются бесплатно, и они могут справиться с распространенными руткитами.
Как удалить руткит программой RootkitBuster.
На следующей странице выбираем для какой версии Windows необходимо скачать программу. О том как узнать разрядность операционной системы я говорил в своем уроке про оперативную память компьютера. Далее в окне щелкаем по кнопке «Use HTTP Download» и сохраняем файл к себе на компьютер.
После закачки щелкаем по файлу правой клавишей мыши и выбираем пункт «Запуск от имени администратора». Необходимо будет немного подождать. Откроется новое окно, в котором необходимо поставить галочку на принятии лицензионного соглашения и нажать кнопку «Next».
Вы попадете в главное окно программы, где для сканирования нужно будет нажать кнопку «Scan Now», при этом нужно оставить галочку на всех пунктах в левой колонке, кроме «File Streams» (на 64 разрядных системах количество настроек может быть меньше).
После сканирования вы получите уведомления об обнаруженных подозрительных файлах. Эти файлы можно выделить галочками и внизу нажать кнопку «Fix Now». В процессе удаления руткитов, в может быть предложено перезагрузить компьютер, обязательно соглашайтесь.
Steps to Remove a Rootkit Using the MalwareBytes Anti-Rootkit Tool
Step 1 – Download the Malwarebytes Anti-rootkit tool to your computer’s desktop.
Step 2 – Unzip the downloaded file to a folder on the computer’s desktop or other convenient location on your computer.
Step 3 – Double click the folder to view the unzipped contents. Then, run the mbar.exe file by double clicking the file.
Step 4 – Accept the default prompts on the subsequently launched application wizard to update the anti-rootkit file definitions. Then, allow the program to scan the computer for potential rootkit threats.
Step 5 – Select the “Cleanup” menu button after the anti-rootkit program finishes running if you are prompted to do so. Make sure you have already backed up important files on your computer since the program is still in beta if the rootkit cleanup removes key operating system or other files on your computer.
Step 6 – Allow the computer to shut down when the cleanup process is completed.
Step 7 – Restart the computer and conduct another scan with the Malwarebytes Anti-Rootkit tool to make sure the initial cleanup doesn’t reveal additional threats on your computer. If it does located more threats, repeat the cleanup process.
Step 8 – If no additional threats are located on your computer, you will want to verify the computer is operating normally. To do so, verify the following: You can access the Internet, Windows Firewall is operational, and Windows Update is functional.
Step 9 – If you notice addition issues with your computer (to include those listed in Step 8), you will want to run the fixdamage tool that is included with the Malwarebytes Anti-Rootkit tool.
Step 10 – Restart your computer and verify that it is working correctly.
Step 11 – If you encounter any issues with the Malwarebytes Anti-Rootkit tool, contact the Malwarebytes support shop to obtain additional assistance with your computer.