Mebromi: первый руткит BIOS в дикой природе

Время чтения: ~ 6 мин.

Марко Джулиани

В последние несколько недель китайская охранная компания звонила Qihoo 360 написал о новом рутките BIOS, поражающем китайские компьютеры. Это оказалось очень интересным открытием, поскольку оно стало первым настоящим вредоносным ПО, нацеленным на систему BIOS со времени известного доказательства концепции под названием IceLord в 2007 году. Вредоносное ПО называется Mebromi и содержит всего понемногу: руткит BIOS, специально предназначенный для Награда BIOS, руткит MBR, руткит режима ядра, файл-заражатель PE и троянский загрузчик. В настоящее время Mebromi не предназначен для заражения 64-битной операционной системы и не может заразить систему, если работает с ограниченными привилегиями.

Заражение начинается с небольшой зашифрованной капельницы, которая содержит пять зашифрованных файлов ресурсов: hook.rom , flash.dll , cbrom.exe , my.sys , bios.sys . Цель этих файлов будет представлена ​​позже в этом анализе.

Инфекция явно ориентирована на китайских пользователей, поскольку дроппер тщательно проверяет, защищена ли заражаемая система китайским программным обеспечением безопасности Rising Antivirus и Jiangmin KV Antivirus . Чтобы получить доступ к BIOS, инфекция сначала должна быть загружена в режиме ядра, чтобы она могла обрабатывать физическую память вместо виртуальной памяти.

Многие из вас могут вспомнить старую инфекцию CIH / Чернобыль , печально известный вирус, обнаруженный в 1998 году, который смог перепрограммировать BIOS материнской платы, стерев его. Даже CIH требовалось получить доступ в режиме ядра для доступа к BIOS, хотя в то время, когда вирус использовал ошибку повышения привилегий в операционной системе Windows 9x, которая позволяла ему перезаписывать таблицу дескрипторов прерываний собственной полезной нагрузкой из пользовательского режима, а затем вызывал Перезаписанный обработчик прерываний и его вредоносный код выполняются в режиме ядра. Mebromi больше не использует такой способ повышения привилегий, ему просто нужно загрузить собственный драйвер режима ядра, который будет обрабатывать заражение BIOS. Для этого он использует два метода: он может либо извлечь и загрузить библиотеку flash.dll, которая загрузит драйвер bios.sys, либо остановит служебный ключ beep.sys, перезаписав драйвер beep.sys своим собственным файлом bios. sys code, перезапустите сервисный ключ и восстановите исходный код beep.sys.

Драйвер bios.sys - это код, который обрабатывает заражение BIOS. Чтобы прочитать код BIOS, необходимо сопоставить физическую память, расположенную по адресу физической памяти 0xF0000 , именно там обычно находится ПЗУ BIOS. После прочтения драйвер проверяет, является ли ПЗУ BIOS Award BIOS, проверяя наличие строки: $ @ AWDFLA . Если драйвер найден, он пытается найти порт SMI, который будет использоваться руткитом для прошивки ПЗУ BIOS.

Если ПЗУ BIOS соответствует строке, руткит сохраняет копию BIOS в файл C: bios.bin и передает следующий шаг компоненту заражения в пользовательском режиме. Пипетка извлекает два файла: cbrom.exe и hook.rom. Cbrom.exe - это законный инструмент, разработанный Phoenix Technologies, который используется для изменения двоичных файлов BIOS Award / Phoenix BIOS. Hook.rom - это ПЗУ руткита ISA BIOS, которое добавляется в двоичный файл BIOS и содержит заражение руткитом. Дроппер выполняет cbrom.exe с параметром переключателя / isa, передавая файл hook.rom. Перед тем, как на самом деле внедрить вредоносное ПЗУ ISA, дроппер проверяет код ПЗУ BIOS, ища строку « hook-rom », используемую в качестве маркера заражения. Если он найден, это означает, что BIOS уже инфицирован и не нуждается в повторном заражении.

После этого файл bios.bin был изменен, драйвер bios.sys отправляет на SMI-порт BIOS команду 0x29 , используемую для удаления флэш-памяти BIOS, а затем команду 0x2F, используемую для записи нового кода ПЗУ BIOS в ПЗУ BIOS. ,

