2015_лекции / Лекция №3.1_2015
.pdf
Проблемы и преимущества загрузочного ВрПО
Windows
контролирует практически все состояние машины
использует прерывания BIOS (таблица IVT практически полностью сохраняется)
не трогает память, зарезервированную под BIOS
=>
Можно использовать память для сохранения в ней вредоносного кода
Использовать прерывания INT 13h (Обращение к жесткому диску) для модификации файлов OS при их загрузке
Поиск определенных сигнатур в коде OSLOADER
Должен быть выполнен перехват прерываний INT 13h/AH = 02h
(Чтение секторов) и 13h/AH = 42h (Получить параметры диска (IBM
/INT 13H MS Extensions)
Модификация OSLOADER является промежуточной точкой для дальнейшей модификации OC (например, модификации загрузочных драйверов)
Основные стратегии заражения
BIOS-вирусы
Модификация главная загрузочная запись жесткого диска
(MBR (master boot record))
Модификация первых секторов загрузочного раздела (VPR (Volume Boot Record)/ IPL (Initial Program Loader))
|
MBR |
|
Вирус |
0.0.1 |
Таблица |
0.0.1 |
Вирус |
|
|
Таблица |
|
|
разделов |
|
разделов |
вирус |
|
|
|
0.0. |
MBR |
7 |
|
Стратегии заражения MBR
Буткит Sinowal
Подробное описание: http://stoned-vienna.com/html/index.php?page=analysis-of-sinowal
Буткит Sinowal
перехват прерывания Int 13h в IDT ;
поиск базы ntoskrnl и перехват в нѐм вызова IoInitSystem ();
зачитывание драйвера буткита из неразмеченной области в выделенную виртуальную память;
запуск драйвера с помощью системного вызова ZwCreateSystemThread () ;
устанавливает перехваты на драйвера дисковой подсистемы (IRP_MJ_READ, IRP_MJ_WRITE) для сокрытия своего присутствия в системе
Буткит Win32/Gapz (2012)
Составные части
Дроппер
Вредоносный код MBR/Вредоносный код VBR
Код в режиме ядра
Уязвимые ОС
32-битные Windows XP SP2 и выше (исключая
Windows Vista и Vista SP1)
64-битные Windows XP SP2 и выше
Буткит Win32/Gapz : дроппер
start — точка входа в дроппер, осуществляет его внедрение в адресное пространство доверенного процесса explorer.exe;
icmnf — отвечает за повышение (эскалацию) привилегий (LPE-эксплойты);
isyspf — выполняет заражение жертвы кодом буткита
Буткит Win32/Gapz : Вредоносный код MBR
Буткит Win32/Gapz : Вредоносный
код MBR
Вредоносный код MBR перехватывает обработчик прерываний 0x13, int 13h
Передает управление оригинальному коду MBR
Отслеживает загрузку следующих модулей:
ntldr (на системах до Windows Vista)
bootmgr (на системах Vista+)
winload.exe (на системах Vista+)
Буткит Win32/Gapz : Вредоносный
код MBR
