TGViewer
Веб-страница Веб-страница @tproger_web · 22.4K subscribers
Post #6567 1.22K
Атрибут maxlength на форме сброса пароля ломал авторизацию клиенту Vanguard

Разработчик Танин Нанакорн год не мог войти в аккаунт брокера Vanguard через браузер: он несколько раз за год сбрасывал пароль и заходил по QR-коду с телефона, пока не изучил верстку страницы сброса.

В форме стоял атрибут maxlength="20". Менеджер паролей генерировал ключ длиннее 20 символов, а Chrome при вставке в оба поля молча обрезал его до 20 знаков. Форма сброса принимала обрезанную строку, и новым паролем стала обрезанная строка.

На странице же входа maxlength отсутствовал: туда вставлялась полная строка, которую сервер отклонял. Использовать maxlength на паролях опасно: проверять длину нужно в JS или на бэкенде с сообщением об ошибке, а не срезать хвост ввода в браузере.

@tproger_web
  • 🤔 3
  • ❤ 2
  • 👍 1
More from @tproger_web
  1. Oct 5, 2026Как читать падение доли сайтов с хорошим INP в CrUX В августе 2026 года доля сайтов с хоро…
  2. Oct 5, 2026В Streamux реализовали HTTP/2-сервер на Go по RFC 9113 Разработчик собрал сервер с обработ…
  3. Oct 5, 2026Как замечать проблемы доступности ещё на этапе макета Даже аккуратный интерфейс исключает…
  4. Oct 4, 2026Post #6572
  5. Oct 4, 2026Как хранить прогресс просмотра в веб-плеере без бэкенда В разборе личного проекта HikariPl…
  6. Oct 4, 2026Когда маркетплейсу хватает Vanilla JavaScript и PWA Школьный маркетплейс Aksara-Mart собра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →