top-image
Главная » Услуги и обучение » Информационная безопасность » Банковские технологии » Антифрод и защита банковских систем » Антифрод и защита банковских систем: защищенное программирование

Код: AF04

Антифрод и защита банковских систем: защищенное программирование

Отправить нам заявку на участие в мероприятии Получить коммерческое предложение

Описание:

  • Изучение слушателями
  • Освоение принципов
  • Обучение
  • Получение знаний и практических навыков 

Целевая аудитория:

Курс предназначен для руководителей и специалистов:

  • отделов разработки и тестирования
  • службы безопасности
  • IT-подразделений
  • подразделений по технической защите информации

Курс будет ценен для профессионалов, которым требуется обеспечить экономическую безопасность, комплексную безопасность сетевой инфраструктуры и информационных систем.

Программа мероприятия:

Модуль 1. Defensive Programming

  • Сокращение числа ошибок в ПО
  • Создание отчуждаемого исходного кода
  • Практика: Разбор примеров оформления исходного кода и влияния стандартов кодирования на читаемость программ, лёгкость их поддержки и развития
  • ПО должно вести себя предсказуемо, несмотря на неожиданные вводные данные или действия пользователя
  • Практика: Разбор примеров непредсказуемого поведения ПО и способов исправления ситуации

Модуль 2. Типичные ошибки в ПО

  • Переполнение буфера
  • Уязвимости форматной строки
  • Некорректная аутентификация
  • Проблемы с авторизацией
    • Авторизация проведена некорректно
    • Слишком много доверия к пользовательскому вводу
    • Ошибки канонизации
  • Практика: Разбор примеров кода, содержащего типовые ошибки, и способов их исправления

Модуль 3. Проблемы криптографии

  • Слабые криптоалгоритмы: DES, Triple DES, RC4 и MPPE
  • Слабые hash-функции: LM-hash, MD2, MD4 и MD5
  • Хранение ключевой информации в контейнере
  • Хранение ключевой информации в памяти
  • Коллоквиум: Обсуждение проблем безопасности, связанных с криптографией, и их решение

Модуль 4. Проектирование по контракту

  • Возможные типы входных данных и их значение
  • Типы возвращаемых данных и их значение
  • Условия возникновения исключений, их типы и значения
  • Присутствие побочного эффекта метода
  • Предусловия, которые могут быть ослаблены (но не усилены) в подклассах
  • Постусловия, которые могут быть усилены (но не ослаблены) в подклассах
  • Инварианты, которые могут быть усилены (но не ослаблены) в подклассах
  • Гарантии производительности, например, временная сложность или сложность по памяти
  • Практика: Разбор примеров хранимых процедур, использующих данный подход

Модуль 5. DevOps

  • Проектирование
    • Система работы с требованиями
    • CASE-средства
  • Разработка
    • Система работы с требованиями
    • Система контроля версий
    • Среда разработки
    • Баг-трекер
  • Тестирование
    • Баг-трекер
    • Система автоматизации функционального тестирования
  • Эксплуатация
    • Ansible
  • Коллоквиум: Построение интегрированной инфраструктуры проекта и сокращение сроков выхода релиза

Модуль 7. Требования безопасного программирования

  • Все данные важны, пока не доказано обратное
  • Все данные испорчены, пока не доказано обратное
  • Весь код небезопасен, пока не доказано обратное
  • Практика: Разбор примеров, иллюстрирующих данные требования

Модуль 8. Введение в функциональное тестирование

  • Факторы качества ПО
  • Аспекты качества ПО
  • Управление качеством продукта
  • Отладка и тестирование
  • Жизненный цикл тестирования
  • Виды тестирования
  • Критерии черного ящика
  • Критерии белого ящика
  • Взаимосвязь требований к ПО
  • Документы, создаваемые в процессе тестирования
    • План тестирования
    • Критерии начала и окончания тестирования
    • Тест-дизайн
    • Тестовые случаи (Test Cases)
  • Жизненный цикл дефекта
  • Покрытие входных данных
  • Эквивалентное разбиение
  • Модуль-драйвер и модуль-заглушка при тестировании программ
  • Методы тестирования: блочное, интеграционное и системное
  • Покрытие кода тестами
  • Тестирование безопасности
  • Практика: Подготовка плана тестирования и тестовых случаев

Модуль 9. Автоматизированное функциональное тестирование

  • Проблемы автоматизации
  • Этапы автоматизированного функционального тестирования
    • Этап исследования и разработки пилотных автоматических тестов
    • Анализ и планирование
    • Подготовка тестовой среды и тестовых данных
    • Разработка тестовых скриптов, осуществляющих покрытие функционала приложения, на основе готовой архитектуры
    • Запуск автоматических скриптов
    • Представление результатов тестирования
  • Стратегия тестирования
  • Сценарий тестирования
  • Практика: Создание автоматизированного сценария

Модуль 10. Автоматизация развертывания и обновления конфигураций

  • Как работает Ansible
  • Практика: Установка Ansible
  • Практика: Проверка работоспособности
  • Практика: Управление конфигурациями
Оставить свой отзыв об этом мероприятии