В результате обучения Вы получите шаблон (образец) "Руководства по РБПО" в соответствии с требованиями п. 4.10 - 4.11 ГОСТ Р 56939-2016. В обязательном порядке Вами будут изучены и досконально рассмотрены требования к документам в соответствии с требованиями п. 4.12 ГОСТ Р 56939-2016 (образцы покажем, дадим). Отдельный день посвящён требованиям ГОСТ Р ИСО/МЭК 27001 и политике ИБ организации (шаблон которой также Вам будет предоставлен), в соответствии с требованиями п. 4.13 ГОСТ Р 56939-2016. Также, в обязательном порядке, будут рассмотрены требования всех документальных подтверждений выполнения требований ГОСТ Р 56939-20ХХ, в соответствии со всеми 25 процессами РБПО. Это будет сделано для того, чтобы Вам быть готовым к переходу на требования нового стандарта - ГОСТ Р 56939-20ХХ. По мнению регулятора, ГОСТ Р 56939-20ХХ будет утверждён уже в этом году.
Ждём Вас на наших курсах по безопасной разработке ПО!
Программа курса включает в себя максимально полное погружение в процессы разработки безопасного программного обеспечения и охватывает знания и практические навыки, приобретаемые на курсах:
• М БРПО-01 «Внедрение процессов разработки безопасного программного обеспечения в организации (для руководителей и ответственных)»;
• М БРПО-02 «Внедрение процессов разработки безопасного программного обеспечения для специалистов по информационной безопасности»;
• М БРПО-03 «Сертификационные испытания с учётом требований по разработке безопасного программного обеспечения для экспертов органов по сертификации (испытательных лабораторий) различных систем сертификации средств защиты информации»;
• М БРПО-04 «Формирование практических навыков по разработке безопасного программного обеспечения для разработчиков и программистов»;
• М БРПО-05 «Методология подготовки предприятия к сертификации процессов безопасной разработки программного обеспечения средств защиты информации в соответствии с требованиями ФСТЭК России».
Программа курса:
Организация ЭВМ и вычислительных систем. Операционные системы Windows. Операционные системы Linux.
Сетевые технологии. OSI vs TCP/IP. Принципы организации безопасного межсетевого взаимодействия, принципы организации и структуры кадров основных протоколов стека TCP/IP.
Настройка и администрирование ЛВС. Настройка и администрирование безопасной среды функционирования программного обеспечения на примере компьютерной сети предприятия;
Сбор информации об ИТ-инфраструктуре (инвентаризация активов) с помощью программного комплекса «Сканер-ВС 6.0».
Основы информационной безопасности. Основные руководящие нормативные и методические документы РФ. Основные методы защиты от угроз нарушения конфиденциальности, целостности и доступности информации. Модели угроз, нарушителя и модели защиты.
Хроника языков программирования. Проектирование архитектуры программного обеспечения. Жизненный цикл разработки безопасного программного обеспечения.
Понятийная база (основные термины и определения) процессов безопасной разработки программного обеспечения.
Основные практики и принципы безопасной разработки;
Software Development Lifecycle (SDLc);
Основные практики Security Development Lifecycle (SDL);
DevOps;
DevSecOps;
Методики оценки зрелости ИБ процессов;
Принципы дизайна.
Методологии разработки безопасного программного обеспечения.
Понятийная база (основные термины и определения) по направлению разработки безопасного программного обеспечения.
Оценивание программного обеспечения в соответствии с ГОСТ ИСО/МЭК 15408-Х (ч. 1, 2, 3). Изучение взаимосвязи мер по разработке безопасного программного обеспечения (ГОСТ Р 56939–2016) и требований ГОСТ Р ИСО/МЭК 15408–3;
Практическое занятие по изучению основных положений ГОСТ ИСО/МЭК 15408-Х.
Общие сведения о сертификации и лицензировании программного обеспечения. Основные руководящие нормативные и методические документы. Сертифицированные испытания. Структура документации для подачи заявки и проведения сертификационных испытаний по требованиям доверия согласно требованиям приказа ФСТЭК России от 2 июня 2020 г. № 76. Структура документации для подачи заявки и проведения сертификационных испытаний в соответствии с требованиями приказа Министра обороны Российской Федерации 2020 года № 488.
Создание проекта документации для подачи заявки на проведение сертификационных испытаний по требованиям доверия в соответствии с требованиями приказа ФСТЭК России от 2 июня 2020 г. № 76;
Создание проекта документации для подачи заявки на проведение сертификационных испытаний по требованиям системы сертификации средств защиты информации в Министерстве обороны Российской Федерации.
Организация на предприятии процессов БРПО. Руководство по разработке безопасного ПО в соответствии с требованиями ГОСТ Р 56939–2016.
Планирование процессов разработки безопасного ПО. Процессы жизненного цикла ПО. Порядок организации работ по созданию безопасного ПО, выполняемых в рамках процессов жизненного цикла ПО.
Порядок организации работ по созданию безопасного ПО, выполняемых в рамках процессов жизненного цикла ПО;
Дорожная карта (алгоритм) внедрения БРПО на предприятии.
Обучение сотрудников в соответствии с требованиями ГОСТ Р 56939–2016.
Создание проекта плана обучения. Организация учёта обучения сотрудников;
Мероприятия по повышению осведомленности разработчика о возможных типовых угрозах, ошибках и уязвимостях в разрабатываемом ПО, механизмах их недопущения или минимизации вероятности их возникновения, порядке сопровождения ПО и управления жизненным циклом.
Формирование и предъявление требований безопасности к ПО.
Управление конфигурацией ПО.
Регламент управления конфигурацией в рамках жизненного цикла ПО;
Регламент управления конфигурацией в рамках жизненного цикла ПО.
Управление недостатками и запросами на изменение ПО.
Разработка, уточнение и анализ архитектуры ПО.
Требования безопасности к принципам проектирования архитектуры ПО, направленным на снижение количества потенциальных уязвимостей с учетом результатов моделирования угроз безопасности информации;
Как получить документально оформленный проект архитектуры программы.
Моделирование угроз.
Разработка описания поверхности атаки.
Описание поверхности атаки. Угрозы безопасности ПО, актуальные для выполненных изменений. Анализ поверхности атаки методом сканирования интерфейсов ПО (локальных и сетевых интерфейсов взаимодействия с ПО (модулями ПО) пользователя и взаимодействий модулей ПО между собой, средой функционирования и внешними объектами при их наличии;
Перечень целей (функциональных подсистем, программных модулей ПО и их интерфейсов) для проведения дальнейших исследований безопасности ПО (например, фаззинг - тестирования) с учетом архитектуры ПО, результатов моделирования угроз и выполнения анализа поверхности атаки для разработанного кода ПО).
Формирование и поддержание в актуальном состоянии правил кодирования. Примеры опасных и безопасных конструкций для используемых в ПО языков программирования. Перечень правил и рекомендаций, направленных на устранение недостатков программы (потенциально уязвимых конструкций) в исходном коде программы, либо правила документирования.
Экспертиза исходного кода.
Регламент проведения экспертизы исходного кода ПО;
Экспертиза исходного кода ПО.
Использование инструментов композиционного анализа.
Формирование и поддержание в актуальном состоянии правил кодирования. Примеры опасных и безопасных конструкций для используемых в программном обеспечении языков программирования. Перечень правил и рекомендаций, направленных на устранение недостатков программы (потенциально уязвимых конструкций) в исходном коде программы, либо правила документирования.
Экспертиза исходного кода программного обеспечения.
Регламент проведения экспертизы исходного кода программного обеспечения;
Экспертиза исходного кода программного обеспечения.
Использование инструментов композиционного анализа.
Методы, подходы и инструменты декомпиляции исходного кода программы для компонентов, заимствованных у сторонних разработчиков ПО, с целью получения исходного кода программы и проведения его статического анализа. Реверс-инжиниринг. Введение, базовые понятия и инструменты реверс-инжиниринга. Применение реверс-инжиниринга при безопасной разработке ПО. Реверс-инжиниринг. Язык ассемблера, дизассемблирование и декомпиляция исполняемого кода.
Проведение анализа заимствованных компонентов, составляющих поверхность атаки, на предмет наличия известных уязвимостей при сборке (непосредственно перед сборкой) ПО (компонентов, модулей ПО). Преодоление методов защиты от реверс-инжиниринга;
Дизассемблирование и декомпиляция конструкций языков высокого уровня в коде, выполняющемся до загрузки операционной системы, в программах пользовательского уровня. Поиск уязвимостей и недокументированных возможностей с помощью реверс-инжиниринга.
Статический анализ исходного кода. Регламент проведения статического анализа исходного кода ПО. Инструменты статического анализа.
Применение статического анализа для обеспечения безопасной разработки. Инструменты статического анализа. Методы статического анализа программного кода.
Практика применения статических анализаторов для компилируемых языков;
Статический анализ кода, экспертиза исходного кода программы (ручное рецензирование). Применение автоматизированных средств при сертификационных испытаниях на примере использования анализатора исходных текстов «АК-ВС 3». Разбор дефектов и ручная разметка результатов статического анализатора.
Подходы к формированию исходных данных для выполнения динамического анализа кода программы, фаззинг-тестирования программы и тестирования на проникновение в рамках процесса квалификационного тестирования ПО. Квалификационное тестирование ПО.
Динамический анализ кода программы. регламент проведения динамического анализа кода ПО. Инструменты динамического анализа и фаззинг-тестирования.
Практика применения динамических анализаторов для компилируемых языков;
Практика применения динамических анализаторов для анализа бинарных исполняемых модулей без исходного кода.
Использование безопасной системы сборки ПО.
Обеспечение безопасности сборочной среды ПО.
Регламент обеспечения безопасности сборочной среды;
Схема сборочной среды. Журналы аудита процессов сборки ПО.
Обеспечение целостности кода при разработке ПО.
Обеспечение безопасности используемых секретов.
Регламент использования секретов;
Описание реализации процедуры использования секретов.
Проверка кода на предмет внедрения вредоносного кода через цепочки поставок.
Функциональное тестирование.
План функционального тестирования. Отчет по результатам функционального тестирования. Журналы регистрации хода проведения функционального тестирования;
Системы управления ошибками.
Нефункциональное тестирование. Проведение нефункциональных тестов, в том числе, имитирующих действия потенциального нарушителя.
Теоретическая часть по анализу уязвимостей (тестирования на проникновение). Введение в OWASP Top 10. Разбор наиболее опасных уязвимостей веб-приложений.
Проведение тестирования на проникновение на примере уязвимого веб-приложения. Практика применения автоматизированных средств (инструментов) при сертификационных испытаниях;
Практика выявления уязвимостей при проведении сертификационных испытаний класса: «Cross Site Scripting», «Cross Site Request Forgery», «SQL injection», «Path traversal».
Обеспечение безопасности при выпуске готовой к эксплуатации версии ПО.
Применение цифровой подписи ПО в качестве меры, реализующей возможность проверки целостности ПО.
Безопасная доставка ПО пользователям.
Обеспечение поддержки ПО на этапе эксплуатации пользователями
Документация технической поддержки. Организация работы службы технической поддержки;
Процедура оповещения пользователей о выпуске обновлений (включая обновления безопасности) и необходимости их установки. Процедура информирования пользователей ПО о выявленных уязвимостях и способах реализации мер по их нейтрализации до разработки обновлений безопасности, устраняющих уязвимость, по установленным каналам взаимодействия.
Обеспечение реагирования на информацию об уязвимостях.
Регламент реагирования на информацию об уязвимостях. Использование средств автоматизации (системы управления изменениями, системы отслеживания ошибок, системы управления задачами);
Поиск уязвимостей в эксплуатирующемся ПО, регламент поиска ошибок и уязвимостей в ПО при его эксплуатации. Отчеты по результатам проводимых проверок, в которые включается информация об исправлении найденных ошибок, выпуска обновлений ПО и доставки обновлений ПО пользователям.
Обеспечение безопасности при выводе ПО из эксплуатации.
Описание условий, при которых ПО (версию ПО) необходимо выводить из эксплуатации. Регламент вывода ПО из эксплуатации;
Рекомендации по формированию совокупности процессов, подлежащих реализации разработчиком безопасного ПО в рамках научно-исследовательских и опытно-конструкторских работ.
Рекомендации по формированию совокупности процессов, подлежащих реализации разработчиком безопасного программного обеспечения в рамках научно-исследовательских и опытно-конструкторских работ.