Faraday - это уровень абстракции библиотеки HTTP-клиентов, который обеспечивает общий интерфейс для многих адаптеров. До 2.14.1 метод build…
Faraday - это уровень абстракции библиотеки HTTP-клиентов, который обеспечивает общий интерфейс для многих адаптеров. До 2.14.1 метод build_exclusive_url от Faraday (в lib/faraday/connection.rb) использует URI#merge Руби, чтобы объединить базовый URL-адрес соединения с поставляемым пользователем путем. Согласно RFC 3986, протокол-относительные URL-адреса (например, //evil.com/path) рассматриваются как ссылки на сетевой путь, которые переопределяют компонент хостинг/авторитет базового URL-адреса. Это означает, что если какое-либо приложение пропускает контролируемый пользователем ввод в Faraday's get(), post(), build_url() или другие методы запроса, злоумышленник может предоставить протокол-относительный URL, такой как //attacker.com/endpoint, чтобы перенаправить запрос на произвольный хост, что позволяет подделке запроса на серверную сторону (SSRF). Эта уязвимость зафиксирована в пункте 2.14.1.
Веб-сервер получает URL или аналогичный запрос от вышестоящего компонента и извлекает содержимое по этому URL, однако не обеспечивает в достаточной мере, что запрос направляется к ожидаемому адресату.
https://cwe.mitre.org/data/definitions/918.html →Открыть в коллекции CWE →Нет описания в исходных данных.
https://capec.mitre.org/data/definitions/664.html →Открыть в коллекции CAPEC →| Продукт | Вендор | Статус |
|---|---|---|
| Отслеживается | ||
| ruby-faraday | Отслеживается | |
| ruby-faraday | Отслеживается | |
| ruby-faraday | Отслеживается | |
| ruby-faraday | Отслеживается | |
| faraday | * | Отслеживается |