Выявление и устранение уязвимостей

Субъект

Студенты, зачисленные на курс по безопасности приложений.

Предварительные условия

Студенты завершили вводные курсы по программированию.

Поведение

Рабочая роль (должность): специалист по безопасной разработке приложений

Задача

Исправьте ошибки, внеся соответствующие изменения и перепроверив программу, чтобы гарантировать получение желаемых результатов.

Контекст

Сценарий: студентам предоставляется несколько программ на языке C, предназначенных для выполнения различных задач: а) аутентификация пользователей на основе паролей; б) копирование буферов между ячейками памяти; в) чтение фрагмента данных из файла в буфер памяти. Однако эти программы, написанные на языке C, содержат уязвимости переполнения буфера. Студентам предлагается выявить эти уязвимости и впоследствии исправить их, переписав программы для достижения желаемых результатов безопасным способом.

Технология

Visual Studio (или другая IDE, поддерживающая компиляторы C)

Ограничения

Перепишите программы на языке C (избегая использования других языков программирования)

Степень завершения

% завершения: выявить минимум три буферные уязвимости в предоставленной программе и предложить рекомендации по их устранению.

Количество времени: 60 минут.

Дополнительно

Оригинал компетенции на сайте