• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Магистратура 2025/2026

Разработка защищенных программных систем

Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Когда читается: 1-й курс, 1-4 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 12
Контактные часы: 100

Программа дисциплины

Аннотация

Курс «Разработка защищенных программных систем» является прикладной дисциплиной, охватывающей полный жизненный цикл безопасной разработки программного обеспечения: от принципов безопасного проектирования и международной нормативно-фреймворковой базы (NIST SSDF, ISO/IEC 27001, OWASP SAMM/ASVS, SLSA и др.) до runtime-защиты, DevSecOps-автоматизации и безопасности AI/ML-систем. Дисциплина формирует у студентов понимание того, что информационная безопасность является сквозным свойством всех этапов разработки, а не отдельной фазой тестирования. В рамках курса осваивается методология моделирования угроз (STRIDE, PASTA, MITRE ATT&CK/ATLAS), проектирование защищенной архитектуры с управлением поверхностью атаки, практики безопасности веб-приложений и API (OWASP Top 10), инструментальные техники выявления уязвимостей (статический, динамический и интерактивный анализ) фаззинг и OOB-детектирование, а также безопасность цепочки поставок программного обеспечения, контейнеров и облачных систем. Материал курса строится на разборе реальных инцидентов и CVE различных классов, формируя у студента целостное понимание взаимодействия различных дисциплин Application Security на практике.
Цель освоения дисциплины

Цель освоения дисциплины

  • Ознакомление с международными фреймворками и стандартами в области безопасной разработки программного обеспечения (NIST SSDF, ISO/IEC 27001, OWASP SAMM/ASVS, SLSA), а также с методологиями организации AppSec-функции в компании.
  • Формирование понимания принципов безопасного проектирования программных систем: моделирования угроз, управления поверхностью атаки и построения защищенной архитектуры.
  • Формирование навыков применения инструментальных техник выявления уязвимостей на всех этапах жизненного цикла разработки: статического и динамического анализа, фаззинга и OOB-детектирования.
  • Формирование навыков построения непрерывных циклов безопасной разработки с интеграцией security-контролей в CI/CD-конвейеры в рамках DevSecOps-подхода.
  • Формирование навыков обеспечения безопасности современных программных систем, включая веб-приложения и API, облачные и контейнеризированные среды, цепочку поставок программного обеспечения и AI/ML-компоненты.
Планируемые результаты обучения

Планируемые результаты обучения

  • Знает классические типы разработки программного обеспечения
  • Знает терминологию, используемую описании безопасного цикла разработки программного обеспечения
  • Знает базовые отличия классического и безопасного типа разработки программного обеспечения
  • Ориентируется в международных стандартах: ISO, MITRE ATT&CK, NIST, OWASP
  • Ориентируется корпоративных стандартах Microsoft SDL, Cisco SDL
  • Ориентируется в национальных стандартах ГОСТ и NIST
  • Владеет навыками использования банка данных угроз безопасности информации ФСТЭК России
  • Корректно использует терминологию в области безопасной разработки из стандартов ГОСТ и приказов ФСТЭК
  • Умеет декомпозировать программные системы на объекты, подлежащие угрозам и требующие зашиты
  • Умеет строить деревья угроз
  • Корректно распределяет угрозы по классификациям Stride и методике Dread
  • Адекватно выбирает методы и технологии для борьбы с угрозами
  • Знает про основные перечни классификации дефектов (CWE), уязвимостей (CVE, БДУ ФСТЭК) и их числовые оценки уязвимости (CVSS)
  • Умеет использовать основные перечни для проектирования поверхности атаки разрабатываемых программных систем
  • Знает об основных угрозах, получаемых от компонентов с открытым исходным кодом
  • Умеет использовать технические средства инвентаризации компонентной базы программных продуктов
  • Владеет средствами оценки защищенности используемых открытых компонентов программных продуктов
  • Владеет средствами оценки защищенности используемых бинарных модулей и утилит обеспечивающих работу программных систем
  • Знает о возможностях применения статических средств анализа исходного кода
  • Знает главные плюсы и минусы применения статических средств анализа исходного кода с целью снижения дефектов и уязвимостей информационной безопасности разрабатываемых систем
  • Умеет применять статические средства анализа исходного кода при построении цикла разработки программного обеспечения
  • Знает о возможностях и сложностях применения динамических средств анализа защищенности приложения
  • Знает главные плюсы и минусы применения динамических средств анализа защищенности разрабатываемых программных систем
  • Умеет применять динамические средства анализа защищенности при разработке и построении цикла тестовых испытаний программного обеспечения
  • Знает про интерактивные средства тестирования защищенности приложения их сильные и слабые стороны
  • Знает про системы самозащиты приложения во время выполнения их сильные слабы стороны
  • Знает о классах уязвимостей, детектируемых средствами внеполосного сетевого взаимодействия
  • Владеет практическими навыками использования средств внеполосного сетевого взаимодействия для тестирования разрабатываемого программного обеспечения
  • Знает классификацию средств фаззинга программного обеспечения
  • Умеет использовать фаззинг средства для автоматизированной поверхности атаки
  • Знает типы уязвимостей при неверном хранении секретов
  • Знает основные подходы к хранению секретов
  • Умеет применять средства хранения секретов на этапе разработки, развёртывания и использования программных средств
  • Знает этапы цикла безопасной разработки программного обеспечения подлежащей автоматизации путём применения конвейера
  • Умеет адекватно располагать средства тестирования защищенности исходного кода, приложений, компонентов и секретов по этапам жизненного цикла
  • Умеет автоматизировать цикл безопасной разработки программных систем используя конвейеры
  • Знает основные функции предоставляемые файрволлом веб приложений и системами предотвращения вторжений
  • Знает плюсы и минус применения единых аппаратных средств и специализированных индивидуальных средств защиты информации при её передаче по открытым каналам связи
