Безопасность компьютерных систем 2018

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Безопасность компьютерных систем

Курс по выбору для студентов 3 и 4 курса ФКН ВШЭ, осень 2018 года (1 и 2 модуль). Курс состоит из лекций и семинаров. Основной акцент сделан на безопасности приложений и разработке безопасного программного обеспечения.

План курса

Лекции:

(1-й модуль)

  1. (11.09) Вводная лекция. Безопасность приложений как фактор технологической конкуренции. Уязвимости программного обеспечения и атаки на них. Основные понятия и определения. Модель нарушителя.
  2. (18.09) Безопасность приложений. Мобильные приложения и их уязвимости.
  3. (25.09) Безопасность приложений. Injection-атаки и санитизация запросов во внешние подсистемы.
  4. (02.10) [Безопасность приложений. Валидация сложных структур данных. Загрузка файлов. XXE и SSRF.]
  5. (09.10) [Безопасность приложений. Аутентификация и авторизация.]
  6. (16.10) [Безопасность приложений. Secure Development Life Cycle - методы поиска недостатков в ПО.]

(2-й модуль)

  1. (30.10) [Безопасность приложений. Уязвимости, связанные с переполнением буфера.]
  2. (06.11) [Безопасность приложений. Уязвимости переполнения кучи. Механизмы защиты в современных операционных систем. ASLR, защита стека. Методы обхода.]
  3. (13.11) [Механизмы безопасности приложений в операционных системах.]
  4. (20.11) [Криптография. Введение и история]
  5. (27.11) [Криптография. Симметричные шифры и атаки на них.]
  6. (04.12) [Криптография, Асимметричные шифры и атаки на них.]
  7. (11.12) [Криптография. Приложения - PKI, WoT, Блокчейн.]
  8. (18.12) [Криптография. Пост-квантовая криптография. Заключение.]

Семинары:

  1. (18.09) Безопасность компьютерных систем 2018/Уязвимости мобильных приложений
  2. (25.09) Веб-уязвимости. Обзор, инструменты. XSS.
  3. (02.10) Веб-уязвимости. SQLi.
  4. (09.10) Веб-уязвимости. XXE, прочее интересное.
  5. (16.10) Безопасная разработка.
  6. (30.10) Бинарные программы. Инструменты.
  7. (06.11) Бинарные программы. Обнаружение уязвимостей и эксплуатация.
  8. (13.11) Механизмы безопасности операционных систем на примере Linux Seccomp
  9. (20.11)
  10. (27.11) Атаки на блочные шифры.
  11. (04.12) Атаки на RSA.
  12. (11.12) ICO, смартконтракты и Solidity.

Материалы лекций

Лекционные материалы публикуются по мере продвижения по курсу.


Практические задания

В рамках курса нужно выполнять домашние задания, выдаваемые на семинарах. Всего запланировано 4 задания.

Задание по теме "Уязвимости мобильных приложений"

Общее

Итоговый тест

Оценки

Расчет оценки

Вклад в оценку:

  • Практические задания (4 штуки) - 80%
  • Итоговый тест (на экзамене) - 20%

Литература

Основная литература:

  • Michał Zalewski. The Tangled Web: A Guide to Securing Modern Web Applications.
  • Chris Anley, John Heasman, Felix Lindner, Gerardo Richarte. The Shellcoder's Handbook: Discovering and Exploiting Security Holes.
  • Dafydd Stuttard, Marcus Pinto. The Web Application Hacker's Handbook: Detecting and Exploiting Security Flaws.
  • Christopher Swenson, Modern Cryptanalysis: Techniques for Advanced Code Breaking.
  • Æleen Frisch. Essential system administration.
  • Dominic Chell, Tyrone Erasmus, Shaun Colley, Ollie Whitehouse. The Mobile Application Hacker's Handbook

Дополнительная литература:

Контакты