# Форум на русском языке  > Новости  > Новости компьютерной безопасности  >  Новый руткит загружается быстрее ОС

## akok

15:21, 10.01.2008 

Новый руткит загружается быстрее ОС


Специалисты из компании Symantec объявили об обнаружении нового вида руткита – вредоносное ПО может изменить загрузочный сектор главного жесткого диска ПК. Новая вредоносная программа создана для системы Windows. 

Эксперты отмечают, что новый вирус принципиально отличается от всех известных и не определяется антивирусными программами. Это совершенно новый руткит. 

Программа изменяет данные главного загрузочного сектора (master boot record). Здесь хранится информация об операционной системе, которая запускается после тестирования BIOS. 

Оливер Фридрих (Oliver Friedrich), руководитель антивирусного подразделения Symantec, отмечает особенность нового вируса: «Обычно руткиты устанавливаются как драйверы – так же как и другое ПО. Они загружаются вместе с ОС, но этот руткит производит загрузку раньше операционной системы. Этот новый метод атаки позволяет взять полный контроль над ПК жертвы». 

По сообщениям SANS, новый вирус появился в декабре 2007 г. и им заражены несколько тысяч компьютеров. Также найдены несколько сайтов, посредством которых производится распространение нового вредоносного ПО. 

Эксперты сообщают, что пока руткит угрожает только пользователям системы Windows XP. Те, кто установил на свой ПК Windows Vista, могут не беспокоиться, по крайней мере, в данный момент.

Источник

----------

Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:

----------


## borka

> Программа изменяет данные главного загрузочного сектора (master boot record). Здесь хранится информация об операционной системе, которая запускается после тестирования BIOS.


О как... Кто б мог подумать...




> «...но этот руткит производит загрузку раньше операционной системы. Этот новый метод атаки позволяет взять полный контроль над ПК жертвы».


И что же он делает до загрузки оси? 




> Эксперты сообщают, что пока руткит угрожает только пользователям системы Windows XP. Те, кто установил на свой ПК Windows Vista, могут не беспокоиться, по крайней мере, в данный момент.


А! Вот в чем дело!

----------


## akok

Это страшное сообщение ставьте Висту иначе вас поразит страшный вирус :Smiley: 
Виталик будет счастлив...

----------


## borka

> Это страшное сообщение ставьте Висту иначе вас поразит страшный вирус


Не иначе!

----------


## DVi

> И что же он делает до загрузки оси?


Вероятно, то же, что и классические руткиты - перехватывая все низкоуровневые функции, скрывает свое присутствие на компьютере.

----------


## borka

> Вероятно, то же, что и классические руткиты - перехватывая все низкоуровневые функции, скрывает свое присутствие на компьютере.


Какие низкоуровневые функции?

----------


## DVi

Операционная система запускается под управлением руткита.

----------


## RobinFood

Народ, вы чего? Обсуждали же уже...
http://virusinfo.info/showthread.php?t=16028
http://www.symantec.com/business/sec...448-99&tabid=2
http://www2.gmer.net/mbr/

----------


## borka

> Народ, вы чего? Обсуждали же уже...
> http://virusinfo.info/showthread.php?t=16028


Сюда нет доступа, а за гмера спасибо.

----------


## akok

http://www2.gmer.net/mbr/ за это спасибо...
Но вам не кажется, что адудитория которая ничего не понимает по анлийски долна знать?

----------


## Зайцев Олег

> Какие низкоуровневые функции?