BIOS теперь заражен, и дроппер переходит к следующему шагу: заражение основной загрузочной записи . Длина заражения составляет 14 секторов, а исходная MBR сохраняется в секторе 7. Во избежание возможных проблем при запуске, зараженная MBR сохраняет копию исходной таблицы разделов MBR. Наконец, дроппер извлекает драйвер my.sys из корня диска C :. My.sys - это руткит режима ядра, который перехватывает основные функции IRP disk.sys путем перенаправления собственных функций IRP_MJ_READ / WRITE и IRP_MJ_DEVICE_CONTROL . Он используется, чтобы скрыть заражение на диске. Даже если заражение BIOS не удается, руткит заражает MBR.

При следующем запуске системы, после фазы BIOS POST, вредоносный код, внедренный в нее, подготавливает полную MBR-инфекцию (все первые 14 секторов хранятся внутри вредоносного BIOS, всего 7168 байт) и проверяет MBR-код жесткого диска. диск смотрю, если зараза уже присутствует. Для этого вредоносный код BIOS проверяет наличие строки « int1 » со смещением 0x92. Если строка не найдена, злоумышленник BIOS перезапишет все первые 14 секторов жесткого диска, тем самым восстановив заражение MBR.

Процедура запуска системы продолжается, и теперь управление переходит к вредоносной основной загрузочной записи. Здесь вредоносная полезная нагрузка анализирует исходную таблицу разделов MBR и ищет активный раздел, проверяя, использует ли он файловую систему NTFS или FAT32. Вредоносный код MBR действительно содержит процедуры синтаксического анализа NTFS / FAT32 , используемые для проникновения в файловую систему для поиска файла winlogon.exe или wininit.exe . При обнаружении вредоносный код содержит полезную нагрузку файла, способную внедрить вредоносный код в указанный файл и взломать его точку входа. Перед заражением файла вредоносный код MBR проверяет, не заражен ли он, путем поиска строки « cnns » со смещением 0x50 от начала PE-файла. Это маркер инфекции. Если строка не найдена, заражение сохраняет зашифрованную полезную нагрузку - около 600 байт кода - внутри winlogon.exe или wininit.exe и перехватывает точку входа PE в ее начало, сохраняя исходную точку входа со смещением 0x60.

На этом заражение MBR заканчивается, ожидая запуска Windows, который загрузит пропатченный исполняемый файл. При загрузке полезная нагрузка самостоятельно расшифровывает свой вредоносный код и загружает в память драйвер my.sys. Затем он пытается загрузить дополнительную инфекцию с (теперь недоступного) URL-адреса: http://dh.3515.info:806/test/91/calc[removed].

Концепция Mebromi не нова. Фактически мы должны вспомнить руткит BIOS IceLord, опубликованный в 2007 году , - публичное подтверждение концепции, способной нацеливаться на Award BIOS rom, используя подход, очень похожий на Mebromi - или мы должны сказать, что Mebromi больше, чем просто вдохновлен руткитом IceLord ?

Хранение вредоносного кода в ПЗУ BIOS может фактически стать чем-то большим, чем просто проблема для программного обеспечения безопасности, учитывая тот факт, что даже если антивирус обнаружит и очистит MBR-инфекцию, он будет восстановлен при следующем запуске системы, когда вредоносная нагрузка BIOS будет переписать код MBR снова. Разработка антивирусной утилиты, способной очистить код BIOS, является сложной задачей, поскольку она должна быть полностью защищена от ошибок, чтобы вообще не сделать систему не загружаемой. Работа с такими конкретными системными кодами должна быть оставлена ​​разработчикам конкретной модели материнской платы, которые выпускают обновления BIOS вместе со специальным инструментом для обновления кода BIOS.

С другой стороны, хотя этот вид инфекции является потенциально одной из наиболее стойких инфекций, известных в дикой природе, он вряд ли станет серьезной угрозой из-за уровня сложности, необходимого для достижения цели. Хотя заражение в режиме ядра или заражение MBR все еще может работать обычным образом на всех ПК - и у них все еще есть огромное свободное пространство для игры, руткит на основе BIOS должен быть полностью совместим со всеми основными BIOS оттуда он должен быть в состоянии заразить все различные версии Award, Phoenix, AMI BIOS там; уровень сложности, который просто не требуется для написания хорошей персистентной инфекции (например, руткит TDL, различные выпуски Rustock, руткит ZeroAccess среди всех). На самом деле, почему Mebromi использует только Award BIOS? Возможно, потому что уже было известное доказательство концепции, которая уже 5 лет предназначена для Award BIOS ROM, доступной онлайн.

