Оглавление
Отзывы на 1-е издание книги
Предисловие
Благодарности
0x100 Введение
0x200 Программирование
0x210 Что такое программирование?
0x220 Псевдокод
0x230 Управляющие структуры
0x231 If-then-else
0x232 Циклы while/until
0x233 Циклы for
0x240 Основные понятия программирования
0x241 Переменные
0x242 Арифметические операторы
0x243 Операторы сравнения
0x244 Функции
0x250 Практическая работа
0x251 Общая картина
0x252 Процессор x86
0x253 Язык ассемблера
0x260 Возвращаемся к основам
0x261 Строки
0x262 Целые числа со знаком, без знака, длинные и короткие
0x263 Указатели
0x264 Форматные строки
0x265 Приведение типа
0x266 Аргументы командной строки
0x267 Область видимости переменных
0x270 Сегментация памяти
0x271 Сегменты памяти в C
0x272 Работа с кучей
0x273 Функция malloc() с контролем ошибок
0x280 Опираясь на основы
0x281 Доступ к файлам
0x282 Права доступа к файлам
0x283 Идентификатор пользователя
0x284 Структуры
0x285 Указатели на функции
0x286 Псевдослучайные числа
0x287 Азартная игра
0x300 Эксплойты
0x310 Общая технология эксплойта
0x320 Переполнение буфера
0x321 Переполнение буфера в стеке
0x330 Эксперименты с BASH
0x331 Использование окружения
0x340 Переполнения в других сегментах
0x341 Типичное переполнение в куче
0x342 Переполнение с замещением указателя на функцию
0x350 Форматные строки
0x351 Параметры формата
0x352 Уязвимость форматной строки
0x353 Чтение из памяти по произвольному адресу
0x354 Запись в память по произвольному адресу
0x355 Прямой доступ к параметрам
0x356 Запись коротких целых
0x357 Обход с помощью .dtors
0x358 Еще одна уязвимость в программе notesearch
0x359 Перезапись глобальной таблицы смещений
0x400 Сетевое взаимодействие
0x410 Модель OSI
0x420 Сокеты
0x421 Функции сокетов
0x422 Адреса сокетов
0x423 Порядок байтов в сети
0x424 Преобразование интернет-адресов
0x425 Пример простого сервера
0x426 Пример веб­клиента
0x427 Миниатюрный веб­сервер
0x430 Более низкие уровни
0x431 Канальный уровень
0x432 Сетевой уровень
0x433 Транспортный уровень
0x440 Анализ сетевых пакетов (сниффинг)
0x441 Сниффер сокетов прямого доступа
0x442 Сниффер libpcap
0x443 Декодирование уровней
0x444 Активный сниффинг
0x450 Отказ в обслуживании
0x451 SYN-флуд
0x452 Смертельный ping
0x453 Teardrop
0x454 Пинг­флудинг
0x455 Атаки с усилителем
0x456 Распределенная DoS-атака
0x460 Захват TCP/IP
0x461 Перехват с помощью RST
0x462 Еще о перехвате
0x470 Сканирование портов
0x471 Скрытое SYN-сканирование
0x472 FIN, X-mas и Null-сканирование
0x473 Создание ложных целей
0x474 Сканирование через бездействующий узел
0x475 Активная защита (shroud)
0x480 Пойди и кого-нибудь взломай!
0x481 Анализ с помощью GDB
0x482 "Почти попал" здесь не проходит
0x483 Шелл­код для привязки порта
0x500 Шелл­код (код оболочки)
0x510 Ассемблер и C
0x511 Системные вызовы Linux на ассемблере
0x520 Путь к шелл-коду
0x521 Команды ассемблера для работы со стеком
0x522 Исследование с помощью GDB
0x523 Удаление нулевых байтов
0x530 Шелл­код для запуска оболочки
0x531 Проблема привилегий
0x532 Еще короче
0x540 Шелл­код с привязкой к порту
0x541 Дублирование стандартных дескрипторов файла
0x542 Управляющие структуры условного перехода
0x550 Шелл­код с обратным соединением
0x600 Противодействие
0x610 Средства обнаружения атак
0x620 Системные демоны
0x621 Краткие сведения о сигналах
0x622 Демон tinyweb
0x630 Профессиональные инструменты
0x631 Инструмент для эксплойта tinywebd
0x640 Журнальные файлы
0x641 Слиться с толпой
0x650 Пропуск очевидного
0x651 Пошаговая работа
0x652 Наведение порядка
0x653 Детский труд
0x660 Усиленные меры маскировки
0x661 Подделка регистрируемого IPадреса
0x662 Эксплойт без записи в журнал
0x670 Инфраструктура в целом
0x671 Повторное использование сокетов
0x680 Контрабанда оружия
0x681 Кодирование строк
0x682 Как скрыть цепочку
0x690 Ограничения, налагаемые на буфер
0x691 Полиморфный шелл-код в отображаемых символах ASCII
0x6a0 Усиление противодействия
0x6b0 Неисполняемый стек
0x6b1 Возврат в libc (ret2libc)
0x6b2 Возврат в system()
0x6c0 Рандомизация стековой памяти (ASLR)
0x6c1 Анализ с помощью BASH и GDB
0x6c2 Отскок от linux-gate
0x6c3 Применяем знания
0x6c4 Первая попытка
0x6c5 Игра случая
0x700 Криптология
0x710 Теория информации
0x711 Безусловная стойкость
0x712 Одноразовые блокноты
0x713 Квантовое распределение ключей
0x714 Практическая (вычислительная) стойкость
0x720 Сложность алгоритма
0x721 Асимптотическая нотация
0x730 Симметричное шифрование
0x731 Алгоритм квантового поиска Лова Гровера
0x740 Асимметричное шифрование
0x741 RSA
0x742 Алгоритм квантовой факторизации Питера Шора
0x750 Гибридные шифры
0x751 Атака "человек посередине" (MitM)
0x752 Различия цифровых отпечатков хостов в протоколе SSH
0x753 Нечеткие отпечатки
0x760 Взлом паролей
0x761 Атака по словарю
0x762 Атака путем полного перебора
0x763 Справочная хеш­таблица
0x764 Матрица вероятностей паролей
0x770 Шифрование в протоколе беспроводной связи 802.11b
0x771 Протокол WEP
0x772 Поточный шифр RC4
0x780 Атаки на WEP
0x781 Атака путем полного перебора в автономном режиме
0x782 Повторное использование ключевого потока
0x783 Дешифрование по таблицам IV
0x784 Переадресация IP
0x785 Атака Флурера-Мантина-Шамира (FMS)
0x800 Заключение
0x810 Ссылки
0x820 Источники
Алфавитный указатель