Технология известна уже несколько лет. Если "объяснять на пальцах" для широкой аудитории, то  запустившись из MBR руткит оказывается в интересном положении - он запустился до операционки (и антивирусов), но чтобы безобразничать, ему нужно в нее внедриться. Типовой путь (и наиболее простой) - это перехватить прерывание int 13h (отвечающее за чтение/запись диска на посекторном уровне). Это не даст контроля над операционкой, но зато позволит отслеживать загрузку данных с диска на уровне чтения секторов. Далее можно просканировать считываемые данные (после системного обработчика int 13h они записываются в буфер), и поймать по сигнатуре что-то, что интересует руткита (ядреные компоненты, например). Это дает возможность пропатчить их на лету. Что получается в результате? А получается следующая картина - на диске правильное ядро, а в памяти - уже патченное. Возможность патча дает возможность осуществить слайсинг кода и перехватить что-то в ядре, например функцию инициализации - в результате после загрузки ядреных компонент троянский код получит управление. По указанным ссылкам собственно все это подробно расписано ... Для того, чтобы дроппер записался в сектора на диске, требуется права администратора. Если их нет, то руткит не сможет работать.
Еще пара слов про MBR для тех, кто не знаком с тонкостями процесса загрузки... загрузка системы с диска предполагает следующие этапы:
1. BIOS читает MBR - это самый первый сектор диска. В MBR имеется три значимых вещи:
1.1 Загрузчик. Это небольшой программный код, расположенный в начале сектора
1.2 Таблица разделов. Содержит данные о 4-х разделах, причем у каждого раздела есть признак "загрузочный"
1.3 сигнатура в хвосте сектора, позволяющая понять, что это именно MBR, а не пустой сектор
Считав MBR по строго определенному адресу памяти BIOS отдает ему управление. Загрузчик в простейшем случае сканирует таблицу разделов, и находит раздел с признаком загрузочный и начинает загрузку с него
2. Загрузка с того или иного раздела предполагает загрузку бут сектора раздела, координаты начала раздела есть в таблице разделов,  и передачу ему управления.
Следовательно, для внедрения в цикл загрузки нужно или перекрыть код текущего загрузчика в MBR, или в Boot секторе. При этом зловреду придется сохранить где-то исходное содержимое сектора для того, чтобы продолжить загрузку ...

----------


## borka

> Технология известна уже несколько лет. Запустившись, руткит оказывается в интересном положении - он запустился до операционки, но чтобы безобразничать, ему нужно в нее внедриться. Типовой путь (наиболе простой) - это перехватить прерывание int 13h. Это не даст контроля над операционкой, но зато позволит отслеживать загрузку данных с диска на уровне чтения секторов. Далее можно посканировать считываемые данные и поймать по сигнатуре что-то, что интересует руткита (ядреные компоненты например). И пропатчить их на лету. Что получается в резульатте ? А получается слудующая картина - на диске правильное ядро, а в памяти - уже патченное. Возможность патча дает возможность осуществить слайсинг кода и перехватить что-то в ядре, например функцию инициализации. По указанным ссылка все это подробно расписано


Спасибо, я ужЕ прочитал у гмера. 
Единственное, что не понял - загрузка происходит в реальном режиме, а как руткит выживает после переключения в защищенный режим? Поскольку ядру, после переключения в защищенный режим, ужЕ до лампочки биосовский int 13h. Значит, он должен пропатчить файлы ядра на диске?   Сколько ж тогда весит ЭТО?

----------


## Зайцев Олег

> Спасибо, я ужЕ прочитал у гмера. 
> Единственное, что не понял - загрузка происходит в реальном режиме, а как руткит выживает после переключения в защищенный режим? Поскольку ядру, после переключения в защищенный режим, ужЕ до лампочки биосовский int 13h. Значит, он должен пропатчить файлы ядра на диске?  Сколько ж тогда весит ЭТО?


См. выше, я там все описал. Загрузка первых ядреных компонент производится через int 13, именно они и патчатся. А когда int 13 станет неактуально, то пропатченный код будет уже в памяти и получит управление ... ничего сложного там нет

----------


## ALEX(XX)

> См. выше, я там все описал. Загрузка первых ядреных компонент производится через int 13, именно они и патчатся. А когда int 13 станет неактуально, то пропатченный код будет уже в памяти и получит управление ... ничего сложного там нет


Прикольно... Совмещают технологии ДОСвских вирусов и соверменных руткитов

----------


## borka

> См. выше, я там все описал. Загрузка первых ядреных компонент производится через int 13, именно они и патчатся. А когда int 13 станет неактуально, то пропатченный код будет уже в памяти и получит управление


Ага! То есть патчится то, что будет работать потом...




> ничего сложного там нет


А почему тогда этот метод не получил широкого распространения?

----------


## Зайцев Олег

> Ага! То есть патчится то, что будет работать потом...
> 
> 
> А почему тогда этот метод не получил широкого распространения?


