Уязвимость неправильной аутентификации в ash-проекте ash_authentication_oauth2_server позволяет неаутентифицированному злоумышленнику регистрировать клиентов OAuth, даже если динамическая регистрация клиентов защищена токеном первоначального доступа.
solve_secret/3 в AshAuthentication.Oauth2Server (достигнутый через __resolve_secret__!) обрабатывал любой возврат, кроме {:ok, _} или :error от настроенного поставщика секретов {module, function, args} или 2-arity-function, как действительный секрет, оборачивая nil, false или "" как {:ok, value}. Когда Initial_access_token разрешается в такое пустое значение, POST /oauth/register сравнивает представленный токен носителя с ним, и сравнение проходит без предоставления токена, поэтому регистрация открыта, хотя она была настроена как закрытая. То же самое открытие при сбое затронуло и другие разрешенные секреты, такие как Signing_secret.
Эта проблема затрагивает ash_authentication_oauth2_server: с 0.1.0 до 0.3.1.
Показать оригинальное описание (EN)
Improper Authentication vulnerability in ash-project ash_authentication_oauth2_server allows an unauthenticated attacker to register OAuth clients even when Dynamic Client Registration is gated by an initial access token. resolve_secret/3 in AshAuthentication.Oauth2Server (reached through __resolve_secret__!) treated any return other than {:ok, _} or :error from a configured {module, function, args} or 2-arity-function secret provider as a valid secret, wrapping nil, false, or "" as {:ok, value}. When the initial_access_token resolves to such an empty value, POST /oauth/register compares the presented bearer token against it and the comparison passes with no token supplied, so registration is open although it was configured closed. The same fail-open affected other resolved secrets such as signing_secret. This issue affects ash_authentication_oauth2_server: from 0.1.0 before 0.3.1.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Ash-Project Ash_Authentication_Oauth2_Server
cpe:2.3:a:ash-project:ash_authentication_oauth2_server:*:*:*:*:*:*:*:*
|
0.1.0
|
0.3.1
|