Обновить

Комментарии 3

одноразовый код всего из четырех цифр легко взломать перебором всех возможных комбинаций — от 0000 до 9999

...

уже после тридцати неудачных попыток ввода, блокируя IP-адрес на одну минуту.

Кроме того, сам одноразовый код действителен всего десять минут

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

С полным комплексом мер перебрать уже гораздо сложнее. Побочный эффект - возможность lockout attack, то есть когда злоумышленник не пытается получить доступ к аккаунту жертвы, а просто не позволяет ей залогиниться.

Причем если заставить атакующего использовать сессионную куку, то массовая смена ip сразу говорит о том, что это попытка атаки перебором и тогда его (атакующего) можно водить за нос очень долго, выдавая ему в ответ рандомные ошибки и тому подобную чепуху. Он устанет формализовывать это АПИ.

X-Heeiz-Api-Key

А вот и приложение, которое автор случайно раскрыл в статье 🤓

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации