Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
книги хакеры / Майкл_Сикорски,_Эндрю_Хониг_Вскрытие_покажет!_Практический_анализ.pdf
Скачиваний:
18
Добавлен:
19.04.2024
Размер:
17.17 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Глава 11. Поведение вредоносных программ  279

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Ассемблерный код начинается с опкода 0xB8 (mov imm/r), за которым следуют четыре нулевых байта и опкоды 0xFF 0xE0 (jmp eax). Прежде чем устанавливать перехватчик, руткит заменит эти нулевые байты адресом, чтобы инструкция jmp была корректной. Чтобы активизировать это представление в IDA Pro, нажмите клавишу C.

Руткит использует простую инструкцию memcpy, чтобы вставить адрес своей функции-перехватчика, которая скрывает трафик, проходящий через порт 443. Обратите внимание, что данный адрес (10004011) совпадает с адресом нулевых байтов из предыдущего примера.

100014D9

push

4

100014DB

push

eax

100014DC

push

offset unk_10004011

100014E1

mov

eax, offset hooking_function_hide_Port_443

100014E8

call

memcpy

Затем модифицированные байты и адрес перехватчика передаются функции, которая подменяет код.

Листинг 11.8. Установка перехватчика

100014ED

push

7

100014EF

push

offset Ptr_ZwDeviceIoControlFile

100014F4

push

offset 10004010 ;patchBytes

100014F9

push

edi

100014FA

push

esi

100014FB

call

Install_inline_hook

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

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

Итоги главы

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

В нескольких следующих главах мы погрузимся в эту тему глубже. Из главы 12 вы узнаете, как вредоносному коду удается незаметно запускаться, а далее будет показано, как вредоносы кодируют данные и взаимодействуют по сети.

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

w

 

 

to

 

 

280  Часть IV  •  Возможности вредоносного ПО

w Click

 

 

 

 

 

 

 

 

 

 

 

o

m

 

w

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

Лабораторные работы

Лабораторная работа 11.1

Проанализируйте зараженный файл Lab11-01.exe.

Вопросы

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

1.Что этот вредонос записывает на диск?

2.Как он добивается постоянного присутствия?

3.Как он похищает учетные данные пользователя?

4.Что он делает с похищенными учетными данными?

5.Как с помощью этого вредоноса получить учетные данные пользователя в тестовой среде?

Лабораторная работа 11.2

Проанализируйте вредонос Lab11-02.dll. Исходите из того, что вместе с ним был найден подозрительный файл Lab11-02.ini.

Вопросы

1.Что экспортирует эта зараженная библиотека?

2.Что произойдет, если вы попытаетесь установить ее с помощью rundll32.exe?

3.Где должен находиться файл Lab11-02.ini, чтобы вредонос мог корректно установиться?

4.Как этот вредонос обеспечивает свое постоянное присутствие?

5.Какие методики из арсенала пользовательских руткитов применяет этот вредонос?

6.Что делает код перехватчика?

7.Какой процесс или процессы атакует этот вредонос? С какой целью он это делает?

8.Каково назначение файла .ini?

9.Как динамически отследить активность вредоноса с помощью Wire­ shark?

Лабораторная работа 11.3

Проанализируйте зараженные файлы Lab11-03.exe и Lab11-03.dll. Убедитесь в том, что во время анализа они находятся в одном каталоге.

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Глава 11. Поведение вредоносных программ  281

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Вопросы

1.Какие интересные сведения можно получить с помощью статического анализа?

2.Что произойдет, если запустить этот вредонос?

3.Каким образом Lab11-03.exe устанавливает файл Lab11-03.dll для постоянного присутствия?

4.Какие системные файлы заражает этот вредонос?

5.Что делает Lab11-03.dll?

6.Где вредонос хранит собранные им данные?