Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги хакеры / Защита_от_взлома_сокеты,_эксплойты,_shell_код_Фостер_Дж_

.pdf
Скачиваний:
14
Добавлен:
19.04.2024
Размер:
3.68 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

определение недопустимых

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

символов, 614 определение ограничений на

размер, 615 разработка эксплойтов

с помощью, 595 Meterpreter, 619 Microsoft IDL (MIDL),

компилятор, 651

Microsoft Internet Information Server (IIS) 4.0, переполнение буфера выбор вектора управления, 602 выбор полезной нагрузки

и кодировщика, 619 вычисление адреса возврата, 607 дорожка из NOP-команд, 617 использование адреса

возврата, 612 нахождение смещения, 597

определение вектора атаки, 595 определение недопустимых

символов, 614 определение ограничений

на размер, 615 разработка эксплойта с помощью

msfconsole, 589 module, атрибут, 672 Msf::Exploit, класс, 637

msfcli, интерфейс к Metasploit, 588 msfconsole, интерфейс к Metasploit

демонстрация, 589 назначение, 588

msfelfscan, утилита, 611 msfencode, утилита, 622 msfpayload, утилита, 620 msfpescan, утилита, 611 msfweb, интерфейс к Metasploit

генерирование полезной нагрузки, 626

назначение, 588

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

Предметный указатель 771

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

N

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

NASL (Nessus Attack Scripting Language), язык арифметические операторы, 114 ассоциативные массивы, 111 встроенные функции, 120 интерпретатор команд, 122 история создания, 108 канонический сценарий, 127 комментарии, 110

криптографические функции, 122 назначение, 109 написание сценариев, 120

операторы вне категории, 113 операторы работы

со строками, 115 операторы сравнения, 114 перенос программ, 131

пользовательские функции, 119 сетевые функции, 121 синтаксис, 110 стандартные массивы, 111

управляющие конструкции, 117 функции извещения, 125 функции манипулирования

пакетами, 121 функции манипулирования

строками, 122 чувствительность к регистру, 111

nasm, ассемблер дизассемблер ndisasm, 494 компиляция shell-кода, 499

эквивалент программы на C, 404 NBTSTAT, программа, 267

Nessus, программа, 108, 123, 196 база знаний, 109

NetBIOS Name Service раскрытие информации, 267

Netcat, программа

и отладка программ, 226

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

D

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

772 Защита от взлома: сокеты, эксплойты и shell#код

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

 

 

 

применение для атаки

Pcap, 389

 

 

 

p

 

-x cha

 

 

 

 

 

 

df

 

e

 

 

 

 

 

df

 

e

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

на переполнение буфера

PE (формат исполняемых файлов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â IIS 4.0, 597

â Windows), 611

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

new(), конструктор класса, 635

Perl, язык программирования, 79

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nikto, программа

канонические инструменты, 88

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

база данных об уязвимостях, 705

модификаторы регулярных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

описание, 704

выражений, 88

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сравнение с SP-Rebel, 737

операторы, 82

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NMAP, программа

операторы сравнения, 83

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и BSD-сокеты, 199

перенос на NASL, 131

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и разбор IP-адресов, 70

пример сценария, 84

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NopDontFallThrough, переменная

сопоставление с образцом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

окружения, 630

и подстановка, 87

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ntdll.dll, 610

специальные переменные, 86

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NULL, 113, 740

сравнение с NASL, 144

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

типы данных, 80

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

O

утилита модификации файла

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

протокола, 90

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

objdump, утилита, 401

утилиты, связанные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OllyDbg, отладчик, 598

с безопасностью, 704

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

open, системный вызов, 756

Pex::Text::Freeform(), функция, 634

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OpenBSD

PexAlphaNum, кодировщик, 623

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

атака на форматную строку, 507

POPAD, команда, 642

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OpenSSH, 570

POSIX (Portable Operating System

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OpenSSL SSLv2, переполнение

Interface), стандарт, 287

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

буфера из-за неправильно

POSIX threads (pthreads), API

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сформированного клиентского

обзор, 293

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ключа

синхронизация потоков, 297

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

описание, 550

создание потоков, 294

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

эксплойт для, 554

printf, функция

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OptyNop2, генератор дорожек

атака на форматную строку, 508

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NOP-команд, 618

pthread, библиотека, 191

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OutputStream, класс, 238, 250

pthread_create(), функция, 191

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

Python, язык программирования

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обзор, 96

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PatternCreate(), метод, 599

