fast-uri — это анализатор URI для Node.js. Он канонизирует хост в его ASCII-форме только тогда, когда входные данные содержат явную схему, поэтому ссылка относительно схемы, такая как хост, которому предшествуют две косые черты, возвращается с его хостом дословно и без набора ошибок. В результате собственные точки входа fast-uri не совпадают друг с другом: синтаксический анализ, разрешение, нормализация и равенство могут давать разные хосты для одного и того же ввода в зависимости только от того, записана ли схема, а равные могут возвращать противоположные вердикты для одной и той же пары хостов.
Приложение, которое извлекает хост с помощью fast-uri для проверки его на соответствие списку политик, а затем разрешает одну и ту же ссылку, может принять решение на одном хосте, в то время как пункт назначения — на другом, что позволяет путать хосты и обходить политику. Затронутые версии: от 2.4.2 до 2.4.5, но не включая, от 3.1.3 до 3.1.6, но не включая, и от 4.0.1 до 4.1.3, но не включая. Проблема исправлена в версиях 2.4.5, 3.1.6 и 4.1.3, которые канонизируют хост последовательно по всему пути разрешения.
Пользователям следует перейти на исправленную версию.
Показать оригинальное описание (EN)
fast-uri is a URI parser for Node.js. It canonicalizes a host to its ASCII form only when the input carries an explicit scheme, so a scheme-relative reference such as a host preceded by two slashes is returned with its host verbatim and no error set. As a result fast-uri's own entry points disagree with each other: parse, resolve, normalize, and equal can yield different hosts for the same input depending only on whether a scheme is written out, and equal can return opposite verdicts for the same pair of hosts. An application that extracts a host with fast-uri to check it against a policy list and then resolves the same reference can make its decision on one host while the destination is another, enabling host confusion and policy bypass. The affected versions are 2.4.2 up to but not including 2.4.5, 3.1.3 up to but not including 3.1.6, and 4.0.1 up to but not including 4.1.3. The issue is fixed in 2.4.5, 3.1.6, and 4.1.3, which canonicalize the host consistently across the resolve path. Users should upgrade to a patched version.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 3
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Openjsf Fast-Uri
cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:*
|
2.4.2
|
2.4.5
|
|
Openjsf Fast-Uri
cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:*
|
3.1.3
|
3.1.6
|
|
Openjsf Fast-Uri
cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:*
|
4.0.1
|
4.1.3
|