А не получил распространения, так как метод корявый, ему нужны права админа, в случае применения хитрых бут-менеджеров можно убить систему (где гарантия, что занимаемые зверем сектора ничего не хранят ?!). Подобный метод не нов - в свое время во времена MSDOS я ловил и убивал сотни таких зверей, тогда технологии загрузки зловредного кода из бут сектора или MBR были популярны. И легитимные утилиты такими вещами баловались - размещали свои загрузчики в бут-секторах для загрузки до операционки (бут-менеджеры этим до сих пор балуются). Еще один минус - сигнатурный патч кода ...
Меня вообще удивляет, зачем многим зверям руткит-маскировка - зачастую именно из-за руткита их и находят (тормоза, глюки, BSOD - начинают скать причину). А по статистики все прсото - если юзер не обладает должными знаниями, то он даже процесс super_trojan.exe не заметит ... более продвинутый не заметит службу, драйвер, какое-нибудь хитрое расширение проводника. И никакие супер-пупер маскировки не нужны... А грамотный пользователь от всего этого и не пострадает (так как работает из под ограниченной учетной записи, где все руткитные штучки не проходят).

----------


## borka

> А не получил распространения, так как метод корявый, ему нужны права админа, в случае применения хитрых бут-менеджеров можно убить систему (где гарантия, что занимаемые зверем сектора ничего не хранят ?!).


Мне кажется, что это не проблема - первое практически всегда есть, а второе на текущий момент не особо актуально.




> Еще один минус - сигнатурный патч кода ...


Ну это можно говорить про заточенность под конкретную ось.




> Меня вообще удивляет, зачем многим зверям руткит-маскировка - зачастую именно из-за руткита их и находят


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

----------


## Макcим

Олег, расскажите пожалуйста про обнаружение и лечение.

----------


## mr.alen

*.sys объект можно смело дизасэмблировать, дабы узнать что он скрывает
>Меня вообще удивляет, зачем многим зверям руткит-маскировка
Ну а к чему прибегать ? заражение ? инжект dll ?

----------


## [500mhz]

интересно а винда что запись в MBR разрешает? что то я не замечал такого

----------


## Geser

А что будет если система грузится с RAID массива? Там ведь через int 13h нифига не доступно? Этот руткит обламывается?

----------

Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:

----------


## Зайцев Олег

> интересно а винда что запись в MBR разрешает? что то я не замечал такого


Еще как разрешает - можно из UserMode это без проблем делать ... диск открывается на посекторное чтение и вперед. Существует целое семейство зловредов, которые MBR поганят, или Boot, или просто тупо посекторно пишут мусор разный, убивая данные на диске. Но для таких фокусов естественно нужны права админа.

----------


## borka

> А что будет если система грузится с RAID массива? Там ведь через int 13h нифига не доступно? Этот руткит обламывается?


По всей вероятности, он туда не сможет сесть.

----------


## Plorer

> Еще как разрешает - можно из UserMode это без проблем делать ... диск открывается на посекторное чтение и вперед. Существует целое семейство зловредов, которые MBR поганят, или Boot, или просто тупо посекторно пишут мусор разный, убивая данные на диске. Но для таких фокусов естественно нужны права админа.


А у меня несколько вопросов к Зайцев Олег.



> А также на Viste диски преобразуются в месте с О.С на которых MBR нет вообще, а есть с таблицей GUID разделов (GPT). 
> Источник,справка Висты: 
> Можно выбрать, какой стиль разделов использовать, — с основной загрузочной записью (MBR) или с таблицей GUID разделов (GPT). 
> Тоесть там легко прямо под операцыонной системой диск предбразуется в: 
> 1.В GPT диск. 
> 2.Динамический диск. 
> Перезагрузились и готово!


1.В GPT диск если я преобразую будут ли такого вида малвары работать,и возможны ли boot вирусы?
2.Надёжно ли биос зашишает MBR?
3.Возможна ли работа таково типа boot вируса на О.С.Vista 64bitAMD?
(мне кажется што если ему дать прова админестратора,в MBR залезет, но не будит работать некогда,там руткиты неработают даже с правами админестратора)
4.Когда то там обешают новую файловую систему,может както она помочь?
5.Я есть кокие нибудь апаратные средства зашиты против такой угрозы,и вообще кокие сушествуют радикальные методы борьбы с таким Boot вирусом?



> Защита ядра от изменения (Kernel Patch Protection, KPP)64 bit,
> 
> *Проверка целостности кода при загрузке
> При загрузке операционной системы, все бинарные файлы (исполняемые файлы, драйверы и прочий программный код), используемый в процессе, проверяются на подлинность. Данная процедура гарантирует, что бинарные файлы не были изменены и система чиста. Проверка осуществляется путем сверки подписей бинарных файлов в системных каталогах. Загрузчик Vista проверяет целостность ядра, уровня аппаратных абстракций (Hardware Abstraction Layer, HAL) и загружающихся при старте системы драйверов, надежно защищая систему от встроенного вредоносного, несанкционированного или дефектного кода.(64 bit)
> 
> Рандомизация компоновки адресного пространства (Address Space Layout Randomization, ASLR)
> Данная функция загружает системные файлы в случайные области памяти, затрудняя задачу вредоносного кода по определению мест расположения привилегированных системных функций. ASLR помогает предотвратить большинство атак удаленного исполнения кода, так как вредоносное ПО просто не сможет найти требуемый объект, который может располагаться по любому из 256 адресов.Microsoft не делает открытой рекламы функции защиты от вредоносных программ (удаленных атак) под названием Address Space Layout Randomization (ASLR), реализованной в x64-версиях Vista. По мнению разработчиков, ASLR практически полностью искоренит угрозу «удаленных атак» для платформ Windows. В настоящее время Windows предусматривает загрузку системных файлов с использованием одинакового смещения в памяти при загрузке системы, что позволяет хакерам внедрять код по месту, задаваемому этим смещением. В x64-версиях Vista системные файлы загружаются в случайные адреса памяти, поэтому существует лишь один шанс из 256, что текущая загрузка файлов произойдет с адреса с тем же смещением, что и при предыдущей загрузке. По мнению специалистов Microsoft, потери в производительности в результате этого изменения практически неощутимы, зато преимущества огромны. Свыше 99% всех «удаленных атак» в отношении x64-версий Vista потерпят неудачу. Конечно, время покажет, но любопытно будет наблюдать реакцию хакерского сообщества на это изменение.(64bit)
> 
> Укрепление служб (Service Hardening)
> ...

----------


## VV2006

Для удаления rootkit с инфицированной машины просто используйте "Консоль восстановления", команда: *fixmbr*. То же - для профилактики. (http://www2.gmer.net/mbr/)

----------


## Plorer

> Это дает возможность пропатчить их на лету. Что получается в результате? А получается следующая картина - на диске правильное ядро, а в памяти - уже патченное.


Так я подозреваю,што пропатчить ядро неполучится в Vista 64bitAMD,благодаря:
Защита ядра от изменения (Kernel Patch Protection, KPP),
*Проверка целостности кода при загрузке*
*Загрузчик Vista проверяет целостность ядра, уровня аппаратных абстракций (Hardware Abstraction Layer, HAL),Рандомизация компоновки адресного пространства (Address Space Layout Randomization, ASLR)*

*И воще исходный код  ядра Висты некто незнает он держится в секрете.


*

----------


## [500mhz]

Зайцев
на сколько я помню в UserMode . через CreateFile (девайс, пипе, итд) в MBR не достучатся (исключая флопик и всякие флешки)

----------


## RobinFood

> А что будет если система грузится с RAID массива? Там ведь через int 13h нифига не доступно? Этот руткит обламывается?


Разве BIOS не эмулирует int13h для таких массивов (на случай, если кому-то вздумается DOS загрузить)?



> По всей вероятности, он туда не сможет сесть.


Сесть (т.е. перезаписать MBR) точно сможет. Вопрос в том, сможет ли он загрузить систему в таком случае.



> на сколько я помню в UserMode . через CreateFile (девайс, пипе, итд) в MBR не достучатся (исключая флопик и всякие флешки)


Просто ты не умеешь его готовить  :Smiley:

----------


## Geser

> Разве BIOS не эмулирует int13h для таких массивов (на случай, если кому-то вздумается DOS загрузить)?


У меня во время бута массив не виден. И Инсталятор Винды если драйвер не подсунуть говорит что не обнаружено ни одного диска.

----------


## UFANych

> У меня во время бута массив не виден. И Инсталятор Винды если драйвер не подсунуть говорит что не обнаружено ни одного диска.


А инсталятор винды, при поиске дисов, на int13 уже положил давно, в момент перехода в защищённый режим. И потому он драйвер и требует. Причём, если при запуске инсталятора подсунуть ему дискету (F6), то он читает её ещё в реальном режиме и тут прокатывают всякие usb-дисководы. А птом он просит драйвер второй раз, уже из защищённого, и usb-дисководы в пролёте.

----------


## borka

> Причём, если при запуске инсталятора подсунуть ему дискету (F6), то он читает её ещё в реальном режиме и тут прокатывают всякие usb-дисководы. А птом он просит драйвер второй раз, уже из защищённого, и usb-дисководы в пролёте.


А не наоборот? Какие usb в реальном режиме aka Дося?

----------


## pig

> А не наоборот? Какие usb в реальном режиме aka Дося?


Которые BIOS эмулирует в виде псевдофлоповода, например.

----------


## [500mhz]

http://www.osp.ru/cw/1997/20/20655/
все новое хорошо забытое старое )))

