Оглавление
Часть 1. ПРЕДВАРИТЕЛЬНЫЙ СБОР ДАННЫХ 23
Глава 1. ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ И WEB-ПРИЛОЖЕНИЯ 25
Глава 2. ИЗУЧЕНИЕ ОБЪЕКТА 47
Глава 3. ВЗЛОМ WEB-CEPBEPA 61
Глава 4. ИССЛЕДОВАНИЕ ПРИЛОЖЕНИЙ 113
Часть И. ПРОНИКНОВЕНИЕ 141
Глава 5. АУТЕНТИФИКАЦИЯ 143
Глава 6. АВТОРИЗАЦИЯ 171
Глава 7. ВЗЛОМ СРЕДСТВ УПРАВЛЕНИЯ СЕАНСОМ 187
Глава 8. ВЗЛОМ СРЕДСТВ ПРОВЕРКИ ВВОДИМЫХ ДАННЫХ 211
Глава 9. ВЗЛОМ ХРАНИЛИЩ ДАННЫХ WEB 235
Глава 10. ВЗЛОМ WEB-СЛУЖБ 253 Глава 11. ВЗЛОМ СРЕДСТВ УПРАВЛЕНИЯ WEB-ПРИЛОЖЕНИЯМИ 269
Глава 12. ВЗЛОМ С ИСПОЛЬЗОВАНИЕМ WEB-КЛИЕНТОВ 285
Глава 13. ПРИМЕРЫ 307
ПРИЛОЖЕНИЯ 315
Приложение А. ТИПОВАЯ СХЕМА ПРОВЕРКИ ПАРАМЕТРОВ
БЕЗОПАСНОСТИ WEB-CEPBEPA 317
Приложение Б. СРЕДСТВА И МЕТОДЫ ПРОВЕРКИ ЗАЩИТЫ 321
Приложение В. ИСПОЛЬЗОВАНИЕ БИБЛИОТЕКИ LIBWHISKER 335
Приложение Г. УСТАНОВКА И НАСТРОЙКА ФИЛЬТРА URLSCAN 345
Приложение Д. WEB-УЗЕЛ, ПОСВЯЩЕННЫЙ КНИГЕ 369
Содержание
Введение 18
Часть I. ПРЕДВАРИТЕЛЬНЫЙ СБОР ДАННЫХ 23
Глава 1. ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ И WEB-ПРИЛОЖЕНИЯ 25
Архитектура Web-приложения 27
Некоторые сведения об HTML 27
Транспортный уровень: HTTP 29
Web-клиент 33
Web-сервер 34
Web-приложение 35
Ваза данных 38
Проблемы и решения 38
Новая модель: Web-службы 40
Потенциальные слабые места 41
Методология хакинга в Web 42
Изучение инфраструктуры 42
Взлом Web-сервера 42
Исследование приложений 43
Взлом механизма аутентификации 43
Взлом схем авторизации 43
Функциональный анализ 43
Изучение схемы связи с базой данных 44
Взлом интерфейсов управления 44
Взлом клиента 44
Инициализация взлома DoS 44
Резюме 45
Дополнительная информация 45
Глава 2. ИЗУЧЕНИЕ ОБЪЕКТА 47
Исследование сервера 48
Интуиция 48
Предварительный сбор данных с использованием Internet 48
Получение информации о DNS-сервере 52
Утилита Ping 53
Исследование с помощью сканирования портов 53
Обход системы распределения нагрузки 55
Определение служб 56
Идентификация сервера 58
Работа с SSL 59
Резюме 60
Дополнительная информация 60
Глава 3. ВЗЛОМ WEB-СЕРВЕРА 61
Общеизвестные изъяны по наиболее популярным платформам 62
Apache 62
Microsoft Internet Information Server (IIS) 66
Netscape Enterprise Server 89
Изъяны безопасности других Web-сервсров 93
Вспомогательные методы взлома Web-серверов 95
Программное обеспечение автоматического сканирования изъянов Web-серверов 97
Whisker 97
Nikto 100
twwwscan/arirang 101
Stealth HTTP Scanner 102
Typhon 104
WebInspect 105
AppScan 106
FoundScan 107
Инициализация отказа в обслуживании Web-сервером 108
Резюме 110
Дополнительная информация 111
Глава 4. ИССЛЕДОВАНИЕ ПРИЛОЖЕНИЙ 113
Документирование структуры приложения 114
Ручное исследование структуры приложения 116
Статические и динамически генерируемые страницы 116
Использование поискового сервера Google для исследования приложений 118
Структура каталогов 119
Robots.txt 120
Вспомогательныс файлы 121
Классы и аплеты Java 123
HTML-комментарии и содержимое 124
Формы 125
Строки запросов 127
Внутренний интерфейс 130
Инструменты для автоматического исследования приложений 130
lynx 131
Wget 132
webSleuth 133
BlackWidow 135
Tclcport Pro 136
Предупреждение 137
Защита каталогов 137
Защита включаемых файлов 138
Советы 138
Резюме 139
Дополнительная информация 139
Часть II. ПРОНИКНОВЕНИЕ 141
Глава 5. АУТЕНТИФИКАЦИЯ 143
Механизмы аутентификации 144
HTTP-аутентификация: базовая и дайджест 144
Формоориентированная аутентификация 155
Служба Passport компании Microsoft 157
Взлом средств Web-аутентификации 161
Подбор пароля 161
Вычисление и подбор идентификатора сеанса 165
Использование файлов cookie 166
Обход форм входа, базирующихся на SQL 167
Обход средств аутентификации 169
Резюме 169
Дополнительная информация 170
Глава 6. АВТОРИЗАЦИЯ 171
Цель взлома 172
Матрица ролей 173
Методика взломов 174
Запросы 175
Данные в запросах POST 175
Скрытые дескрипторы 176
URI 177
Заголовки HTTP 177
Файлы cookie 178
Заключительные замечания 179
Практический пример: использование утилиты curl
для проверки разрешений 180
Авторизация в Apache 183
Авторизация в IIS 184
Резюме 185
Дополнительная информация 185
Глава 7. ВЗЛОМ СРЕДСТВ УПРАВЛЕНИЯ СЕАНСОМ 187
Методы управления сеансом на стороне клиента 189
Скрытые поля 190
URL 191
Заголовки HTTP и cookie-значения 192
Методы управления сеансом на стороне сервера 193
Идентификаторы сеанса, генерируемые сервером 194
База данных сеанса 194
Анализ идентификатора сеанса 195
Анализ содержимого 195
Временной интервал 207
Резюме 209
Дополнительная информация 209
Глава 8. ВЗЛОМ СРЕДСТВ ПРОВЕРКИ ВВОДИМЫХ ДАННЫХ 211
Ожидание неожиданного 212
Цели взлома средств проверки вводимых данных 213
Поиск потенциальных целей для взлома 214
Обход средств проверки данных, расположенных на стороне клиента 214
Типы взломов средств проверки вводимых данных 215
Переполнение буфера 215
Доступ к файлам, находящимся вне корневого каталога Web-сервера 2|8
Использование точки в работе 219
Работа с файлами без списка каталогов 220
Взлом с использованием сценариев 223
Проверка граничных значений 227
Управление приложением 228
Внедрение SQL и взлом хранилищ данных в Web 228
Выполнение команд 229
Символы двоеточия, точки с запятой и амперсанта 229
Информация, полученная из сообщений об ошибках 230
Общие контрмеры 231
Резюме 231
Дополнительная информация 233
Глава 9. ВЗЛОМ ХРАНИЛИЩ ДАННЫХ WEB 235
Основы SQL 236
Внедрение SQL 236
Сложности ODBC 237
Технология взлома MS SQL Server 243
Технологии взлома языковых средств SQL 248
Общие контрмеры 250
Резюме 251
Дополнительная информация 251
Глава 10. ВЗЛОМ WEB-СЛУЖБ 253
Что такое Web-служба 254
Транспортный уровень: SOAP поверх HTTP(S) 255
WSDL 257
Обзор служб UDD1 и DISCO 259
DISCO 260
Примеры взлома Web-службы 261
Основы безопасности Web-служб 262
Схожесть с безопасностью Web-приложений 263
Оценка защищенности Web-служб 263
Резюме 266
Дополнительная информация 267
Глава 11. ВЗЛОМ СРЕДСТВ УПРАВЛЕНИЯ WEB-ПРИЛОЖЕНИЯМИ 269
Администрирование Web-сервера 270
Утилита Telnet 270
SSH 271
Управление портами 271
Другие службы администрирования 272
Управление Web-содержимым 272
Служба FTP 273
Протокол SSH/scp 273
FrontPage 273
WebDAV 277
Управление Web-ориентированными сетями и системами 278
Другие инструменты для управления через Web 281
Резюме 281
Дополнительная информация 282
Глава 12. ВЗЛОМ С ИСПОЛЬЗОВАНИЕМ WEB-КЛИЕНТОВ 285
Проблема обеспечения безопасности Web-клиента 286
Взлом с помощью активного содержимого 287
Java и JavaScript 288
ActiveX 289
Внедрение сценариев 297
Похищение файлов cookie 300
Резюме 303
Дополнительная информация 304
Глава 13. ПРИМЕРЫ 307
Пример № 1: из URL в командную строку и обратно 308
Пример № 2: XOR — это еще не все 311
Пример № 3: внедрение сценария 313
Резюме 314
Дополнительная информация 314
ПРИЛОЖЕНИЯ 315
Приложение А. ТИПОВАЯ СХЕМА ПРОВЕРКИ ПАРАМЕТРОВ
БЕЗОПАСНОСТИ WEB-СЕРВЕРА 317
Приложение Б. СРЕДСТВА И МЕТОДЫ ПРОВЕРКИ ЗАЩИТЫ 321
Приложение В. ИСПОЛЬЗОВАНИЕ БИБЛИОТЕКИ LIBWHISKER 335
Внутреннее устройство библиотеки 336
Функция http_do_request 336
Функция crawl 338
Функция utils_randstr 341
Создание сценария с использованием библиотеки 341
sinjeciion.pl 342
Приложение Г. УСТАНОВКА И НАСТРОЙКА ФИЛЬТРА URLSCAN 345
Общие сведения о фильтре UrlScan 346
Получение фильтра UrlScan 347
Обновление UrlScan 347
Обновление продуктов семейства Windows 347
hfnetchk 348
Инструменты независимых разработчиков 349
Базовая настройка UrlScan 351
Отмена настройки lISLockdown 355
Автоматическая установка lISLockdown 355
Тонкая настройка UrlScan 356
Извлечение файла urlscan.dll 356
Настройка UrlScan.ini 357
Установка UrlScan в качестве фильтра 1SAPI в IIS 359
Удаление UrlScan 361
Описание параметров urlscan.ini 361
Раздел Options 362
Раздел AllowVerbs 364
Раздел DenyVerbs 365
Раздел DenyHeaders 365
Раздел AllowExtensions 365
Раздел DenyExtensions 365
Резюме 366
Дополнительная информация 366
Приложение Д. WEB-УЗЕЛ, ПОСВЯЩЕННЫЙ КНИГЕ 369
Предметный указатель 371
Джоел Скембрей, Майк Шема "Секреты хакеров. Безопасность Web-приложений - готовые решения" 2003 г.