Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-8fp4-rp6c-5gcv

Опубликовано: 02 дек. 2021
Источник: github
Github: Прошло ревью
CVSS3: 7.5

Описание

Path Traversal in com.linecorp.armeria:armeria

Impact

An attacker can access an Armeria server's local file system beyond its restricted directory by sending an HTTP request whose path contains %2F (encoded /), such as /files/..%2Fsecrets.txt, bypassing Armeria's path validation logic.

Patches

Armeria 1.13.4 or above contains the hardened path validation logic that handles %2F properly.

Workarounds

This vulnerability can be worked around by inserting a decorator that performs an additional validation on the request path, e.g.

Server .builder() .serviceUnder( "/files", FileService .of(...) .decorate((delegate, ctx, req) -> { String path = req.headers().path(); if (path.contains("%2f") || path.contains("%2F")) { return HttpResponse.of(HttpStatus.BAD_REQUEST); } return delegate.serve(ctx, req); }) ) .build()

For more information

If you have any questions or comments about this advisory:

Credits

This vulnerability was originally reported by Abdallah Zaher (elcayser-0x0a).

Пакеты

Наименование

com.linecorp.armeria:armeria

maven
Затронутые версииВерсия исправления

>= 1.12.0, < 1.13.4

1.13.4

EPSS

Процентиль: 73%
0.00754
Низкий

7.5 High

CVSS3

Дефекты

CWE-22

Связанные уязвимости

CVSS3: 7.5
nvd
около 4 лет назад

Armeria is an open source microservice framework. In affected versions an attacker can access an Armeria server's local file system beyond its restricted directory by sending an HTTP request whose path contains `%2F` (encoded `/`), such as `/files/..%2Fsecrets.txt`, bypassing Armeria's path validation logic. Armeria 1.13.4 or above contains the hardened path validation logic that handles `%2F` properly. This vulnerability can be worked around by inserting a decorator that performs an additional validation on the request path.

EPSS

Процентиль: 73%
0.00754
Низкий

7.5 High

CVSS3

Дефекты

CWE-22