Passwords and FIDO2 Are Meant To Be Secret: A Practical Secure Authentication Channel for Web Browsers
Gautam, Yadav, Smith et al.
Password managers provide significant security benefits to users. However, malicious client-side scripts and browser extensions can steal passwords after the manager has autofilled them into the web page. In this paper, we extend prior work by Stock and Johns, showing how password autofill can be hardened to prevent these local attacks. We implement our design in the Firefox browser and conduct experiments demonstrating that our defense successfully protects passwords from XSS attacks and malicious extensions. We also show that our implementation is compatible with 97% of the Alexa top 1000 websites. Next, we generalize our design, creating a second defense that prevents recently discovered local attacks against the FIDO2 protocols. We implement this second defense into Firefox, demonstrating that it protects the FIDO2 protocol against XSS attacks and malicious extensions. This defense is compatible with all websites, though it does require a small change (2-3 lines) to web servers implementing FIDO2.
academic
Пароли и FIDO2 должны оставаться секретом: практический защищённый канал аутентификации для веб-браузеров
Менеджеры паролей обеспечивают пользователям значительные преимущества в безопасности, однако вредоносные клиентские скрипты и расширения браузера могут перехватывать пароли после их автоматического заполнения менеджером в веб-форму. В данной работе авторы расширяют предыдущие исследования Stock и Johns, демонстрируя, как укрепить автоматическое заполнение паролей для предотвращения этих локальных атак. Авторы реализовали свой дизайн в браузере Firefox и провели эксперименты, доказывающие, что предложенная защита успешно предохраняет пароли от атак XSS и вредоносных расширений. Исследование также показывает совместимость реализации с 97% топ-1000 сайтов Alexa. Кроме того, авторы обобщили дизайн и создали второй механизм защиты для предотвращения недавно обнаруженных локальных атак на протокол FIDO2.
Менеджеры паролей имеют явную уязвимость в безопасности: пароли уязвимы для перехвата в период между автоматическим заполнением в браузер и передачей на веб-сайт. Это включает перехват из следующих источников угроз:
Веб-трекеры: могут непреднамеренно собирать информацию о пароле
Атаки инъекций (например, XSS): вредоносные скрипты могут напрямую читать пароли из DOM
Вредоносные расширения браузера: расширения с надлежащими разрешениями могут получать доступ к содержимому веб-страниц и сетевым запросам
Скомпрометированные библиотеки JavaScript: внедрение вредоносного кода в результате атак на цепь поставок
Эти атаки относительно распространены; исследования показывают, что по крайней мере 2-3% популярных веб-сайтов содержат веб-трекеры, которые могут утечь пароли
Атаки XSS постоянно входят в топ-10 рисков безопасности веб-приложений по версии OWASP
Проблема вредоносных расширений браузера становится всё более серьёзной; в Chrome Web Store существуют тысячи расширений с достаточными разрешениями для проведения подобных атак
Stock и Johns предложили протокол защиты паролей на основе замены на случайные значения (nonce) десять лет назад, однако этот протокол несовместим с современным дизайном браузеров. Даже в браузере Firefox, где он работал в то время, соответствующая функциональность была быстро удалена, что препятствовало принятию протокола и развитию дальнейших исследований в этой области.
Реализация практического API замены паролей на основе nonce: модификация современного браузера для поддержки рабочей реализации протокола Stock и Johns
Расширение модели угроз: выявление и устранение угроз от вредоносных расширений браузера, не рассмотренных в исходном протоколе
Защищённый канал FIDO2: обобщение дизайна на протокол FIDO2 для защиты от недавно обнаруженных локальных атак
Проверка практического развёртывания: реализация в Firefox и оценка, демонстрирующая совместимость с 97% основных веб-сайтов
Разработать защищённый канал браузера, позволяющий менеджеру паролей безопасно передавать пароли на веб-сайт, не предоставляя доступ к фактическому содержимому пароля скриптам DOM или расширениям браузера.
Данная работа впервые предоставляет рабочую реализацию протокола Stock и Johns, заполняя пробел в исследованиях, существовавший в течение десяти лет, и расширяет защиту на протокол FIDO2.
Данная работа цитирует 47 соответствующих источников, включая в основном:
Исходную статью протокола замены на основе nonce Stock и Johns
Соответствующие исследования анализа безопасности менеджеров паролей
Эмпирические исследования угроз безопасности расширений браузера
Литературу по анализу безопасности протокола FIDO2
Исследования текущего состояния веб-трекеров и атак XSS
Общая оценка: Это статья системной безопасности с важной практической ценностью, которая успешно преобразовала теоретический дизайн в рабочую прототипную систему и подтвердила её эффективность посредством комплексной экспериментальной проверки. Работа не только решает важную проблему безопасности в реальном мире, но и открывает новые направления для будущих исследований. Несмотря на сохраняющиеся вызовы в развёртывании и совместимости, её технический вклад и практическая ценность делают её важным прогрессом в области безопасности браузеров.