Являются ли руткиты BIOS реальной угрозой? Да, мы можем считать Mebromi первым настоящим инцидентом с руткитом BIOS, обнаруженным в дикой природе, - давайте рассмотрим руткит BIOS IceLord как доказательство концепции. Должны ли мы беспокоиться о руткитах BIOS? Что ж, пока мы пытаемся выяснить, заражен ли наш компьютер неизвестным и супер-скрытным руткитом BIOS, давайте попробуем выяснить, существует ли более «скромный» руткит в режиме ядра, который уже заражает наш ПК, позволяя удаленному злоумышленнику молча владеть нашей системой.

Похожие

«Лаборатория Касперского» расскажет, что такое руткит
руткитов они существуют уже около 20 лет и позволяют хакерам получать доступ и похищать данные с компьютера пользователя, оставаясь скрытыми в компьютере в течение длительного времени. Термин описывает серию вредоносных программ, предназначенных для обхода систем обнаружения и предоставления хакеру удаленного доступа к компьютеру жертвы. Чтобы помочь вам понять, что такое
Режим SATA - Руководство по оптимизации BIOS - Tech ARP
Общие параметры: RAID, SATA или AHCI, IDE Функция BIOS режима SATA аналогична функции BIOS режима
... BIOS! Введите свое имя и адрес электронной почты и получите нашу электронную книгу «Как обновить BIOS ва...
... BIOS! Введите свое имя и адрес электронной почты и получите нашу электронную книгу «Как обновить BIOS вашего ПК за 3 простых шага» (стоимость 15 $) , бесплатные советы по BIOS и обновления о BIOS Wim!
Как очистить CMOS вашего компьютера для сброса настроек BIOS
... вня, такие как системное время и аппаратные настройки, в CMOS"> Ваш компьютер хранит настройки низкого уровня, такие как системное время и аппаратные настройки, в CMOS. Эти настройки настраиваются в меню настроек BIOS. Если у вас возникли проблемы с совместимостью оборудования или другая проблема, вы можете попытаться очистить CMOS. Очистка CMOS сбрасывает ваши настройки BIOS обратно к заводским настройкам по умолчанию. В большинстве случаев вы можете очистить CMOS из меню
Бесплатный мгновенный доступ к подсказкам BIOS! Введите свое имя и адрес электронной почты и получи...
Бесплатный мгновенный доступ к подсказкам BIOS! Введите свое имя и адрес электронной почты и получите нашу электронную книгу «Как обновить BIOS вашего ПК за 3 простых шага» (стоимость 15 $) , бесплатные советы по BIOS и обновления о BIOS Wim!
Как создать плавающую панель уведомлений в WordPress
Хотите ли вы информировать пользователей вашего сайта об изменениях, новостях или, например, политике использования файлов cookie? Вы можете сделать это с помощью специальной движущейся панели, прикрепленной к главной странице сайта. С помощью этого руководства вы узнаете, как этого добиться на платформе Wordpress.
Тест компьютерной игры на 6000 злотых - MorePC Challenger PurePC
... первый наш собственный комплект, который можно купить в магазине morele.net. Мы убедились, что не было оснований жаловаться на конфигурацию оборудования.
Как очистить неизвестный пароль BIOS или CMOS
... BIOS или CMOS (как видно на рисунке ниже). Если вы не знаете пароль BIOS, вам нужно его очистить. В следующих разделах содержатся инструкции о том, как это сделать, используя несколько методов. Очистить с помощью перемычки (рекомендуется) предосторожность При работе внутри компьютера убедитесь, что вы знаете о потенциальном ущербе, который может
На самом деле, почему Mebromi использует только Award BIOS?
Являются ли руткиты BIOS реальной угрозой?
Должны ли мы беспокоиться о руткитах BIOS?

Новости

Карта