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

Безопасность в жизненном цикле разработки

Статус: Маго-лего
Когда читается: 3, 4 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 6
Контактные часы: 60

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

Аннотация

Курс посвящен методологиям и практикам интеграции механизмов безопасности в полный жизненный цикл разработки программных систем, включая системы машинного обучения и приложения, использующие большие языковые модели. В ходе изучения дисциплины рассматриваются принципы Secure SDLC и DevSecOps, методы статического и динамического анализа безопасности (SAST, DAST), анализ состава программного обеспечения (SCA), управление уязвимостями, безопасность контейнеров, инфраструктуры как кода (IaC), автоматизация проверок безопасности в CI/CD, а также вопросы обеспечения безопасности программной цепочки поставки. Отдельное внимание уделяется особенностям обеспечения безопасности систем искусственного интеллекта, включая защиту моделей машинного обучения, безопасность LLM, RAG, агентных систем, противодействие Prompt Injection и анализ рисков генеративного ИИ. Практическая часть курса ориентирована на проектирование защищенного жизненного цикла разработки собственного программного или ML-проекта, который может использоваться в качестве основы выпускной квалификационной работы.
Цель освоения дисциплины

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

  • Цель дисциплины: Формирование у студентов компетенций по проектированию, реализации и сопровождению безопасного жизненного цикла разработки программных, ML- и AI-систем на основе современных подходов Secure SDLC и DevSecOps.
  • Основные задачи: • изучение архитектуры Secure SDLC и DevSecOps; • освоение методов SAST, DAST и SCA; • изучение практик управления уязвимостями; • освоение принципов безопасной контейнеризации; • изучение безопасности Infrastructure as Code; • интеграция проверок безопасности в CI/CD; • изучение безопасности цепочки поставки ПО; • обеспечение безопасности ML- и LLM-систем; • проектирование защищённого процесса разработки.
Планируемые результаты обучения

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

  • Описывает архитектуру безопасного жизненного цикла разработки
  • Умеет применять SAST, DAST и SCA
  • Выполняет анализ программных зависимостей
  • Внедряет проверки безопасности в CI/CD
  • Анализирует безопасность контейнеров и IaC
  • Оценивает риски программной цепочки поставки
  • Учитывает угрозы ML- и LLM-систем
  • Проектирует Secure SDLC для собственного проекта
Содержание учебной дисциплины

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

  • Модуль 1. Архитектура Secure SDLC и DevSecOps
  • Модуль 2. Безопасность процессов разработки и управления исходным кодом
  • Модуль 3. Статический анализ безопасности программного обеспечения
  • Модуль 4. Анализ программных зависимостей и управление уязвимостями
  • Модуль 5. Безопасность контейнерных технологий
  • Модуль 6. Безопасность Infrastructure as Code
  • Модуль 7. Автоматизация безопасности в CI/CD
  • Модуль 8. Управление уязвимостями и рисками
  • Модуль 9. Безопасность систем машинного обучени
  • Модуль 10. Безопасность систем на основе больших языковых моделей
  • Модуль 11. Проектирование защищенного жизненного цикла разработки
  • Модуль 12. Итоговый проект
Элементы контроля

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

  • неблокирующий Выполнение и защита лабораторных работ
    При выполнении лабораторных работ и итогового проекта рекомендуется использование следующего программного обеспечения. • операционная система Linux, Windows или macOS; • Git; • Visual Studio Code или другая современная интегрированная среда разработки; • Python 3.12 или выше; • Docker Desktop или Docker Engine; • GitHub Actions, GitLab CI или аналогичная платформа автоматизации CI/CD; • Semgrep; • CodeQL; • Trivy; • Checkov; • Terraform; • Open WebUI; • Ollama; • современные веб-браузеры с инструментами разработчика; • при необходимости допускается использование облачных сервисов и локальных виртуальных машин для выполнения лабораторных работ.
  • неблокирующий Выполнение индивидуального задания
  • неблокирующий Итоговый проект по проектированию защищенного жизненного цикла разработки
  • неблокирующий Анализ и обсуждение архитектурных решений
Промежуточная аттестация

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

  • 2026/2027 4th module
    0.2 * Выполнение индивидуального задания + 0.4 * Выполнение и защита лабораторных работ + 0.3 * Итоговый проект по проектированию защищенного жизненного цикла разработки + 0.1 * Анализ и обсуждение архитектурных решений
Список литературы

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

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

  • Gene Kim, Jez Humble, Patrick Debois, & John Willis. (2016). The DevOps Handbook : How to Create World-Class Agility, Reliability, and Security in Technology Organizations. IT Revolution Press.

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

  • Gene Kim, Kevin Behr, & George Spafford. (2018). The Phoenix Project : A Novel About IT, DevOps, and Helping Your Business Win. IT Revolution Press.
  • Humble, J., & Farley, D. (2011). Continuous Delivery : Reliable Software Releases Through Build, Test, and Deployment Automation. Upper Saddle River, NJ: Addison-Wesley Professional. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1599336

Авторы

  • Иванов Федор Ильич