пакет InlineEgg, 96

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

patternOffset.pl, сценарий, 601

R

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PayLoad, êëþ÷, 633

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PAYLOAD, переменная

RandomNops, переменная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

окружения, 630

окружения, 631

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

g

.c

 

 

 

 

p

 

 

 

 

 

 

 

(Remote Data Services), 229

 

 

 

 

-xchRDSa

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

read(), функция задание таймаута, 166 и UDP-сокеты, 157

read, системный вызов, 756 readelf, программа, 402 recv(), функция

задание таймаута, 166

èUDP-сокеты, 157

èпереносимые сетевые

программы, 366 recvfrom(), функция

задание таймаута, 166

èUDP-сокеты, 157

èпереносимые сетевые программы, 366

прием UDP-датаграмм, 163 RegEdit, утилита, 648 RegSvr32, утилита регистрации

COM-объектов, 648 RET, команда, 407

RHOST, переменная окружения задание, 593 конфигурирование

эксплойта, 632

RPC (Remote Procedure Call) утилиты для определения номеров программ, 178

RPC1_ID_HEAD, 189

RPC1_ID_TAIL, 189 RPCDump, утилита COMSupport.h, 695 RPCDump.c, 695

добавление COM-расширений, 675

классы компонентов, 688 определение интерфейсов, 685 поток управления, 680 процедуры интеграции

с приложением, 682

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Предметный указатель 773

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

 

m

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

g

.c

 

реализация COM

 

 

p

 

-x cha

 

 

 

 

 

 

df

 

e

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

EXE-сервера, 676

RPORT, переменная окружения, 593

S

select(), функция, 358 send(), функция

в приложении Winsock, 215

èUDP-сокеты, 157

èпереносимые сетевые

программы, 363

отправка UDP-датаграммы, 162 sendmail, программа, 516 sendto(), функция

èUDP-сокеты, 157

èпереносимые сетевые

программы, 363

отправка UDP-датаграммы, 163

ServerSocket, класс, 258 set, команда Metasploit Framework, 593, 630 setg, команда Metasploit

Framework, 593 setsockopt(), функция

задание опций BSD-сокета, 166

èпереносимые сетевые программы, 372

shell-êîä

для выхода из chroot-тюрьмы, 420 Shell-код

в эксплойте, 520 внедрение в локальную

программу, 417 внедрение в удаленную

программу, 413 готовый, 493

äë÷ Windows, 425

для обратного соединения, 468 для повторного использования

сокета, 471

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

D

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

774 Защита от взлома: сокеты, эксплойты и shell#код

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

 

 

 

для привязки к порту, 455

sockaddr_in, структура

 

 

 

p

 

-x cha

 

 

 

 

 

 

df

 

e

 

 

 

 

 

df

 

e

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова accept, 460

отправка UDP-датаграммы, 161

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова dup2, 461

прием UDP-датаграммы, 165

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова execve, 446

socket(), функция, 343

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова listen, 460

назначение, 149

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова socket, 458

создание UDP-сокета, 158

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для системного вызова write, 441

создание клиентского сокета, 149

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и каркас Metasploit, 641

Socket, класс

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и полезная нагрузка, 603

программирование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

инструменты

TCP-клиента, 235

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для генерирования, 748

разрешение имени хоста, 239

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

кодирование, 481

socket, системный вызов, 458, 757

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

многоплатформенный, 492

socketcall, системный вызов, 496, 757

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обзор, 400, 438

SOL_SOCKET, константа, 168

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение, 741

SPI (Service Provider Interface), 741

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

повторное использование

SP-Rebel, программа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

переменных программы, 488

быстродействие, 737

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

повторное использование

выполнение, 731

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

файловых дескрипторов, 474

заголовочные файлы, 730

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проблема адресации, 406

компиляция, 733

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

проблема нулевого байта, 409

проектирование, 705

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

реализация системных

разбор базы данных, 717

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вызовов, 410

результаты работы, 734

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

show exploits, команда, 590

сигнатуры атак, 705

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

show options, команда, 592

составные части, 706

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SIGALRM, сигнал, 191

управление соединением и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SIGPIPE, сигнал, 191

пакетная пушка, 706

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SIGURG, сигнал, 516

SQL (Structured Query

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Slapper, червь, 494

Language), 741

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sleep(), функция, 425

SSL (Secure Sockets Layer),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SNMP (Simple Network Management

протокол, 277

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Protocol), протокол, 169

STDERR, переменная в Perl, 87

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

