Web Application Security for PCI DSS- Part 2 (WASEC-PD2) – Программа курса

Программа курса

ДЕНЬ 2

Десять лучших по версии OWASP 2021 года

A01 - Нарушение контроля доступа

  • Основы контроля доступа
  • Неспособность ограничить доступ к URL
  • Сбитый с толку депутат
    • Небезопасная прямая ссылка на объект (IDOR)
    • Лабораторная работа - Ссылка на небезопасный прямой объект.
    • Обход авторизации через управляемые пользователем ключи
    • Пример использования - Обход авторизации в Facebook
    • Лабораторная работа - Горизонтальная авторизация.
  • Файл загружен
    • Неограниченная загрузка файлов
    • Передовой опыт
    • Лабораторная работа - неограниченная загрузка файлов.
  • Подделка межсайтовых запросов (CSRF)
    • Лабораторная работа - Подделка межсайтовых запросов
    • Лучшие практики CSRF
    • Глубокая защита CSRF
    • Лабораторная работа - Защита CSRF с помощью токенов

A02 - Сбои криптографии

  • Информационное воздействие
    • Воздействие на извлеченные данные и агрегирование
    • Пример использования - раскрытие данных Strava
    • Утечка системной информации
      • Утечка системной информации
    • Лучшие практики раскрытия информации
  • Криптография для разработчиков
    • Основы криптографии
    • Элементарные алгоритмы
      • Генерация случайных чисел
        • Генераторы псевдослучайных чисел (ГПСЧ)
        • Криптографически стойкие ГПСЧ
        • Использование виртуальных случайных потоков
        • Лабораторная работа - Использование случайных чисел.
        • Пример - замораживание кредитного счета Equifax
    • Защита конфиденциальности
      • Симметричное шифрование
      • Блочные шифры
      • Режимы работы
      • Режимы работы и IV - лучшие практики
      • Лабораторная работа - Симметричное шифрование.
    • Асимметричное шифрование
    • Комбинирование симметричных и асимметричных алгоритмов

Десять лучших по версии OWASP 2021 года

A03 - Впрыск

  • Принципы инъекции
  • Инъекционные атаки
  • SQL-инъекция
    • Основы SQL-инъекций
    • Лабораторная работа - SQL-инъекция
    • Техники атаки
    • Слепая SQL-инъекция на основе содержимого
    • Слепая SQL-инъекция на основе времени
  • Лучшие практики SQL-инъекций
    • Проверка ввода
    • Параметризованные запросы
    • Лабораторная работа - Использование подготовленных операторов.
    • Пример использования - взлом аккаунтов Fortnite
  • Внедрение кода
    • Внедрение команды ОС
      • Лучшие практики внедрения команд ОС
      • Пример использования - Shellshock
      • Лаборатория - Shellshock

ДЕНЬ 3
Десять лучших по версии OWASP 2021 года A03 - Впрыск

  • HTML-инъекция - межсайтовый скриптинг (XSS)
    • Основы межсайтового скриптинга
    • Типы межсайтовых скриптов
      • Постоянные межсайтовые сценарии
      • Отраженный межсайтовый скриптинг
      • Межсайтовый скриптинг на стороне клиента (на основе DOM)
    • Лабораторная работа - Сохраненный XSS
    • Лабораторная работа - Отраженный XSS
    • Пример использования - XSS в учетных записях Fortnite
    • Лучшие практики XSS-защиты
      • Принципы защиты - побег
      • Лабораторная работа - XSS исправлено / сохранено
      • Лабораторная работа - исправление / отражение XSS
      • Дополнительные слои защиты - глубокая защита

Десять лучших по версии OWASP 2021 года

A07 - Ошибки идентификации и аутентификации

  • Аутентификация
    • Основы аутентификации
    • Многофакторная аутентификация
    • Одноразовые пароли на основе времени (TOTP)
    • Слабые стороны аутентификации
    • Спуфинг в сети
    • Пример использования - обход двухфакторной аутентификации PayPal
    • Лучшие практики пользовательского интерфейса
    • Пример - раскрытие информации в Simple Banking для Android
    • Лабораторная работа - Подбор пароля в режиме онлайн.
  • Управление паролями
    • Управление входящими паролями
      • Хранение паролей учетных записей
      • Пароль в пути
      • Лабораторная работа. Достаточно ли просто хеширования паролей?
      • Атаки по словарю и брутфорс
      • Соление
      • Адаптивные хеш-функции для хранения паролей
      • Политика паролей
        • Требования NIST к аутентификатору для запомненных секретов
        • Защита пароля
        • Использование парольных фраз
      • Пример - утечка данных Эшли Мэдисон
        • Атака по словарю
        • Конечная трещина
        • Эксплуатация и извлеченные уроки
      • Перенос базы паролей
        • (Неправильно) обработка нулевых паролей
    • Управление исходящими паролями
      • Жестко закодированные пароли
      • Лучшие практики
      • Лабораторная работа - Жестко закодированный пароль.
      • Защита конфиденциальной информации в памяти
        • Проблемы защиты памяти

A08 - Нарушения целостности программного обеспечения и данных

  • Целостность подресурсов
    • Импорт JavaScript
    • Лабораторная работа - Импорт JavaScript.
    • Пример - нарушение данных British Airways
  • Небезопасная десериализация
    • Проблемы сериализации и десериализации
    • Целостность - десериализация ненадежных потоков
    • Целостность - лучшие практики десериализации
    • Имущественно-ориентированное программирование (POP)
      • Создание полезной нагрузки
      • Лабораторная работа - Создание полезной нагрузки POP.
      • Лабораторная работа - Использование полезной нагрузки POP.
      • Резюме - лучшие практики POP

Тестирование безопасности

  • Методы и инструменты тестирования безопасности
    • Анализ кода
      • Статическое тестирование безопасности приложений (SAST)
    • Динамический анализ
      • Тестирование безопасности во время выполнения
      • Тестирование на проникновение
      • Стресс-тестирование
      • Инструменты динамического анализа
        • Динамическое тестирование безопасности приложений (DAST)
        • Сканеры веб-уязвимостей
        • Инструменты SQL-инъекций
      • Расплывание

Сворачивание

  • Принципы безопасного кодирования
    • Принципы устойчивого программирования Мэтта Бишопа
  • И что теперь?
    • Источники безопасности программного обеспечения и дополнительная литература