Logto — это современная инфраструктура аутентификации с открытым исходным кодом для приложений SaaS и AI. До версии 1.41.0 черный список подадресов электронной почты Logto в packages/core/src/libraries/sign-in-experience/email-blocklist-policy.ts использовал домен, контролируемый злоумышленником, из входных данных электронной почты для создания subaddressingRegex, когда BlockSubaddressing был включен. Разрешающий emailRegEx принимал несколько знаков at и метасимволов регулярных выражений, поэтому POST /api/experience/verification/verification-code может привести к катастрофическому возврату в subaddressingRegex.test(email).
В результате задержка цикла событий может сделать аутентификацию, выдачу токенов, единый вход и административную консоль недоступными. Эта проблема исправлена в версии 1.41.0.
Показать оригинальное описание (EN)
Logto is the modern, open-source auth infrastructure for SaaS and AI apps. Prior to 1.41.0, Logto's email subaddressing blocklist in packages/core/src/libraries/sign-in-experience/email-blocklist-policy.ts used the attacker-controlled domain from email input to construct subaddressingRegex when blockSubaddressing was enabled. The permissive emailRegEx accepted multiple at signs and regular expression metacharacters, and POST /api/experience/verification/verification-code could therefore cause catastrophic backtracking in subaddressingRegex.test(email). The resulting event-loop stall could make authentication, token issuance, SSO, and the administrative console unavailable. This issue is fixed in version 1.41.0.
Характеристики атаки
Последствия
Строка CVSS v3.1