Уязвимости системы авторизации
-
Предсказуемое значение идентификатора сессии: идентификатор сессии генерируется не как случайное значение, а вычисляется на основе довольно простого алгоритма и имеет простую структуру, например число, значение которого увеличивается на единицу для каждой новой сессии. Идентификатор сессии, который просто подобрать, позволяет перехватить сессию другого пользователя и послать запрос веб-серверу с правами скомпрометированного пользователя.
-
Отсутствие таймаута сессии: значение таймаута пользовательской сессии не ограничено или очень большое. Большое время жизни сессии увеличивает шансы подбора идентификатора, а также время, которым располагает злоумышленник для того, чтобы воспользоваться фактом взлома. С другой стороны, увеличение этого параметра повышает вероятность успеха атаки еще и потому, что увеличивается число одновременно открытых сессий.
-
Недостаточная авторизация: атаки данного класса становятся возможны, если в приложении или на веб-сервере недостаточно четко отслеживаются права доступа к тем или иным ресурсам, недостаточно продуманы и настроены политики безопасности. Это может открыть доступ злоумышленнику к важной информации или функциям системы. Например, хранение идентификатора «роли» пользователя в скрытом поле HTML-формы позволяет легко повысить свои права в системе, если на сервере не предусмотрена дополнительная проверка.
- Раздел 16. Многоуровневые и многослойные приложения. Шаблон проектирования Модель-Представление-Контроллер
- 16.1. Многоуровневые приложения
- 16.2. Многослойные приложения
- 16.3. Шаблон проектирования Модель-Представление-Контроллер
- 16.4. Реализация шаблона Модель-Представление-Контроллер в веб-приложениях
- Раздел 17. Базы данных в веб-приложениях
- 17.1. Основные понятия баз данных
- 17.2. Системы управления базами данных
- 17.3. Язык запросов sql
- Транзакции
- 17.4. Доступ к базам данных из Java
- Пример: база данных студентов
- Поддержка транзакций
- 17.5. Объектно-реляционная проекция
- Лекция 18. Безопасность Интернет-приложений
- 18.1. Аутентификация и авторизация
- 18.2. Понятие безопасности Интернет-приложений
- 18.3. Классы атак сетевого уровня Сниффинг пакетов
- Подмена ip-адреса
- Отказ в обслуживании
- Сетевая разведка
- 18.4. Криптографические технологии
- 18.5. Уязвимости уровня приложений
- Уязвимости системы аутентификации
- Уязвимости системы авторизации
- Атаки на стороне клиента
- Выполнение кода на сервере
- Разглашение информации
- Злоупотребление функциональными возможностями
- Наиболее распространенные уязвимости
- 18.6. Резюме