Рассмотрены практические вопросы реализации методов анализа и тестирования безопасности программного обеспечения. Представлены методические указания для выполнения лабораторных работ по выявлению типовых дефектов и уязвимостей программ. Подробно рассмотрены уязвимости привилегированных программ; уязвимости, связанные с использованием строки форматирования; уязвимости, связанные с переполнением буфера; уязвимости веб-приложений; атаки состояния гонки; атаки возврата в библиотеку. Даны рекомендации по выполнению практических заданий, а также приведены вопросы для самоконтроля. Для студентов, обучающихся по направлению 10.05.03 «Информационная безопасность автоматизированных систем».