Безопасность интернет-приложений осень 2013 лекция 5

404 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
404
On SlideShare
0
From Embeds
0
Number of Embeds
103
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Безопасность интернет-приложений осень 2013 лекция 5

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

×