Информационная безопасность весна 2013 лекция 4
TRANSCRIPT
![Page 1: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/1.jpg)
Безопасность интернет-приложений
Лекция 4«Логика приложений»
Ярослав Рабоволюк
![Page 2: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/2.jpg)
Концепция ААА
Аутентификация
Аккаунтинг
Авторизация «Кто?»
«Что разрешено?»
«Что делал?»
![Page 3: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/3.jpg)
Концепция ААА
AAA-схема
ldap, radius, soap
AAAWEB
![Page 4: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/4.jpg)
Аутентификация
Html form-based http basic auth/digest authMultifactor
SSL certs/smartcardsOpenID
![Page 5: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/5.jpg)
Аутентификация
«плохие» пароли
- Пустое значение- Слишком короткий- Пароль = логин- Пароль по умолчанию- Словарный пароль
![Page 6: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/6.jpg)
Аутентификация
Информационные сообщения
![Page 7: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/7.jpg)
Аутентификация
Канал передачи данных
рабочая станция роутер
провайдер
хостинг
локальная сеть
![Page 8: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/8.jpg)
Аутентификация
Канал передачи данных
- SSL/TLS- Challenge-response
![Page 9: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/9.jpg)
Аутентификация
Политика смены пароля
- Периодическая смена (устаревание) - Смена при инциденте (disaster plan)
Типичные ошибки:- Сообщение «пользователь отсутствует»- Отсутствие подтверждения старого пароля- Отсутствие защиты от перебора старого пароля- csrf
![Page 10: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/10.jpg)
Аутентификация
Политика смены пароля: disaster plan
- Оповещение ссылкой на смену- Смена при следующем входе- Создание и отправка нового
![Page 11: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/11.jpg)
Аутентификация
Восстановление забытого пароля
Типичные ошибки:- Простые челленджи (секретные вопросы)- Подбор секретного вопроса- Раскрытие данных пользователя- Логин при вводе правильного челленджа- Отправка кода восстановления на указанный адрес/номер- Подбор «одноразовой ссылки»
![Page 12: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/12.jpg)
Аутентификация
Функция «запомнить пользователя»
$nc somehost.comGET / HTTP/1.1Host: somehost.comCookie: Storeduser=mike
HTTP/1.1 200 OkServer: nginxDate: Fri, 12 Nov 2012 14:42:04 GMTContent-Type: text/html; charset=UTF-8Connection: closeSet-Cookie: session=mike:0b0a2371cc93f46b; secure; HttpOnlyContent-Length: 5279
![Page 13: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/13.jpg)
Аутентификация
«усечение» аутентификации
trim(passwd): “ pass”, “pass”, “p.ass”,”@@pass”
substr(passwd,0,8): “password”,”password1234”
tolower(passwd):”password”,”PASSWORD”,”Password”
![Page 14: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/14.jpg)
Аутентификация
Передача данных
Типичные ошибки:- Отправка пароля в открытом виде по email- Бессрочный “account activation”- Подбираемый “account activation”
![Page 15: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/15.jpg)
Аутентификация
хранение
Типичные ошибки:- store(passwd)- store(md5(passwd))- store(customcrypt(passwd))
![Page 16: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/16.jpg)
Авторизация
Сессии
- ошибки создания сессии- ошибки валидации- ошибки хранения
![Page 17: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/17.jpg)
Авторизация
Сессии: генерация
randomseed(const);session = md5(rand());
session = base64(“user:”+login + “date:”+date);
session = md5(passwd);
session = md5(timestamp()+passwd);
session = encrypt(user.data);
![Page 18: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/18.jpg)
Авторизация
Сессии: передача
GET-метод:somesite.com?sess=0102030010394&a=1
- Попадание в логи- Кеш поиска- Реферреры
Даунгрейд с https к http - Перехват на сетевом уровне
![Page 19: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/19.jpg)
Авторизация
Контроль доступа
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 20: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/20.jpg)
Авторизация
Контроль доступа: роли
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 21: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/21.jpg)
Авторизация
Контроль доступа: роли
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 22: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/22.jpg)
Авторизация
Контроль доступа: роли
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 23: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/23.jpg)
Авторизация
Контроль доступа: эскалация
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 24: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/24.jpg)
Авторизация
Контроль доступа: эскалация
Чтение сообщений
Модерация
Изменение настроек
САЙТ
пользовательмодераторадмин
![Page 25: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/25.jpg)
Логика приложения
Логические ошибки
- Прямой вызов ресурса
- Контроль доступа параметром
- Нарушение последовательности вызовов
- Контроль доступа реферерром
- Контроль по местоположению
![Page 26: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/26.jpg)
Логика приложения
Пример: shopping cart
Выбор товаров Переход в корзину Оплата Доставка
![Page 27: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/27.jpg)
Логика приложения
Пример: shopping cart
Выбор товаров Переход в корзину Оплата Доставка
![Page 28: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/28.jpg)
Логика приложения
Пример: poker game
LET’S PLAY!
![Page 29: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/29.jpg)
Логика приложения
Пример: poker game
Set-Cookie: hand=2,3,5,J,Q
Set-Cookie: hand=10,J,Q,K,A
![Page 30: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/30.jpg)
Логика приложения
Пример: poker game
Cookie: hand=10,J,Q,K,A
![Page 31: Информационная безопасность весна 2013 лекция 4](https://reader036.vdocuments.pub/reader036/viewer/2022062405/557ef7c5d8b42ad17d8b5028/html5/thumbnails/31.jpg)
Логика приложения
Пример: poker game
Cookie: hand=Q,Q,Q,Q,Q
Cookie: hand=10,J,Q,K,A
WIN!