Каждый раз, когда используется аутентификация по имени пользователя / паролю, общепринятым является защита транспорта этих данных с использованием шифрования (SSL, HTTPS и т. Д.). Но это оставляет конечные точки потенциально уязвимыми.
Реально, какой риск более высокого уровня вторжения?
Транспортный уровень: Скомпрометирован из-за прослушивания беспроводных пакетов, злонамеренного прослушивания и т. Д.
Транспортные устройства: Риски включают интернет-провайдеров и магистральных интернет-операторов, перехватывающих данные.
Устройство конечного пользователя: Уязвимо для программ-шпионов, клавиатурных шпионов, серфинга через плечо и т. Д.
Удаленный сервер: Множество неконтролируемых уязвимостей, включая злонамеренные операторы, взломы, приводящие к краже данных, физическому хищению серверов, резервному копированию в небезопасных местах и многому другому.
Моя внутренняя реакция заключается в том, что, хотя транспортный уровень относительно легко защитить с помощью SSL, риски в других областях значительно выше, особенно в конечных точках. Например, дома мой компьютер подключается напрямую к маршрутизатору; оттуда это идет прямо к моим маршрутизаторам интернет-провайдеров и в Интернет. Я бы оценил риски на транспортном уровне (как программные, так и аппаратные) от низкого до несуществующего. Но какую безопасность имеет сервер, к которому я подключен? Они были взломаны? Собирает ли оператор имена пользователей и пароли, зная, что большинство людей используют ту же информацию на других сайтах? Точно так же мой компьютер был взломан вредоносным ПО? Это кажется гораздо большим риском.
У меня такой вопрос: должен ли я волноваться, если служба, которую я использую или разрабатываю, не использует SSL? Конечно, это низко висящий фрукт, но над ним гораздо больше фруктов.