Содержание учебной дисциплины

Содержание учебной дисциплины

  • 1. Введение в безопасный цикл разработки программного обеспечения
  • 2. Нормативная база безопасной разработки программного обеспечения
  • 3. Моделирование угроз
  • 4. Проектирование поверхности атаки
  • 5. Системы композиционного анализа и защита цепочек поставки компонентов
  • 6. Статические средства анализа исходного кода на наличие ошибок и уязвимостей
  • 7. Динамические средства анализа защищенности приложений
  • 8. Гибридные средства оценки защищенности приложений и средства самозащиты приложений
  • 9. Выявление скрытых уязвимостей приложения через внеполосное сетевое взаимодействие
  • 10. Фаззинг программного обеспечения
  • 11. Управление секретами при разработке и развёртывании программного обеспечения
  • 12. Конвейеры обеспечения цикла безопасной разработки
  • 13. Файрволл веб приложений и системы предотвращения вторжений
Элементы контроля

Элементы контроля

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

Промежуточная аттестация

  • 2025/2026 2nd module
    -
  • 2025/2026 4th module
    0.5 * Экзамен + 0.1 * Промежуточные тесты + 0.4 * Практические работы
Список литературы

Список литературы

Рекомендуемая основная литература

  • Внуков, А. А.  Защита информации в банковских системах : учебник для вузов / А. А. Внуков. — 2-е изд., испр. и доп. — Москва : Издательство Юрайт, 2025. — 246 с. — (Высшее образование). — ISBN 978-5-534-01679-6. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/561314 (дата обращения: 14.01.2026).
  • Казарин, О. В.  Надежность и безопасность программного обеспечения : учебник для вузов / О. В. Казарин, И. Б. Шубинский. — Москва : Издательство Юрайт, 2025. — 342 с. — (Высшее образование). — ISBN 978-5-534-05142-1. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/563862 (дата обращения: 04.07.2025).
  • Казарин, О. В.  Программно-аппаратные средства защиты информации. Защита программного обеспечения : учебник и практикум для вузов / О. В. Казарин, А. С. Забабурин. — Москва : Издательство Юрайт, 2025. — 312 с. — (Высшее образование). — ISBN 978-5-9916-9043-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/562070 (дата обращения: 14.01.2026).

Рекомендуемая дополнительная литература

  • 33876 - Безопасность веб-приложений на Python - Д.Бирн - ДМК Пресс - 9785970608999 - 2023 - https://hse.alpinadigital.ru/document/33876 - Alpina
  • Козырь, Н. С.  Экономические аспекты информационной безопасности : учебник и практикум для вузов / Н. С. Козырь, Л. Л. Оганесян. — Москва : Издательство Юрайт, 2025. — 131 с. — (Высшее образование). — ISBN 978-5-534-17863-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/568708 (дата обращения: 14.01.2026).

Авторы

  • Аксенова Ольга Вениаминовна
  • Евсютин Олег Олегович