SlideShare une entreprise Scribd logo
1  sur  31
Сложнейшие техники, применяемые буткитами  и полиморфными вирусами Vyacheslav Zakorzhevsky, Senior Malware Analyst, Kaspersky Lab 19 сентября 2011 / Yet Another Conference, Yandex
Обзор выступления PAGE 2 |  Yet Another Conference 2011 |  September 19, 2011 Современное вредоносное ПО уже давно перешло из разряда «поделок» в категорию «сложных программ» В чём сложность? Зачем? Как?
Буткиты. Чем страшны, как работают и что делают?
Буткиты. Что это и зачем? PAGE 4 |  Yet Another Conference 2011 |  September 19, 2011 Буткит – вредоносная программа, модифицирующая MBR жёсткого диска В чём сложность? ,[object Object]
Перехват и обработка прерываний
Внедрение в стартовый код операционной системы,[object Object]
Структура жёсткого диска и назначение MBR PAGE 6 |  Yet Another Conference 2011 |  September 19, 2011 Действия, выполняемые MBR: Поиск загрузочного раздела Проверка сигнатуры AA55h Передача управление в найденный раздел Структуражёсткого диска в общем случае MBR 1 - ый сектор Таблица разделов 2 - 63 сектора Reserved Раздел 1 64 - … сектора Раздел 2 Раздел n
Начальная загрузка компьютера PAGE 7 |  Yet Another Conference 2011 |  September 19, 2011 В случае успеха Поиск «активного» раздела Загрузочный раздел MBR
БуткитSinowal, модификация жёсткого диска PAGE 8 |  Yet Another Conference 2011 |  September 19, 2011 Структуражёсткого диска после заражения Структуражёсткого диска до заражения MBR MBR 1 - ый сектор 1 - ый сектор Таблица разделов Таблица разделов 2 - 63 сектора Reserved 2 - 63 сектора Reserved Раздел 1 64 - … сектора Раздел 1 64 - … сектора Раздел 2 Оригинальный MBR Код буткита Драйвер буткита Раздел 2 Раздел n Раздел n Неразмеченное пространство
Полный алгоритм работы буткит компоненты Sinowal PAGE 9 |  Yet Another Conference 2011 |  September 19, 2011 Структура заражённого жёсткого диска Структура физической памяти Заражённый MBR 0x0000 IDT Таблица разделов 0x0400 Reserved BIOS Data 0x0600 Раздел 1 MBR 0x0800 0x7C00 Раздел 2 Считанный BIOS`омMBR Раздел n 0x7E00 Оригинальный MBR Неразмеченное пространство, занятое данными буткита 0x8000 Код буткита 0x9000 0x9F40 Код буткита
Основные действия буткита PAGE 10 |  Yet Another Conference 2011 |  September 19, 2011 	Дальнейшие действия, выполняемые буткитом: Перехват Int 13h в IDT Перехват управления в ntbootdd.sys после BlLoadBootDrivers Поиск базы ntoskrnlи перехват в нём IoInitSystem Зачитывание драйвера буткита из неразмеченной области в выделенную виртуальную память Запуск драйвера с помощью ZwCreateSystemThread
Что в итоге? PAGE 11 |  Yet Another Conference 2011 |  September 19, 2011 Осуществлён запуск вредоносного кода в ring0 Запуск кода буткита осуществляется сразу же после инициализации системы Вредоносный код исполняется вне какого-либо процесса Код буткита располагается вне файловой системы
Буткит, подключающий нулевые виртуальные адреса и повышающий уровень привилегий
БуткитTrup - особенности PAGE 13 |  Yet Another Conference 2011 |  September 19, 2011 В чём сложность? ,[object Object]
Добавление элементов в глобальную таблицу дескрипторов,[object Object]
Виртуальная память в Windows  PAGE 15 |  Yet Another Conference 2011 |  September 19, 2011 Разбиение адресного пространства в системах Windows NT (32-бит) Назначение раздела адресного пространства 0x00000000 – 0x0000FFFF Для выявления нулевых указателей 0x00010000 – 0x7FFEFFFF Для кода и данных ring 3 Для выявления некорректных указателей 0x7FFF0000 – 0x7FFFFFFF 0x80000000 – 0xFFFFFFFF Для кода и данных ring 0
Физическая память в Windows  PAGE 16 |  Yet Another Conference 2011 |  September 19, 2011 Распределения начальных адресов физической памяти при инициализацииWindows 0x0000 old IDT 0x0400 BIOS Data 0x0600 MBR 0x0800 0x7C00 MBR / Boot Sector 0x7E00 Код буткита Код буткита недоступен из Windows, как из ring0, так и из ring3
Виртуальный адрес -> логический адрес PAGE 17 |  Yet Another Conference 2011 |  September 19, 2011 Смещение Селектор (16 – бит) Таблица дескрипторов 32 – битный логический адрес + Дескриптор
Логический адрес -> физический адрес PAGE 18 |  Yet Another Conference 2011 |  September 19, 2011 Логический адрес (32 – бит) Смещение Каталог Таблица Запись n Запись 2 Запись 1 Запись n Запись 2 Запись 1 + 32 – битный физический адрес Модификация записи буткитом CR3
Ring 3 -> ring 0 из «пользовательского» режима PAGE 19 |  Yet Another Conference 2011 |  September 19, 2011 Глобальная таблица дескрипторов Ring 3 Дескриптор кода, DPL = 0 Шлюз вызова,   DPL = 3 Дескриптор n Ring 0 Дескриптор 1 Всегда нулевой
Что же в итоге? PAGE 20 |  Yet Another Conference 2011 |  September 19, 2011 Код буткита использовал неотображённую область физической памяти Вредоносное приложение, запущенное под ring3 безболезненно переходит в ring0
Полиморфный EPO-вирус с собственной виртуальной машиной
PAGE 22 |  Yet Another Conference 2011 |  September 19, 2011 Особенности рассматриваемого файлового вируса Файловый вирус – вредоносная программа, модифицирующаяисполняемый файл таким образом, что к его оригинальной функциональности добавляется вредоносная составляющая В чём сложность рассматриваемого вируса? ,[object Object]
Отсутствие статичных сигнатур вируса
Не производится изменений характеристик секций
Часть кода вируса меняется от поколения к поколению
Присутствует виртуальная машина с собственным P-кодом,[object Object]
Типовой вариант файлового вируса PAGE 24 |  Yet Another Conference 2011 |  September 19, 2011 Тот же самый файл после заражения Типовой PE-файл до заражения header header EP .code .code .data .data .rsrc .rsrc EP Тело вируса Изменены PE-заголовок, последняя секция, характеристики последней секции
Схема заражения исполняемого файла исследуемым вирусом PAGE 25 |  Yet Another Conference 2011 |  September 19, 2011 Тот же самый файл после заражения Типовой PE-файл до заражения header header EP .code EP .code .data .data .data – данные вируса .rsrc Точка входа и характеристики секции не изменяется .rsrc
Модификация функций оригинального файла вирусом PAGE 26 |  Yet Another Conference 2011 |  September 19, 2011 Модификация отдельных функций
Модификация переходов в оригинальном файле вирусом PAGE 27 |  Yet Another Conference 2011 |  September 19, 2011 Модификация отдельных переходов

Contenu connexe

Similaire à Сложнейшие техники, применяемые буткитами и полиморфными вирусами. Вячеслав Закоржевский, Kaspersky Lab

Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении
Voximplant
 
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Ontico
 
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
DEPO Computers
 
6 кареев киров
6 кареев киров6 кареев киров
6 кареев киров
qasib
 
User (1)
User (1)User (1)
User (1)
nsovet
 

Similaire à Сложнейшие техники, применяемые буткитами и полиморфными вирусами. Вячеслав Закоржевский, Kaspersky Lab (20)

Anton Bolshakov - Joint anti-crime. Open source security
Anton Bolshakov - Joint anti-crime. Open source securityAnton Bolshakov - Joint anti-crime. Open source security
Anton Bolshakov - Joint anti-crime. Open source security
 
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении
 
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
Тестирование и оптимизация 1С-Битрикс (Александр Демидов, Олег Бунин)
 
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
Преимущества облачных сервисов DEPO Cloud на базе новой 22-нанометровой микро...
 
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
 
Документирование блоков. Раскрываем все плюсы — Инна Белая, Яндекс
Документирование блоков. Раскрываем все плюсы — Инна Белая, ЯндексДокументирование блоков. Раскрываем все плюсы — Инна Белая, Яндекс
Документирование блоков. Раскрываем все плюсы — Инна Белая, Яндекс
 
Программируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusПрограммируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco Nexus
 
Поговорим о различных версиях .NET
Поговорим о различных версиях .NETПоговорим о различных версиях .NET
Поговорим о различных версиях .NET
 
Сетевой инженер 2.0. Что нужно знать о программируемости в корпоративной сети?
Сетевой инженер 2.0. Что нужно знать о программируемости в корпоративной сети?Сетевой инженер 2.0. Что нужно знать о программируемости в корпоративной сети?
Сетевой инженер 2.0. Что нужно знать о программируемости в корпоративной сети?
 
Состояние Состояния / Алексей Охрименко (IPONWEB)
Состояние Состояния / Алексей Охрименко (IPONWEB)Состояние Состояния / Алексей Охрименко (IPONWEB)
Состояние Состояния / Алексей Охрименко (IPONWEB)
 
Документирование блоков. Раскрываем все плюсы
Документирование блоков. Раскрываем все плюсыДокументирование блоков. Раскрываем все плюсы
Документирование блоков. Раскрываем все плюсы
 
управление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложенийуправление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложений
 
Cyber Bionics #iotconfua
Cyber Bionics #iotconfuaCyber Bionics #iotconfua
Cyber Bionics #iotconfua
 
Современный станок верстальщика
Современный станок верстальщикаСовременный станок верстальщика
Современный станок верстальщика
 
Введение в профессию исследователя приложений без исходных кодов
Введение в профессию исследователя приложений без исходных кодовВведение в профессию исследователя приложений без исходных кодов
Введение в профессию исследователя приложений без исходных кодов
 
6 кареев киров
6 кареев киров6 кареев киров
6 кареев киров
 
User (1)
User (1)User (1)
User (1)
 
User (1)
User (1)User (1)
User (1)
 
Рабочее место электронного документооборота, как сделать клиента счастливее
Рабочее место электронного документооборота, как сделать клиента счастливее Рабочее место электронного документооборота, как сделать клиента счастливее
Рабочее место электронного документооборота, как сделать клиента счастливее
 
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
“Tips&Tricks&Antitricks with .Net Core backend in GameDev”
 

Plus de yaevents

Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
yaevents
 
Тема для WordPress в БЭМ. Владимир Гриненко, Яндекс
Тема для WordPress в БЭМ. Владимир Гриненко, ЯндексТема для WordPress в БЭМ. Владимир Гриненко, Яндекс
Тема для WordPress в БЭМ. Владимир Гриненко, Яндекс
yaevents
 
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
yaevents
 
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндексi-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
yaevents
 
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
yaevents
 
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
yaevents
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
yaevents
 
Мониторинг со всех сторон. Алексей Симаков, Яндекс
Мониторинг со всех сторон. Алексей Симаков, ЯндексМониторинг со всех сторон. Алексей Симаков, Яндекс
Мониторинг со всех сторон. Алексей Симаков, Яндекс
yaevents
 
Истории про разработку сайтов. Сергей Бережной, Яндекс
Истории про разработку сайтов. Сергей Бережной, ЯндексИстории про разработку сайтов. Сергей Бережной, Яндекс
Истории про разработку сайтов. Сергей Бережной, Яндекс
yaevents
 
Разработка приложений для Android на С++. Юрий Береза, Shturmann
Разработка приложений для Android на С++. Юрий Береза, ShturmannРазработка приложений для Android на С++. Юрий Береза, Shturmann
Разработка приложений для Android на С++. Юрий Береза, Shturmann
yaevents
 
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
yaevents
 
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, ЯндексСканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
yaevents
 
Юнит-тестирование и Google Mock. Влад Лосев, Google
Юнит-тестирование и Google Mock. Влад Лосев, GoogleЮнит-тестирование и Google Mock. Влад Лосев, Google
Юнит-тестирование и Google Mock. Влад Лосев, Google
yaevents
 
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
yaevents
 
Using classifiers to compute similarities between face images. Prof. Lior Wol...
Using classifiers to compute similarities between face images. Prof. Lior Wol...Using classifiers to compute similarities between face images. Prof. Lior Wol...
Using classifiers to compute similarities between face images. Prof. Lior Wol...
yaevents
 
Julia Stoyanovich - Making interval-based clustering rank-aware
Julia Stoyanovich - Making interval-based clustering rank-awareJulia Stoyanovich - Making interval-based clustering rank-aware
Julia Stoyanovich - Making interval-based clustering rank-aware
yaevents
 
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
yaevents
 
Evangelos Kanoulas — Advances in Information Retrieval Evaluation
Evangelos Kanoulas — Advances in Information Retrieval EvaluationEvangelos Kanoulas — Advances in Information Retrieval Evaluation
Evangelos Kanoulas — Advances in Information Retrieval Evaluation
yaevents
 
Ben Carterett — Advances in Information Retrieval Evaluation
Ben Carterett — Advances in Information Retrieval EvaluationBen Carterett — Advances in Information Retrieval Evaluation
Ben Carterett — Advances in Information Retrieval Evaluation
yaevents
 
Raffaele Perego "Efficient Query Suggestions in the Long Tail"
Raffaele Perego "Efficient Query Suggestions in the Long Tail"Raffaele Perego "Efficient Query Suggestions in the Long Tail"
Raffaele Perego "Efficient Query Suggestions in the Long Tail"
yaevents
 

Plus de yaevents (20)

Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
Как научить роботов тестировать веб-интерфейсы. Артем Ерошенко, Илья Кацев, Я...
 
Тема для WordPress в БЭМ. Владимир Гриненко, Яндекс
Тема для WordPress в БЭМ. Владимир Гриненко, ЯндексТема для WordPress в БЭМ. Владимир Гриненко, Яндекс
Тема для WordPress в БЭМ. Владимир Гриненко, Яндекс
 
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
Построение сложносоставных блоков в шаблонизаторе bemhtml. Сергей Бережной, Я...
 
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндексi-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
i-bem.js: JavaScript в БЭМ-терминах. Елена Глухова, Варвара Степанова, Яндекс
 
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
Дом из готовых кирпичей. Библиотека блоков, тюнинг, инструменты. Елена Глухов...
 
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
Модели в профессиональной инженерии и тестировании программ. Александр Петрен...
 
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
Администрирование небольших сервисов или один за всех и 100 на одного. Роман ...
 
Мониторинг со всех сторон. Алексей Симаков, Яндекс
Мониторинг со всех сторон. Алексей Симаков, ЯндексМониторинг со всех сторон. Алексей Симаков, Яндекс
Мониторинг со всех сторон. Алексей Симаков, Яндекс
 
Истории про разработку сайтов. Сергей Бережной, Яндекс
Истории про разработку сайтов. Сергей Бережной, ЯндексИстории про разработку сайтов. Сергей Бережной, Яндекс
Истории про разработку сайтов. Сергей Бережной, Яндекс
 
Разработка приложений для Android на С++. Юрий Береза, Shturmann
Разработка приложений для Android на С++. Юрий Береза, ShturmannРазработка приложений для Android на С++. Юрий Береза, Shturmann
Разработка приложений для Android на С++. Юрий Береза, Shturmann
 
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
Кросс-платформенная разработка под мобильные устройства. Дмитрий Жестилевский...
 
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, ЯндексСканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
Сканирование уязвимостей со вкусом Яндекса. Тарас Иващенко, Яндекс
 
Юнит-тестирование и Google Mock. Влад Лосев, Google
Юнит-тестирование и Google Mock. Влад Лосев, GoogleЮнит-тестирование и Google Mock. Влад Лосев, Google
Юнит-тестирование и Google Mock. Влад Лосев, Google
 
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
Зачем обычному программисту знать языки, на которых почти никто не пишет. Але...
 
Using classifiers to compute similarities between face images. Prof. Lior Wol...
Using classifiers to compute similarities between face images. Prof. Lior Wol...Using classifiers to compute similarities between face images. Prof. Lior Wol...
Using classifiers to compute similarities between face images. Prof. Lior Wol...
 
Julia Stoyanovich - Making interval-based clustering rank-aware
Julia Stoyanovich - Making interval-based clustering rank-awareJulia Stoyanovich - Making interval-based clustering rank-aware
Julia Stoyanovich - Making interval-based clustering rank-aware
 
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
Mike Thelwall - Sentiment strength detection for the social web: From YouTube...
 
Evangelos Kanoulas — Advances in Information Retrieval Evaluation
Evangelos Kanoulas — Advances in Information Retrieval EvaluationEvangelos Kanoulas — Advances in Information Retrieval Evaluation
Evangelos Kanoulas — Advances in Information Retrieval Evaluation
 
Ben Carterett — Advances in Information Retrieval Evaluation
Ben Carterett — Advances in Information Retrieval EvaluationBen Carterett — Advances in Information Retrieval Evaluation
Ben Carterett — Advances in Information Retrieval Evaluation
 
Raffaele Perego "Efficient Query Suggestions in the Long Tail"
Raffaele Perego "Efficient Query Suggestions in the Long Tail"Raffaele Perego "Efficient Query Suggestions in the Long Tail"
Raffaele Perego "Efficient Query Suggestions in the Long Tail"
 

Dernier

СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
Хроники кибер-безопасника
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Ирония безопасности
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
Хроники кибер-безопасника
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
Хроники кибер-безопасника
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
Ирония безопасности
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
Хроники кибер-безопасника
 

Dernier (9)

СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
 
MS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdfMS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdf
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
 
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdfMalware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
 
Ransomware_Q3 2023. The report [RU].pdf
Ransomware_Q3 2023.  The report [RU].pdfRansomware_Q3 2023.  The report [RU].pdf
Ransomware_Q3 2023. The report [RU].pdf
 

Сложнейшие техники, применяемые буткитами и полиморфными вирусами. Вячеслав Закоржевский, Kaspersky Lab

  • 1. Сложнейшие техники, применяемые буткитами и полиморфными вирусами Vyacheslav Zakorzhevsky, Senior Malware Analyst, Kaspersky Lab 19 сентября 2011 / Yet Another Conference, Yandex
  • 2. Обзор выступления PAGE 2 | Yet Another Conference 2011 | September 19, 2011 Современное вредоносное ПО уже давно перешло из разряда «поделок» в категорию «сложных программ» В чём сложность? Зачем? Как?
  • 3. Буткиты. Чем страшны, как работают и что делают?
  • 4.
  • 6.
  • 7. Структура жёсткого диска и назначение MBR PAGE 6 | Yet Another Conference 2011 | September 19, 2011 Действия, выполняемые MBR: Поиск загрузочного раздела Проверка сигнатуры AA55h Передача управление в найденный раздел Структуражёсткого диска в общем случае MBR 1 - ый сектор Таблица разделов 2 - 63 сектора Reserved Раздел 1 64 - … сектора Раздел 2 Раздел n
  • 8. Начальная загрузка компьютера PAGE 7 | Yet Another Conference 2011 | September 19, 2011 В случае успеха Поиск «активного» раздела Загрузочный раздел MBR
  • 9. БуткитSinowal, модификация жёсткого диска PAGE 8 | Yet Another Conference 2011 | September 19, 2011 Структуражёсткого диска после заражения Структуражёсткого диска до заражения MBR MBR 1 - ый сектор 1 - ый сектор Таблица разделов Таблица разделов 2 - 63 сектора Reserved 2 - 63 сектора Reserved Раздел 1 64 - … сектора Раздел 1 64 - … сектора Раздел 2 Оригинальный MBR Код буткита Драйвер буткита Раздел 2 Раздел n Раздел n Неразмеченное пространство
  • 10. Полный алгоритм работы буткит компоненты Sinowal PAGE 9 | Yet Another Conference 2011 | September 19, 2011 Структура заражённого жёсткого диска Структура физической памяти Заражённый MBR 0x0000 IDT Таблица разделов 0x0400 Reserved BIOS Data 0x0600 Раздел 1 MBR 0x0800 0x7C00 Раздел 2 Считанный BIOS`омMBR Раздел n 0x7E00 Оригинальный MBR Неразмеченное пространство, занятое данными буткита 0x8000 Код буткита 0x9000 0x9F40 Код буткита
  • 11. Основные действия буткита PAGE 10 | Yet Another Conference 2011 | September 19, 2011 Дальнейшие действия, выполняемые буткитом: Перехват Int 13h в IDT Перехват управления в ntbootdd.sys после BlLoadBootDrivers Поиск базы ntoskrnlи перехват в нём IoInitSystem Зачитывание драйвера буткита из неразмеченной области в выделенную виртуальную память Запуск драйвера с помощью ZwCreateSystemThread
  • 12. Что в итоге? PAGE 11 | Yet Another Conference 2011 | September 19, 2011 Осуществлён запуск вредоносного кода в ring0 Запуск кода буткита осуществляется сразу же после инициализации системы Вредоносный код исполняется вне какого-либо процесса Код буткита располагается вне файловой системы
  • 13. Буткит, подключающий нулевые виртуальные адреса и повышающий уровень привилегий
  • 14.
  • 15.
  • 16. Виртуальная память в Windows PAGE 15 | Yet Another Conference 2011 | September 19, 2011 Разбиение адресного пространства в системах Windows NT (32-бит) Назначение раздела адресного пространства 0x00000000 – 0x0000FFFF Для выявления нулевых указателей 0x00010000 – 0x7FFEFFFF Для кода и данных ring 3 Для выявления некорректных указателей 0x7FFF0000 – 0x7FFFFFFF 0x80000000 – 0xFFFFFFFF Для кода и данных ring 0
  • 17. Физическая память в Windows PAGE 16 | Yet Another Conference 2011 | September 19, 2011 Распределения начальных адресов физической памяти при инициализацииWindows 0x0000 old IDT 0x0400 BIOS Data 0x0600 MBR 0x0800 0x7C00 MBR / Boot Sector 0x7E00 Код буткита Код буткита недоступен из Windows, как из ring0, так и из ring3
  • 18. Виртуальный адрес -> логический адрес PAGE 17 | Yet Another Conference 2011 | September 19, 2011 Смещение Селектор (16 – бит) Таблица дескрипторов 32 – битный логический адрес + Дескриптор
  • 19. Логический адрес -> физический адрес PAGE 18 | Yet Another Conference 2011 | September 19, 2011 Логический адрес (32 – бит) Смещение Каталог Таблица Запись n Запись 2 Запись 1 Запись n Запись 2 Запись 1 + 32 – битный физический адрес Модификация записи буткитом CR3
  • 20. Ring 3 -> ring 0 из «пользовательского» режима PAGE 19 | Yet Another Conference 2011 | September 19, 2011 Глобальная таблица дескрипторов Ring 3 Дескриптор кода, DPL = 0 Шлюз вызова, DPL = 3 Дескриптор n Ring 0 Дескриптор 1 Всегда нулевой
  • 21. Что же в итоге? PAGE 20 | Yet Another Conference 2011 | September 19, 2011 Код буткита использовал неотображённую область физической памяти Вредоносное приложение, запущенное под ring3 безболезненно переходит в ring0
  • 22. Полиморфный EPO-вирус с собственной виртуальной машиной
  • 23.
  • 25. Не производится изменений характеристик секций
  • 26. Часть кода вируса меняется от поколения к поколению
  • 27.
  • 28. Типовой вариант файлового вируса PAGE 24 | Yet Another Conference 2011 | September 19, 2011 Тот же самый файл после заражения Типовой PE-файл до заражения header header EP .code .code .data .data .rsrc .rsrc EP Тело вируса Изменены PE-заголовок, последняя секция, характеристики последней секции
  • 29. Схема заражения исполняемого файла исследуемым вирусом PAGE 25 | Yet Another Conference 2011 | September 19, 2011 Тот же самый файл после заражения Типовой PE-файл до заражения header header EP .code EP .code .data .data .data – данные вируса .rsrc Точка входа и характеристики секции не изменяется .rsrc
  • 30. Модификация функций оригинального файла вирусом PAGE 26 | Yet Another Conference 2011 | September 19, 2011 Модификация отдельных функций
  • 31. Модификация переходов в оригинальном файле вирусом PAGE 27 | Yet Another Conference 2011 | September 19, 2011 Модификация отдельных переходов
  • 32. Полная схема работывируса PAGE 28 | Yet Another Conference 2011 | September 19, 2011 Заражённый файл header EP .code Изменённая функция Изменённая функция данные вируса Статичное тело вируса .data P-Code .rsrc
  • 33. Виртуальная машина PAGE 29 | Yet Another Conference 2011 | September 19, 2011 Формат инструкций виртуальной машины Относительный адрес функции Параметр 1 Параметр 2 4 байта Действия, выполняемые с помощью виртуальной машины: Поиск ntdll Вызов ZwProtectVirtualMemory Расшифровка основного статичного тела, содержащего «полезную нагрузку»
  • 34. Что же в итоге? PAGE 30 | Yet Another Conference 2011 | September 19, 2011 Заражённый файл практически невозможно отличить от оригинального: Отсутствие специфичных статичных фрагментов вредоносного кода Основной код вируса зашифрован всегда по-разному Расположение P-кода всегда разное и вычисляется динамически Модифицированную вирусом секцию сложно отличить от секции обычного файла
  • 35. Vyacheslav Zakorzhevsky, Senior Malware Analyst, Kaspersky Labvyacheslav.zakorzhevsky@kaspersky.com 19 сентября 2011 / Yet Another Conference, Yandex