Hono — это платформа веб-приложений, обеспечивающая поддержку любой среды выполнения JavaScript. До версии 4.12.4 при использовании ownStatic вместе с защитой промежуточного программного обеспечения на основе маршрутов (например, app.use('/admin/*', ...)) несогласованное декодирование URL-адресов позволяло получать доступ к защищенным статическим ресурсам без авторизации. Маршрутизатор использовал decodeURI, а ownStatic использовал decodeURIComponent.
Это несоответствие позволило путям, содержащим закодированные косые черты (%2F), обойти защиту промежуточного программного обеспечения, сохраняя при этом предполагаемый путь к файловой системе. Эта проблема исправлена в версии 4.12.4.
Показать оригинальное описание (EN)
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using serveStatic together with route-based middleware protections (e.g. app.use('/admin/*', ...)), inconsistent URL decoding allowed protected static resources to be accessed without authorization. The router used decodeURI, while serveStatic used decodeURIComponent. This mismatch allowed paths containing encoded slashes (%2F) to bypass middleware protections while still resolving to the intended filesystem path. This issue has been patched in version 4.12.4.
Характеристики атаки
Последствия
Строка CVSS v3.1