Спецкурс посвящен современным гибридным методам анализа программного обеспечения и поиска критических дефектов в исходном и исполняемом коде программ. Рассматриваются методы статического и динамического анализа, фаззинга, а также подходы к их интеграции для анализа программных систем со состояниями и масштабных кодовых баз. Особое внимание уделяется вопросам масштабируемости и декомпозиции анализа. Курс ориентирован на студентов магистратуры ВМК, интересующихся проблемами анализа программ, программной инженерии и компьютерной безопасности.
|
1. Современные задачи анализа программного обеспечения
2. Семантически ориентированные методы статического анализа программ
3. Анализ больших кодовых баз
4. Семантический и композиционный анализ программ. Анализ цепочек поставки программного обеспечения
5. Семантически управляемые методы фаззинга и динамического анализа программ
6. Метрики покрытия и учета состояний программы
7. Динамический анализ программ в виртуализированных и эмулируемых средах
8. Гибридный анализ программ: интеграция состояний, семантики и поиска дефектов
Основная литература:
1) Ахо А., Лам М., Сети Р., Ульман Дж. Компиляторы: принципы, технологии и инструменты = Compilers: Principles, Techniques, and Tools. — 2-е изд. — М.: Вильямс, 2008. — 1184 с.
2) Dowd M., McDonald J., Schuh J. The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities. — Boston: Addison-Wesley Professional, 2006. — 768 p.
3) Klein T. A Bug Hunter’s Diary: A Guided Tour Through the Wilds of Software Security. — San Francisco: No Starch Press, 2011. — 208 p.
|