2011-8

advertisement
Безопасное
программирование
Стоимость исправлений
•
•
•
•
•
•
Цена плана исправлений
Цена поиска уязвимого кода
Цена исправления кода
Цена тестирования
Цена тестирования инсталлятора
Цена создания и тестирования международной версии
Стоимость исправлений
•
•
•
•
•
Цена цифровой подписи и ее поддержки
Цена публикации на web-сайте
Цена написания сопроводительной документации
Цена исправления плохого общественного мнения
Цена поддержания канала для скачивания исправления
Стоимость исправлений
• Цена потери производительности компании
• Цена установки исправления для клиента
• Стоимость потенциальных потерь дохода из-за ухода
клиентов
Безопасность в разработке
ПО
Определение
требований к
совместимости со
старыми
версиями
Определение
потребностей
безопасности в
течении интервью
Внешняя ревизи
Процесс
реакции
Поддержка
безопасности
Моделирование угроз
Фаза дизайна
Концепт
Исследование
Фаза продаж и сопровождения
Фаза тестирования
Фаза разработки
Завершение
дизайна
Создание плана
тестирования
Тестирование
Рецензия
возможностей
команды
манипулирования
безопасности
данными и
привелегиями
Кодирование
завершено
·
·
·
Ревизия старых ошибок
Регистрация проверок
Инструкции безопасного
программирования
Фаза дизайна
•
•
•
•
В каких условиях используется устройство?
Как атакующий может уничтожить устройство?
Как управление может уменьшить атаки?
Каковы угрозы для устройства, предполагая, что каждое
устройство содержит чувствительные данные?
• Кто создаёт чувствительные данные на устройстве?
• Кто устанавливает ПО?
• Кто управляет созданием данных и установкой ПО?
Определение целей
безопасности
• Кто является целевой группой ПО?
• Какие ожидания безопасности целевой группы? Чем они
отличаются о более требовательных представителей? Как
это влияет на требования безопасности?
• Где и как может быть запущено приложение? Internet?
Коммуникатор?
• Что можно предпринять для защиты?
• Какие последствия наступают для пользователя в случае
компрометации системы?
Определение целей
безопасности
• Кто управляет приложением? Пользователь ил
администратор?
• Какие коммуникации необходимы для работы ПО?
• Какие сервисы безопасности предоставляет окружение:
ОС, ПО сторонних производителей?
• Что должно быть защищено от пользователя?
Модель угроз
• Для построения
модели нарушителя
необходимо
обратиться к
существующим
практикам
Определение совместимости
со старыми версиями
• Старое ПО никогда
не умирает, оно
становится не
безопасным.
• Тем не менее его
могут использовать
и необходимо
предусмотреть
соместимость
Download