Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Safonov / AMPN_course_1.pptx
Скачиваний:
142
Добавлен:
16.04.2015
Размер:
233.35 Кб
Скачать

Основные идеи и принципы TWC и

SDLC

В течение всего цикла разработки ПО, начиная с самых ранних этапов (требования, спецификации, проектирование), необходимо постоянно предусматривать меры надежности и безопасности ПО, чтобы впоследствии не пришлось их встраивать в систему в “авральном порядке”, что значительно увеличит затратыНеобходимо заранее анализировать и моделировать возможные угрозы и атаки на ПО и разрабатывать меры их отражения

Необходимы инструменты количественной оценки рисков, с точки зрения надежности и безопасности

Необходимы специальные виды тестирования ПО – security testing, fuzzy testing (fuzzing)

Необходимы эксперты по безопасности ПО (security buddies), участвующие в разработке в течение всего цикла

(C) Сафонов В.О. 2012

Общая схема SDLC и его связь с “водопадной” моделью

(C) Сафонов В.О. 2012

SD3+C

Безопасность как результат проектирования

(Secure by Design)

Защита программы и ее данных

Безопасность по умолчанию

(Secure by Default)

Разработчики должны предполагать, что возможны уязвимые места в системе безопасности.

Принципы: наименьшие привилегии и предотвращение

отказов системы

Безопасность при развертывании (Secure in Deployment)

Документация и инструменты для пользователей и администраторов.

Простота инсталляции обновлений безопасности

Коммуникации

(Communications)

Открытая и оперативная коммуникация с системными администраторами и пользователями с целью

помощи им в настройке(C) Сафонов В.О. и2012улучшении безопасности

STRIDE – классификация угроз

Spoofing – букв.: пародирование, розыгрыш

Например, воспроизведение транзакции, выполняющей аутентификацию пользователя.

Tampering Несанкционированное изменение

Изменение данных с целью атаки Например, модификация аутентификационных файлов с целью добавления

нового пользователя

Repudiation – букв.: категорическое несогласие, отрицание, отказ

Пример из повседневной жизни: отрицание того, что Вы купили товары, которые Вы на самом деле купили.

Драйвер может быть подвержен repudiation-угрозе, если он не выполняет журналирование (logging) действий, которые могут привести к нарушению безопасности.

Например, драйвер видеоустройства, который не фиксирует запросы на изменение фокуса и уменьшение размеров изображения (который могут привести к его искажению

Information disclosure – Несанкционированный доступ к конфиденциальной информации

Например: Получение списка номеров кредитных карт клиентов банка

Denial of service – Отказ в обслуживании

Например: сознательное достижение эффекта излишней загрузки процессора, используя недостатки хеш-алгоритма

Elevation of privilege – Увеличение привилегий

Например: Запуск привилегированной программы для выполнения Ваших команд

(C) Сафонов В.О. 2012

Оценка атак на программное обеспечение:

Схема DREAD

Damage - Ущерб

Reproducibility - Воспроизводимость

Как часто происходит и можен ли быть

воспроизведена (смоделирована)

Exploitability – здесь: Квалификация

(уровень)

Опыт и квалификация (хакера), необходимые

для атаки

Affected users – Против каких

пользователей направлена

Discoverability – Может ли быть

обнаружена

(C) Сафонов В.О. 2012

Вопросы и домашнее задание к лекции 1

1)Проанализируйте известные парадигмы разработки программ

сточки зрения поддержки надежности и безопасности:

Объектно-ориентированное программированиеАспектно-ориентированное программированиеГенерирующее программирование (Generative Programming)Метапрограммирование (Meta-programming)

Адаптивное программирование

Контрактное проектирование(Design by Contract)Функциональное программированиеЛогическое программирование

2) Проанализируйте меры обеспечения надежности и безопасности, реализованные в широко используемом ПО фирмы Microsoft: ОС Windows (XP, 2003, Vista, 2008, 7); Internet Explorer; Microsoft Office и др. Сформулируйте, в чем смысл этих мер. Проанализируйте возможные последствия отключения этих проверок

(C) Сафонов В.О. 2012

Соседние файлы в папке Safonov