агент, 169

STDIN, переменная в Perl, 86

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SO_RCVTIMEO, опция сокета, 166

STDOUT, переменная в Perl, 87

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SOCK_DGRAM, константа

strace, программа, 402

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в клиентском приложении

strcpy, 741

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Winsock, 210

strncpy, 741

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

создание UDP-сокета, 159

subst, функция в Perl, 87

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SOCK_STREAM, константа

Sun Microsystems, 48

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в клиентском приложении

Sun Solaris, 506

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Winsock, 210

syslog, функция, 511

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

T

e

 

 

 

 

 

 

n

 

 

 

 

 

 

 

-xcha

 

 

 

 

t_delete, функция, 562 Targets, êëþ÷, 634

TCP, заголовочный файл, 382

TCPClient1.java, 235

TCPClient2.java, 243

TCPServer1.java, 247

TCPServer2.java, 253 Telnet, 741

ThreadPool, класс, 258

Throwable, класс, 260

U

UDP, заголовочный файл, 381

URLConnection, класс, 277 UW POP2, программа, 574

V

va_arg, тип данных, 510 VARIANT, тип данных, 654 Visual Studio, 200

компиляция программы SP-Rebel, 731

написание shell-кода для Windows, 420

W

Whisker, программа, 704

WinPcap, 389

Winsock (Windows Sockets)

èнаписание переносимых сетевых программ, 336

написание эксплойтов и программ для проверки

наличия уязвимостей, 215 обзор, 198 применение для атаки

на Web-сервер, 227

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Предметный указатель 775

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

применение для атаки

 

.

 

-x cha

 

.c

 

 

 

p

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

с переполнением буфера, 229 программирование клиентских

приложений, 207 программирование серверных

приложений, 211 Winsock 2.0

компоновка с библиотекой, 200 расширения, 343

WorkerThread, класс, 259 WormCatcher, программа, 260 write, системный вызов, 441

WSACleanup(), функция, 205

WSADATA, объект, 201

WSAStartup(), функция, 203

X

X11R6 4.2 XLOCALEDIR, уязвимость, 538

xlockmore, уязвимость, 510

А

Абстрактные типы данных

âобъектно-ориентированном программировании, 49

âязыке C#, 61

âязыке C++, 35

Адресное пространство процесса, Win32, 660

Анализаторы сетевого трафика, 751 Анализаторы сетевых протоколов

(сниферы), 226 Аргументы

âкомандной строке, обработка, 325

заталкивание в стек в shell-коде, 408

клиентского приложения Winsock, 207

системных вызовов, 411

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

776 Защита от взлома: сокеты, эксплойты и shell#код

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

 

 

 

Генераторы пакетов, 751

 

 

p

 

-x cha

 

 

 

 

 

 

 

 

 

Арифметические операторы

 

 

 

 

 

e

 

 

 

 

df

 

 

n

e

 

 

 

 

 

df

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке Perl, 82

Генераторы случайных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

данных, 543

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б

Генерирование порядковых

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

номеров, 514

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Байткод, 741

Гонки, 514

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Безопасность

связанные с сигналами, 516

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NASL-сценариев, 110

связанные с файлами, 515

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

библиотеки, 750

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

языка C#, 61

Д

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

языка C/C++, 35

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

языка Java, 50

Дамп памяти, 480

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Библиотеки. Ñì. также Active

Двухшаговая атака, 506

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Template Library, DLL

Декодер, 481

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Winsock, 200

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Демоны и Win32-сервисы, 317

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â UNIX è Windows, 311

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дерево атак, 39

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

динамическая загрузка, 313

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Деструктор, 721, 727

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Булевские величины,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дизассемблер

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â NASL, 113, 143

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

äëÿ shell-êîäà, 435

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Буфер, 741

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение, 742

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В

применение для программ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с недоступными исходными

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вектор атаки

текстами, 543

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Директивы препроцессора, 280

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение для эксплойта, 596

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Длина (в заголовке UDP), 157

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

перезаписывание адреса

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дорожка из NOP-команд, 617

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

возврата, 597

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

генератор, 630

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вектор управления, 602

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

интегрирование эксплойта

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виртуальная машина, 742

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в каркас Metasploit, 641

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виртуальная операционная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

параметры, 633

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

система, 398

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Внутрипроцессный COM-сервер,

З

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

реализация, 666

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Возвращаемые значения

Заголовочные файлы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и переносимые сетевые

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

VulnDB.h, 730

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программы, 338

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

