Я занимаюсь безопасностью мобильных и веб-приложений с 2014 года.
Много раз слышал от разных людей и в разных контекстах о «торговле юзабилити против безопасности», но с самого начала видел в этом какой-то подвох.
В этом посте я поделюсь своим мнением о том, почему, на мой взгляд, это не компромисс, и на самом деле от него давно следовало отказаться.
Что это
Компромисс между удобством использования и безопасностью обычно означает следующую закономерность: чем безопаснее процесс, тем он неудобнее.
Поясню на простых примерах, что я имею в виду:
- Пароль qwerty удобен, но не безопасен.
Длинный пароль с символами разного регистра безопасен, но неудобен.
- Запускать код непосредственно в производство удобно, но небезопасно.
Проверить его средствами безопасности и провести аудит безопасно, но неудобно.
- Переходить улицу, когда захочешь, удобно, но небезопасно.
Переходить улицу на зеленый безопасно, но неудобно.
- Как видите, речь может идти не только о программном обеспечении, под «удобством» могут скрываться разные параметры.
Тем не менее, закономерность очевидна.
Что может пойти не так
На практике пользователь зачастую не готов мириться с неудобствами и заменяет «безопасный, неудобный» процесс на «небезопасный, менее неудобный» процесс:- Длинный пароль с символами разного регистра запомнить сложно, поэтому для всех аккаунтов в социальных сетях и интернет-магазинах он один.
Некоторые из них определенно хранят пароли в простой текст и либо потеряет их, либо продаст. В том числе, напомню, наш пароль на всё.
- Департамент информационной безопасности обязал разработчиков запускать код с помощью инструмента проверки безопасности.
Но каждый раз инструмент показывает кучу уязвимостей, непонятно, где старые, а где новые.
В результате их никто не исправляет.
- Светофор настроен неправильно, он очень долго загорается зеленым, а машин нет, и люди решили переключиться на красный.
Сложность в том, что мы не можем решить за пользователя, что ему делать.
Мы можем предложить процесс, который считаем правильным.
Следовать этому процессу или нет — выбор пользователя.
Что делать
Прежде всего, вам нужно повернуться спиной к лесу и лицом к пользователю.Странно даже предлагать пользователю «безопасный, неудобный» процесс, ведь наша задача — организовать удобный.
Давайте откажемся от мысли, что для получения безопасности нужно пожертвовать удобством использования, и попробуем объединить их в одном решении.
Тогда наши примеры примут следующий вид:
- Мы не предлагаем пользователю запоминать много длинных паролей.
Мы предлагаем ему использовать менеджер ключей и запомнить один надежный мастер-пароль.
В идеале менеджер ключей должен быть встроен в браузер, чтобы не приходилось каждый раз копипастить.
- Инструмент безопасности отслеживает, какие уязвимости являются старыми, а какие новыми, и отображает их отдельно.
Пользователь видит историю работы с этой уязвимостью и понимает контекст. Работа стала проще, уязвимости устранены.
- Время работы светофоров рассчитывается с учетом потока машин и людей, долго ждать никому не придется.
Наоборот, пользователь в силу своей рациональности выбирает то решение, которое ему удобнее.
И наша задача – сделать так, чтобы это было безопасно.
Правильное мышление
Идея о том, что безопасность не сочетается с удобством использования, до сих пор звучит довольно часто.Некоторые идут еще дальше и заявляют, что по-настоящему безопасный процесс всегда будет неудобен и, следовательно, доступен только специалистам.
Мне кажется, такой подход в корне неверен.
Безопасность — это массовый рынок.
Вы не можете быть уверены в безопасности своих социальных сетей, если у ваших друзей есть пароль qwerty: злоумышленник напишет вам от их имени, и ваши средства окажутся в опасности.
Соответственно, безопасные методы хранения паролей (а также решения других задач) должны быть доступны рядовому пользователю.
Постепенно все больше ответственности ложится на мобильные и веб-приложения: у всех есть банковские приложения на смартфонах, а у некоторых есть криптокошельки.
Мы сможем предотвратить глупые и обидные потери средств, только если изначально будем думать о безопасности и удобстве как о взаимодополняющих вещах.
Неудобный процесс не может быть безопасным, потому что пользователь не будет ему следовать.
Автор: Иван Иваницкий, ведущий аналитик Solar appScreener Теги: #информационная безопасность #Разработка мобильных приложений #Программное обеспечение #мобильные приложения #безопасность веб-приложений #анализ кода #юзабилити
-
Бытовая Техника
19 Oct, 24 -
Коворкинг – Новый Способ Выращивания Пчел
19 Oct, 24 -
Github.com Потерпел Крах
19 Oct, 24 -
Как Вы Относитесь К Анонимности В Интернете?
19 Oct, 24