пс
есть у меня в коллекции бинарник данный

*Добавлено через 1 минуту*

ппс
"для установки своей резидентной копии в память и переключения в защищенный режим процессора он использует документированный интерфейс VCPI драйвера расширенной памяти EMS (EMM386)"

немного не корректно написано )

----------


## Jolly Rojer

Не плохой руткитик!  :Smiley:  Кому-то на нашем форуме примерно пол года назад подобное описывал и ктото мне не сильно хотел верить

----------


## Bratez

http://virusinfo.info/showthread.php?t=16851
Началось?  :Wink:

----------


## Surfer

Ну и ? По правилам человек просканится кюритом, а по пеару др.вэба можно судить, что они с ними справляются, посмотрим насколько =)

----------


## Alex_Goodwin

Текущий доктор не справляется. Только бэта, доступная только вирлабу доктора. И "пеара" про то, что _релизный_ доктор ловит - не было.

----------


## RiC

> Только бэта, доступная только вирлабу доктора.


Уже не только вирлабу, сегодня выложили на публичное бета тестирование. http://forum.drweb.com/viewtopic.php?t=7255
Если глюков явных не будет, через пару дней Imho зарелизят.

----------


## Virtual

а зачем из виндов в MBR писать?, очень заметно и непрактично
проще воспользоватся специальным файлом, любезно предоставленным нам МС,
ntldr называется!!!, а еслю учесть что он всегда на С:, да еще и не контролируется самой операционкой!, да еще на С: частенько стоит ФАТ, а сама операционная система на другом разделе (ну это обычно у продвинутых пользователей)
и как вы думаете какие права потребуются для его корректировки?

ЗЫ способ уже очень давно опробован лично.

----------


## [500mhz]

Virtual
пример в студию

----------


## Virtual

пример чего?
что на FAT влегкую правится ntldr?
или что заменив его кодом на асме под дос можно влегкую добратся до MBR, а после подгрузить ntldr и позволить ситеме грузится далее?

ЗЫ задача не ставилась перехвата драйверов в системе, требовалась интеграция в MBR из под обычного пользователя (для выполнения опр действий до загрузки системы), и подчистка за собой следов (востановление ntldr).

----------

Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:

----------


## Alexey P.

> http://virusinfo.info/showthread.php?t=16851
> Началось?


 Как выясняется, "началось" еще почти за два месяца до того - вот:
http://www.virusinfo.info/showthread.php?t=14746

----------


## [500mhz]

Virtual
ну выложи бинарник который из под винды патчит-заменяет ntldr
и после ребута пусть напишет ченить ну и потом винду грузит

----------


## Virtual

[500mhz] ну зачем это вам?
.или сомневаетесь что реально записать в ntldr? (попробуйте удалить его если смогли то прав хватило) а лучше поменяйте текст по смещению 3С848  :Smiley: 
.или что все это работать будет? (будет еще как, ntldr грузится в память бут загрузчиком и работает в реалмоде, после переключается в защищенный режим и отрабатывает файл защищенного режима /лежит в ntldr по смещению 4D00/)
/MS$ не стали долго мудрствовать и просто залили его туда полностью  :Smiley:  /
(кстати он вроде проверяется на целостность, но точно не полностью, так что возможен код и в защищенном режиме)
. далее после MBR (1 сектор всего 512байт) есть еще 61сектор совершенно незанятый ничем (тут мс опять о нас позаботилась) туда можно напихать кода по самый небалуй (кстати они не трогаются при формате и фдиске, да и мбр редко перезаписывается, по этой причине приходилось всю первую дорожку нулями заливать, для очистки от древних злыдней)

ЗЫЗЫ отсюда вывод, береч как я..ы свои, ntldr, MBR сектор, и BOOT загрузчик (вроде около 7ми секторов)

----------