системным вызовом, 413

для протокола ICMP, 381

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для протокола IPv4, 379

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Г

 

Затирание кучи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

возникновение гонки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Генератор NOP-команд, 630

â sendmail, 516

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Генератор случайных чисел, 513

определение, 742

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

e

 

 

 

 

df

 

И

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

Инкапсуляция

âязыке C#, 60

âязыке C++, 35

âязыке Java, 49 определение, 742

Интеллектуальные указатели, 653 Интерпретатор

для языка Python, 96 команд NASL, 122 написание, 278 определение, 742

Интерфейсы COM-объектов, определение, 685

К

Каталоги

èshell-êîä для выхода из chroot-тюрьмы, 420

обработка в переносимых программах, 307

Класс, 742

âязыке C#, 66

âязыке Java, 54 иерархии, 44 композиция, 656 определение и пример, 42 регистрация, 653

Классы компонентов, в утилите RPCDump, 688

Клиентские приложения TCP, программирование с

помощью Java Sockets, 235 для протокола TCP, 149

для протокола UDP, 156 использование BSD-сокетов, 149 программа WormCatcher, 260 программирование клиентских

сокетов, 527

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Предметный указатель 777

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

 

m

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

g

.c

 

программирование с помощью

 

 

p

 

-x cha

 

 

 

 

 

 

df

 

e

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

Winsock, 207

Кодирование полезной нагрузки, 481, 619, 622, 630, 641

Коды операций

èбаза данных Metasploit Opcode Database, 608

èдорожка из NOP-команд, 617 Конструкторы

класса ServerSocket, 246 класса Socket, 235

Контроль выхода за границы, 36 Контрольная сумма (в заголовке

UDP), 157

Куча, определение, 742

Л

Логические операторы

âязыке NASL, 115

âязыке Perl, 83

Ложные срабатывания, 737 Локальные эксплойты

гонки, связанные с сигналами, 516

написание, 505

М

Макросы ATL, 658

BEGIN_ENTRY_POINT / END_ENTRY_POINT, 679

Массивы

в языке NASL, 80, 111 Машинный язык, 743 Межпроцессные коммуникации

(IPC), 148 Межсетевой экран, 523 Метод, определение, 743

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

778 Защита от взлома: сокеты, эксплойты и shell#код

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

 

 

 

определение на этапе

 

 

p

 

-x cha

 

 

 

 

 

 

 

 

 

Многопоточность

 

 

 

 

 

e

 

 

 

 

df

 

 

n

e

 

 

 

 

 

df

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â UNIX è Windows, 293

компиляции, 283

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке Java, 49

сравнение с точки зрения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

реализация, 191

безопасности, 586

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Момент проверки – момент

Описательные функции (NASL), 124

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

использования, тип ошибок, 514

Отладчик

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Мьютекс, 293

и определение смещения адреса

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

возврата, 642

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Н

определение, 743

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

перезапись адреса возврата,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Наследование

597, 606

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке C#, 60

перечень, 748

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке C++, 35

применение для программ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке Java, 49

с недоступными исходными

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

иерархии классов, 44

текстами, 543, 598

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение, 743

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Недопустимые символы

П

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в полезной нагрузке, 619, 622

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

задание, 633

Пакетная пушка, 731

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и кодировщики, 641

Память

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение, 614

затирание кучи, 544

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

устранение, 631

и переносимость программ, 324

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нулевые байты, 414, 434, 614

и проблема адресации

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â shell-êîäå, 406

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

О

переполнение стека, 531

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Переменные окружения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Обработчик сигнала, 516

доступ из Metasploit, 635

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Объектно-ориентированное

структура UserOpts, 632

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программирование

Переносимые сетевые программы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

достоинства, 49

accept(), 354

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è ÿçûê C#, 60

API, 343

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определение, 743

bind(), 348

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оконечная точка сокета, 149, 235

BSD-сокеты и Winsock, 336

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операторы

close()/closesocket(), 370

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке NASL, 113

connect(), 346

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке Perl, 82

ioctl() / ioctlsocket(), 361

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операторы присваивания, 82

listen(), 351

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Операционные системы

Pcap è WinPcap, 389

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

32- и 64-разрядные, 333

read() / write(), 343

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

многоплатформенный

recv() / recvfrom(), 366

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

shell-êîä, 492, 500

select(), 358

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

send() / sendto(), 363

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

setsockopt(), 372 socket(), 343

возвращаемые значения, 338 определение локального IP-

