Открываем серию статей о топ-10 OWASP. Категорию «А04:2021 – Небезопасный дизайн» проект ввел в 2021 году.
В статье рассказываем, что же такое небезопасный дизайн, какие рекомендации дает OWASP
во избежание этой уязвимости.
Разница между безопасным и небезопасным дизайном
Сама категория достаточно широка. В нее входят такие недостатки, как неэффективность управления или его полное отсутствие, недостаточное определение бизнес-логики. Одним из ключевых факторов, негативно влияющих на безопасность дизайна, является невозможность определения правильного уровня защиты из-за отсутствия профилирования бизнес – рисков.
Часто небезопасный дизайн путают с небезопасной реализацией, что не является верным суждением. Ведь проблемы с реализацией могут быть и у безопасного, с точки зрения дизайна, приложения. Это несет риски атаки злоумышленников.
Безопасный дизайн – совокупность культуры и методологии, оценивающих угрозы и гарантирующих безопасность кода перед известными способами атаки с применением моделирования угроз. При разработке пользовательской части в таком дизайне учтена степень отклонения от заданных норм безопасности, условий поведения пользователя.
Проявления небезопасного дизайна
- Восстановление учетной записи путем подтверждения личности через вопросы и ответы. Этот метод не используется, ведь ответы могут быть известны не только одному человеку.
- Бронирование групповых билетов без внесения предоплаты. Такая возможность может быть использована злоумышленниками для выкупа мест во всей сети. Это приведет
к финансовым проблемам. - Отсутствие защиты от ботов на электронной торговой площадке. С помощью таких ботов злоумышленники могут скупать дорогостоящее оборудование и перепродавать
на аукционах, что скажется на репутации компании.
Что делать во избежание небезопасного дизайна
Проект OWASP, с точки зрения бизнеса, рекомендует не экономить на безопасности:
Если говорить о безопасности с технической точки зрения, то рекомендации выглядят так:
но проверенных компонентов.
и бизнес-логики.
Ещё одной важной рекомендацией является обеспечение жизненного цикла безопасной разработки. Здесь не обойтись без специалистов по кибербезопасности. Также можно рассмотреть внедрение методологии DevSecOps, что позволит интегрировать задачи безопасности в разработку приложения. Точки риска необходимо отслеживать на всех этапах создания продукта.
OWASP Software Assurance (SAMM)
Также OWASP рекомендуют попробовать OWASP Software Assurance (SAMM).
Это методология, которая помогает построить цикл разработки безопасного приложения. С ней вы узнаете свой текущий уровень разработки и выстроите поэтапный перечень дальнейших действий, сможете оценить эффективность вносимых изменений. Некоторые специалисты сравнивают OWASP SAMM с учебником или пошаговой инструкцией.
Несомненный плюс OWASP SAMM – возможность использовать опыт мировых практик по защите приложений, что сэкономит время и даст новые точки роста в организации системы защиты.