Salvo — это веб-фреймворк на Rust. Версии с 0.39.0 по 0.89.2 имеют уязвимость обхода пути и контроля доступа в компоненте salvo-proxy. Эта уязвимость позволяет внешнему злоумышленнику, не прошедшему аутентификацию, обойти ограничения маршрутизации прокси-сервера и получить доступ к непредусмотренным внутренним путям (например, к защищенным конечным точкам или административным панелям мониторинга).
Эта проблема связана с функцией encode_url_path, которая не может нормализовать последовательности "../" и непреднамеренно пересылает их дословно на вышестоящий сервер, не перекодируя "." характер. Версия 0.89.3 содержит патч.
Показать оригинальное описание (EN)
Salvo is a Rust web framework. Versions 0.39.0 through 0.89.2 have a Path Traversal and Access Control Bypass vulnerability in the salvo-proxy component. The vulnerability allows an unauthenticated external attacker to bypass proxy routing constraints and access unintended backend paths (e.g., protected endpoints or administrative dashboards). This issue stems from the encode_url_path function, which fails to normalize "../" sequences and inadvertently forwards them verbatim to the upstream server by not re-encoding the "." character. Version 0.89.3 contains a patch.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Salvo Salvo
cpe:2.3:a:salvo:salvo:*:*:*:*:*:rust:*:*
|
0.39.0
|
0.89.3
|