Содержание
- 2. Пройденные темы Аутентификация Токенизация и управление сессией Управление ключами и криптография Авторизация Протоколы TLS и Oauth
- 3. Оставшиеся темы Безопасность приложений: anti-tampering software, anti-subversion, intrusion detection. Мониторинг, анализ действий пользователя, аудит Безопасность разработки.
- 4. Тестирование аутентификации Имена пользователей Корректная проверка e-mail Использование сильных паролей >=10 символов Считать все символы, чувствительные
- 5. 3 из 4 Нижний регистр Верхний регистр Особый символ Цифра Правила упомянуты на странице смены пароля
- 6. Процедура забытого пароля Хороший вопрос – универсальный, запоминаемый, постоянный, безопасный Отправка по стороннему каналу Безопасное хранение.
- 7. Хранение пароля Использовать PBKDF2, bcrypt, scrypt Соль (генератор), PBKDF2(cоль, пароль) – запись в бд HMAС SHA
- 8. TLS для аутентификации Использовать только TLS для страницы логина и последующих: Атака на страницу логина -
- 9. Дополнительно Для избежания CSRF, clickjacking, session hijacking – требование переаутентификации про каждом важном действии (смена пароля
- 10. Сообщения об ошибках и блокировка Не давать инфо об статусе пользователя: Устарел Блокирован Неверный ID Неверный
- 11. Сторонние приложения (аутентификация без пароля) Использовать Oauth для аутентификации (1.0а или 2.0) Open ID (private) SAML
- 12. Дополнительно Доступ к истории Логины по умолчанию Выход из аккаунта Запоминание пользователя CAPTCHA
- 13. OWASP Authentication: https://www.owasp.org/index.php/Authentication_Cheat_Sheet https://www.owasp.org/index.php/Choosing_and_Using_Security_Questions_Cheat_Sheet http://goodsecurityquestions.com/
- 14. Управление сессией Требовать подтверждение (clickjacking) Генерация токена для защиты от CSRF(криптографически или случайно) Защита токена, защита
- 15. Transaction authentication Users should be able to easily distinguish the authentication process from the transaction authorization
- 16. Криптографическое хранение данных Архитектура и дизайн CCM, GCM – аутентифицированное шифрование (AES+time+message ID) NIST approved algorithms
- 17. Управление ключами Устаревание ключей Безопасное хранение ключей (доступ) Ключи отдельно от данных Ключи генерируются независимо Документировтаь
- 18. Транспорт ключа Протокол – Диффи Хеллман+сертификаты Транспорт – TLS (не SSLv3) Разделенное хранение
- 19. Криптомодуль Проверен сертифицирован Функции, доступ к ним и хранилище
- 20. Session Management ID сессии – 128 бит, случайно, криптографически Встроенное управление вместо своего Secure Cookies (Id
- 21. Cookies Httponly Encrypted Указывать домен и путь Устаревание
- 22. Устаревание сессии В режиме простоя Обновление или абсолютное устаревание "Cache-Control: no-cache,no-store« and "Pragma: no-cache« Закрытие сессии
- 23. AC Implement role based access control to assign permissions to application users for vertical access control
- 24. Best practices Централизованный контроль Проерять авторизацию всех запросов Проверять данные пользователя
- 28. Скачать презентацию