Почему удобство vs безопасность — не трейдофф

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Я с 2014 года работаю над безопасностью мобильных и веб-приложений. Много раз слышал от разных людей и в разном контексте про «трейдофф usability vs security», при этом с самого начала видел в этом какой-то подвох. В этом посте я поделюсь своим мнением, почему, на мой взгляд, это не трейдофф, и на самом деле от него давно стоит отказаться.

image

Что это такое


Под трейдоффом usability vs security как правило подразумевается следующая закономерность: чем безопаснее процесс, тем он неудобнее.

image

Поясню на простых примерах, что имеется в виду:

  • Пароль qwerty — удобно, небезопасно. Длинный пароль с символами разного регистра — безопасно, неудобно.
  • Запускать код сразу в продакшн — удобно, небезопасно. Проверять его инструментами безопасности и проводить аудит — безопасно, неудобно.
  • Переходить улицу, когда захочется — удобно, небезопасно. Переходить улицу на зелёный — безопасно, неудобно.
  • Как видите, речь может идти не только о софте, а под «удобством» могут скрываться разные параметры. Тем не менее, закономерность налицо.

Что может пойти не так


На практике же пользователь зачастую не готов смириться с неудобством и заменяет «безопасный, неудобный» процесс на «небезопасный, менее неудобный»:

image

  • Длинный пароль с символами разного регистра запомнить сложно, поэтому он один на все аккаунты в соцсетях и интернет-магазины. Кто-то из них точно хранит пароли в plain text и либо потеряет их, либо продаст. В том числе, напомню, наш пароль от всего.
  • Департамент ИБ обязал разработчиков прогонять код инструментом проверки безопасности. Но инструмент каждый раз выдаёт кучу уязвимостей, непонятно, где старые, где новые. В итоге их никто не исправляет.
  • Светофор настроен неправильно, очень долго ждать зелёный, при этом машин нет, и люди решили переходить на красный.

Безопасный неудобный процесс не даст безопасности, если им не пользоваться. Сложность в том, что мы не можем за пользователя решить, как ему поступать. Мы можем предложить процесс, который считаем правильным. Следовать этому процессу или нет — выбор пользователя.

Что делать


В первую очередь нужно повернуться к лесу задом, а к пользователю передом. Странно даже предлагать юзеру «безопасный, неудобный» процесс, ведь наша работа и заключается в том, чтоб организовать удобный. Давайте откажемся от мысли, что для получения security нужно пожертвовать usability, и попытаемся совместить их в одном решении.

image

Наши примеры тогда приобретут следующий вид:

  • Мы не предлагаем пользователю запоминать много длинных паролей. Мы предлагаем ему пользоваться менеджером ключей и запомнить один сильный мастер-пароль. В идеале менеджер ключей должен быть встроен в браузер, чтобы не приходилось каждый раз копипастить.
  • Инструмент безопасности следит, какая уязвимость старая, а какая новая, и отображает их отдельно. Пользователь видит историю работы с этой уязвимостью и понимает контекст. Работать стало проще, уязвимости устраняются.
  • Время светофора рассчитано с учётом потока машин и людей, никому не приходится долго ждать.

Чтобы получить такой результат, нам пришлось отказаться от высокомерной мысли, что пользователь по своей глупости отказывается от безопасного решения. Напротив, пользователь в силу своей рациональности выбирает то решение, которое ему удобнее. А наша задача — сделать так, чтоб оно же было и безопасным.

Правильный майндсет


Мысль о том, что security не сочетается с usability до сих пор приходится слышать довольно часто. Некоторые идут дальше и делают утверждение, что по-настоящему безопасный процесс всегда будет неудобен, а значит, доступен только специалистам. Мне такой подход кажется в корне неверным.

Безопасность — это масс-маркет. Нельзя быть уверенным в безопасности своих соцсетей, если у ваших друзей пароль qwerty: злоумышленник напишет вам от их имени, и в опасности будут уже ваши средства. Соответственно, и безопасные способы хранения паролей (как и решения других задач) должны быть доступны среднему пользователю.

Постепенно на мобильные и веб-приложения ложится всё больше ответственности: у всех в смартфонах банковские приложения, а у кого-то и криптокошельки. Мы можем предотвратить дурацкие и обидные потери средств, только если изначально будем думать о безопасности и удобстве как вещах взаимодополняющих. Неудобный процесс не может быть безопасен, потому что пользователь не будет ему следовать.

Автор: Иван Иваницкий, ведущий аналитик Solar appScreener
Источник: https://habr.com/ru/company/solarsecurity/blog/486966/


Интересные статьи

Интересные статьи

Будучи разработчиком и внедренцем более 25 лет, с некоторых пор, стал наблюдать тенденцию ухода работодателя и вообще руководства от ответственности при начислении заработной платы сотруд...
Технический директор Борис Горячев рассказывает, как «Медуза» работала над ним целый год и почему оно написано на Flutter 12 мая состоялся релиз новых мобильных приложений «Медузы» — почти через...
Язык программирования Ада родился в середине 1970-х, когда министерство обороны США и министерство обороны Британии решили заменить сотни специализированных языков программирования для встрое...
Несмотря на то, что “в коробке” с Битриксом уже идут модули как для SOAP (модуль “Веб сервисы” в редакции “Бизнес” и старше), так и для REST (модуль “Rest API” во всех редакциях, начиная с...
  Действительно, эксперты в сфере кибербезопасности защищают деньги, данные, репутацию компаний, их сотрудников и пользователей. Гордиться есть чем. Тем не менее, о тех, кто защищает нашу с ва...