Откройте знакомый сайт через VPN и получите дополнительную проверку, и соблазнительное объяснение — туннель обнаружен. Что-то действительно обнаружили, но это были не вы. Сайт оценил набор сигналов, один из которых — адрес источника, и этот адрес разделяют с незнакомцами, которые, возможно, минуту назад создавали неудачные попытки входа. Читать это решение как приговор вашему соединению — значит неверно понимать, для чего нужна оценка.

Что адрес источника может и чего не может решить

IP-адрес описывает путь через сеть в определённый момент. Он не идентифицирует ни человека, ни устройство, ни даже одну учётную запись, а при NAT операторского уровня или загруженном пуле VPN может одновременно представлять тысячи несвязанных сессий. Сайт, который относится к адресу как к личности, на самом деле относится к нему как к репутации, а это статистическое утверждение, а не факт.

Два человека могут делить один выход и давать противоположные доказательства: один успешно входит со вторым фактором, другой пробует сорок паролей. Адрес одинаковый, поэтому любое правило, основанное только на адресе, не может их различить, и какая бы реакция ни сработала, она применяется к обоим.

Это не аргумент в пользу игнорирования адресов. Это аргумент в пользу того, чтобы помнить, что измеряет сигнал, потому что большая часть неожиданного поведения вокруг входов через VPN возникает из-за применения контроля на неверном уровне детализации, а не из-за неверного наблюдения.

Почему блокировка выхода наказывает посторонних

Блокировка на уровне адреса дешева во внедрении и дорога в наведении. Её радиус — каждая сессия за этим адресом, и поэтому поведение общих адресов и NAT имеет свою историю в эксплуатационной документации: те же рассуждения появляются в работе IETF об общих адресах источника и побочных эффектах фильтрации по адресу.

SignalWhat it provides evidence aboutWhat it cannot settle
Source address and its reputationThe network path, and how that path behaved recently for othersWhich account or person is behind the request
Authenticator resultWhether the account claim was proved at the required strengthWhether the account's owner initiated it
Request timing and volumeWhether the pattern looks automated or burst-likeWhether the intent was malicious or a shared client
Application event historyWhat this account has done while signed inAnything about requests that never authenticated

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

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

Поместите решение туда, где находятся доказательства

Контроли на уровне учётной записи следуют за учётной записью через адреса, что соответствует сущности, которая вам действительно важна. Ограничение скорости, периоды ожидания после повторных сбоев и поэтапная аутентификация для чувствительных действий действуют на учётную запись или действие, а не на сетевой путь. Это лучше соответствует сущности, которую вы действительно защищаете. Это также устраняет стимул злоумышленника искать свежий адрес выхода.

Руководство NIST по аутентификации рассматривает эти данные как входы оценки риска и перечисляет среди сигналов адрес, геолокацию и время запроса, и это именно та рамка, которую стоит заимствовать: сигнал информирует решение, но не заменяет аутентификатор. Читайте этот список как входы, а не как меню того, что нужно запретить. Аутентификатор по-прежнему выполняет доказательство, а остальные сигналы лишь решают, сколько трения вокруг него создать.

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

Как выглядит справедливая политика снаружи

Запишите, какое решение поддерживает каждый контроль, и проверьте, что уровень детализации контроля совпадает. Контроли адреса отвечают на вопросы о трафике из сети; контроли учётной записи отвечают на вопросы об учётной записи; события приложения отвечают на вопросы о поведении после аутентификации. Политика, называющая все три, поддаётся аудиту, а называющая только трафик VPN — нет.

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

Принимать подключения VPN и обеспечивать контроль злоупотреблений — совместимые цели. Версия, которая работает, рассматривает адрес источника как один из нескольких входов, применяет самый узкий контроль, соответствующий доказательствам, и оставляет честный путь для человека, которого классифицировали неверно. Версия, которая терпит неудачу, рассматривает адрес как подозреваемого и называет это политикой.

Похожие статьи