Безопасность компьютерных систем 2017 — различия между версиями
Материал из Wiki - Факультет компьютерных наук
Enr1g (обсуждение | вклад) м (→План курса) |
Gamajun (обсуждение | вклад) |
||
Строка 35: | Строка 35: | ||
# (21.11) Безопасная разработка. | # (21.11) Безопасная разработка. | ||
# (28.11) [[Безопасность_компьютерных_систем_2017/SECCOMP|Механизмы безопасности операционных систем на примере Linux Seccomp]] | # (28.11) [[Безопасность_компьютерных_систем_2017/SECCOMP|Механизмы безопасности операционных систем на примере Linux Seccomp]] | ||
− | # (05.12) [https://drive.google.com/open?id=1Aq9shLjGTypbGrGSFksfEdziu_XX41kG Атаки на блочные шифры | + | # (05.12) [https://drive.google.com/open?id=1Aq9shLjGTypbGrGSFksfEdziu_XX41kG Атаки на блочные шифры.] |
− | # (12.12) Атаки на RSA. | + | # (12.12) [[Безопасность_компьютерных_систем_2017/RSA|Атаки на RSA.] |
=== Материалы лекций === | === Материалы лекций === |
Версия 23:39, 11 декабря 2017
Содержание
Безопасность компьютерных систем
Курс по выбору для студентов 3 и 4 курса ФКН ВШЭ, осень 2017 года (1 и 2 модуль). Курс состоит из лекций и семинаров. Основной акцент сделан на безопасности приложений и разработке безопасного программного обеспечения.
План курса
Лекции:
- (05.09) Вводная лекция. Безопасность приложений как фактор технологической конкуренции. Уязвимости программного обеспечения и атаки на них.
- (12.09) Основные понятия и определения. Модель нарушителя.
- (19.09) Безопасность приложений. Мобильные приложений и их уязвимости.
- (26.09) Безопасность приложений. Уязвимости веб-приложений ч. 1.
- (03.10) Безопасность приложений. Уязвимости веб-приложений ч. 2.
- (10.10) Безопасность приложений. Исполнение программ на процессоре, стек, подпрограммы и функции, передача аргументов, возврат значения. Системные вызовы. Размещение объектов в памяти: статическое, динамическое, автоматическое. Загрузчик программных модулей. Формат исполняемых файлов ELF. Зависимости модулей. Символы. Уязвимости, связанные с переполнением буфера.Уязвимости, связанные с подменой программных модулей. Уязвимости, связанные с некорректной проверкой прав доступа, TOCTOU.
- (17.10) Безопасность приложений. Уязвимости переполнения кучи. Механизмы защиты в современных операционных систем. ASLR, защита стека. Методы обхода.
- (31.10) Безопасность приложений. Secure Development Life Cycle ч. 1
- (7.11) Безопасность приложений. Secure Development Life Cycle ч. 2
- (14.11) Механизмы безопасности приложений в операционных системах.
- (21.11) Криптография. Введение и история
- (28.11) Криптография. Симметричные шифры и атаки на них.
- (5.12) Криптография, Асимметричные шифры и атаки на них.
- (12.12) Криптография. Приложения - PKI, WoT, Блокчейн.
- (19.12) Криптография. Пост-квантовая криптография. Заключение.
Семинары:
- (12.09) Уязвимости мобильных приложений ч. 1
- (19.09) Уязвимости мобильных приложений ч. 2
- (26.09) Веб-уязвимости. Обзор, инструменты.
- (03.10) Веб-уязвимости. XSS.
- (10.10) Веб-уязвимости. SQLi.
- (17.10) Веб-уязвимости. XXE, прочее интересное.
- (31.10) Бинарные программы. Инструменты.
- (07.11) Бинарные программы. Обнаружение уязвимостей и эксплуатация.
- (14.11) Уязвимости в бинарных программах. Advanced.
- (21.11) Безопасная разработка.
- (28.11) Механизмы безопасности операционных систем на примере Linux Seccomp
- (05.12) Атаки на блочные шифры.
- (12.12) [[Безопасность_компьютерных_систем_2017/RSA|Атаки на RSA.]
Материалы лекций
Лекционные материалы публикуются по мере продвижения по курсу.
Практические задания
В рамках курса нужно выполнять домашние задания, выдаваемые на семинарах. Всего запланировано 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
Дополнительная литература:
Контакты
- Почта: gamajun@gmail.com, dgamaunov@hse.ru
- Tg: @jamadharma
- Tg чат: https://t.me/hse_security_course