Тренинг «Анализ безопасности программных систем»

Компания IT Guard приглашает своих партнеров и заказчиков на специализированный тренинг по анализу безопасности программных систем, посещение которого будет полезно как для системных интеграторов, так и для пользователей систем анализа безопасности приложений.
Данное мероприятие проходит на русском языке в течение трех дней в офисе компании IT Guard. Занятия проходят в компьютеризированном классе, оборудованном проектором и удобными рабочими местами.

Тренинг посвящен работе с инструментальными средствами анализа кода НР Fortify и предназначен для инженеров, которые в результате прохождения тренинга получат информацию, что такое уязвимости, чем они опасны и от чего возникают в программном коде, будут приведены принципы работы статических анализаторов кода и их различные версии, сравнение разных статических анализаторов на учебных приложениях. Много внимания будет также уделено ложным срабатываниям и ошибкам, которые анализатор не находит. Ежедневно по окончании теоретической части тренинга, проводятся лабораторные работы для закрепления пройденного материала.

Цель курса:

  • Введение в проблему безопасного программирования.
  • Обучение работы с инструментальными средствами анализа кода от компании HP Fortify.
  • Сравнение с конкурентами и обзор конкурентных преимуществ HP Fortify.

Подробнее о тренинге:

• Место проведения: офис IT Guard, Москва. Подробнее >>>
• Общая длительность: 24 астрономических часа.
• Язык проведения мероприятия: русский.
• Тренинг проводят: к.ф.-м.н. Е.Н. Трошина и доцент ф-та ВМК МГУ им. М.В. Ломоносова, к.ф.-м.н. А.В. Чернов.
• Количество мест: ограниченно, не более 10.
• По окончании тренинга участникам будет выдано свидетельство об участии.

Для предварительной регистрации необходимо направить заявку в свободной форме по электронной почте Людмиле Богуцкой, ludmila@itgrd.ru. В форме обязательно указать Ф. И. О. участника, его должность, а так же контакты – e-mail и прямой телефон. Также просьба сразу указать, кто в Вашей компании будет заниматься вопросами подписания договора и оплаты.

Требования к участникам:

• Опыт разработки программного кода на языках С/C++, Java, Objective C, .NET или php (не менее года).
• Опыт администрирования ОС (не менее года).
• Владение базовыми знаниями об уязвимостях в программном коде и эксплуатация уязвимостей.

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

1. Что такое уязвимости? Почему уязвимости опасны, кто и как их эксплуатирует? Здесь будут даны необходимые теоретические сведения и представлены практические примеры уязвимостей в программном коде. Также будут даны теоретические основы формирования хакерских атак и представлены практические примеры успешных хакерских атак на систему посредством эксплуатации уязвимостей.

Теоретическое занятие: 2 часа.
Практическое занятие: 2 часа.

2. Причины возникновения уязвимостей в программном коде. Введение в цикл разработки ПО. Особенности современной разработки и описание типовых сценариев появления уязвимостей в программном коде. Введение в SDL (secure development lifecycle). Блок практических заданий с использованием HP Fortify. Введение в инструментальный комплекс HP Fortify. Общая характеристика, принципы работы. Выдаваемая диагностика. Практическая работа с учебными проектами, в которых есть уязвимости.

Теоретическое занятие: 2 часа.
Практическое занятие: 2 часа.

1. Принципы работы статических анализаторов кода. Чем анализаторы отличаются и как они работают. Сравнение разных статических анализаторов на учебных приложениях (учебные приложения составляются с наглядными уязвимостями, сконцентрированными в небольшом приложении). Принципы анализа кода, внутреннее представление программы для анализа. Принцип работы статического анализатора HP Fortify. Правила для описания новых уязвимостей. Повышение качества работы статического анализатора. В практическом блоке упражнений будут предложены задания для сравнения работы разных анализаторов на практике. Сравнение полноты анализа. Также с использованием HP Fortify будут предложены задания на составление своих правил для обнаружения уязвимостей.

Теоретическое занятие: 2 часа.
Практическое занятие: 2 часа.

2. Статический анализ реальных проектов. Анализ многоязыковых приложений. Правила классификации уязвимостей по приоритетам исправления. Ложные срабатывания (False positive) – теоретическая составляющая: причины возникновения ложных срабатываний. Фильтрация ложных срабатываний. Полнота анализа и пропущенные ошибки (False negative). Примеры ложных срабатываний на примере работы HP Fortify. Настраивание HP Fortify с точки зрения различных ролей: разработчик, технический лидер, офицер ИБ.

Теоретическое занятие: 2 часа.
Практическое занятие: 2 часа.

1. Ошибки, которые статический анализатор не находит. Динамический анализ и анализ времени выполнения. Почему нужен Dynamic analysis, если есть static analysis? Принцип работы динамического анализатора. Принцип работы анализатора времени выполнения. Какие уязвимости можно обнаружить, какие требования выдвигаются к приложениям, чтобы можно было применять инструмент HP Fortify. Практический блок включает демонстрацию работы динамического модуля и модуля времени выполнения. Примеры эксплуатации уязвимостей Web-приложений и защита от них посредством использования динамического модуля и модуля времени выполнения HP Fortify.

Теоретическое занятие: 2 часа.
Практическое занятие: 2 часа.

2. Разработка безопасного ПО с использованием HP Fortify. Повышение качества разработки ПО при использовании HP Fortify. Настройка модуля динамического анализа. Настройка модуля времени выполнении приложений. Встраивание HP Fortify в цикл разработки программного обеспечения. Интеграция HP Fortify с другими инструментальными системами, участвующими в разработке ПО.

Теоретическое занятие: 1 час — презентация и демонстрация на экране примеров.

Практическое занятие: 3 часа выполнение заданий на компьютере слушателями, разбор зданий на экране.