адреса, 383 подлежащие переносу

компоненты, 338 простые сокеты, 378 расширения, определенные

âWinsock 2.0, 343 Переносимый код

32- и 64-разрядные платформы, 333

библиотеки, 311 директивы препроцессора, 281 использование директив

#ifdef, 281 многопоточность, 293 обзор, 280

обработка аргументов, заданных

âкомандной строке, 325 определение операционной

системы, 283 порядок байтов, 285

программирование демонов и Win32-сервисов, 317

работа с каталогами, 307 работа с файлами, 304 сигналы, 302 синхронизация потоков, 293 создание и завершение

процессов, 287 управление памятью, 324

целочисленные типы данных, 330

Переполнение буфера атака с использованием

Winsock, 229

âсервере UW POP2, 574

âязыках C/C++, 36

и NASL-сценарии, 108

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

Предметный указатель 779

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

 

m

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

g

.c

 

из-за неправильно

 

 

p

 

-x cha

 

 

 

 

 

 

df

 

e

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

сформированного клиентского ключа, 549

определение, 744 Переполнение стека как один из видов

Web-уязвимостей, 736 обзор, 532 определение, 744 поиск в программах

с недоступными исходными текстами, 543

поиск в программах с открытыми исходными текстами, 537

Переполнение целых чисел обзор, 564

обход проверки размера, 567, 744 при умножении, 566

Песочница

в языке Java, 50 определение, 744

Платформенная независимость определение, 744

языка Java, 49 Побитовые операторы, 116

Подделка TCP-соединения, 514 Подделка Web-сайта, 58 Подстановка, Perl, 87 Полезная нагрузка

выбор в mfsconsole, 593 дорожки из NOP-команд, 617 интегрирование эксплойта

в каркас Metasploit, 629 определение недопустимых

символов, 614 перезаписывание адреса

возврата, 602 создание и кодирование, 619

Порт отправителя (в заголовке UDP), 157

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

t

 

 

 

F

 

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

780 Защита от взлома: сокеты, эксплойты и shell#код

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

g

.c

 

 

 

.

 

 

 

 

g

.c

 

 

 

p

 

-xcha

 

 

 

переполнение буфера

 

 

p

 

-x cha

 

 

 

 

 

 

 

 

 

Порт получателя (в заголовке

 

 

 

 

 

e

 

 

 

 

df

 

 

n

e

 

 

 

 

 

df

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

UDP), 157

â UW POP2, 574

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Порты

переполнение целого в OpenSSH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

клиентское приложение

в процедуре оклика/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â Windows, 207

отзыва, 570

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

отправка UDP-датаграммы, 161

применение Winsock для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

утилита для определения номеров

реализации атаки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RPC-программ, 178

на Web-сервер, 227

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Порядок байтов, 285

разбор IP-адреса, заданного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Последовательная обработка

в командной строке, 70

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

запросов в TCP-сервере, 251

скачивание Web-страницы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Последовательности символов для

с помощью Winsock, 206

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

завершения строки, 112

сценарий на языке NASL, 127

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поток управления

Проблема адресации в shell-коде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в программе RPCDump, 680

метод jmp/call, 407

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке C#, 64

метод заталкивания аргументов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке C/C++, 40

â ñòåê, 408

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в языке Java, 52

обзор, 432

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Права доступа к файлу, 515

Программные ошибки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Привязка к порту

атаки на форматную строку, 507

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

shell-êîä äëÿ, 413

обнаружение уязвимостей, 504

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в эксплойтах, 527

при работе с целыми

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение

числами, 564

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

обнаружение уязвимостей, 504

Программы с недоступными

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

процедуры интеграции

исходными текстами, 543

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ñ, 682, 695

Программы с открытыми

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

средства отладки, 226

исходными текстами, 537

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Примеры

Простые сокеты, 378

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

использование Winsock для

API, 378

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

реализации атаки с

в языке Java, 277

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

переполнением буфера, 229

заголовочные файлы, 379

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ошибка в программе man при

Протоколы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

контроле входных данных, 517

поддерживаемые Winsock 2, 199

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ошибка форматной строки

уязвимости, 521

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â xlockmore, 510

Процедурное

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

переполнение XLOCALEDIR

программирование, 32

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â X11R6 4.2, 538

Процедурный язык

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

переполнение буфера в OpenSSH

программирования, 744

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

из-за неправильно

Процессоры, 285

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сформированного

Псевдокод, 132

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

клиентского ключа, 549

Пул потоков, 252