Parse Server — это серверная часть с открытым исходным кодом, которую можно развернуть в любой инфраструктуре, поддерживающей Node.js. До версий 9.6.0-alpha.21 и 8.6.45 неаутентифицированный злоумышленник мог привести к сбою процесса сервера синтаксического анализа, отправив один запрос с глубоко вложенными операторами условий запроса. Это завершает работу сервера и отказывает в обслуживании всем подключенным клиентам.
Начиная с версий 9.6.0-alpha.21 и 8.6.45, ограничение глубины вложения операторов условий запроса было добавлено через параметр сервера `requestComplexity.queryDepth`. По умолчанию эта опция отключена, чтобы избежать критических изменений. Чтобы смягчить проблему, обновите ее и установите для параметра значение, подходящее для вашего приложения.
Никаких известных обходных путей не существует.
Показать оригинальное описание (EN)
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.6.0-alpha.21 and 8.6.45, an unauthenticated attacker can crash the Parse Server process by sending a single request with deeply nested query condition operators. This terminates the server and denies service to all connected clients. Starting in version 9.6.0-alpha.21 and 8.6.45, a depth limit for query condition operator nesting has been added via the `requestComplexity.queryDepth` server option. The option is disabled by default to avoid a breaking change. To mitigate, upgrade and set the option to a value appropriate for your app. No known workarounds are available.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 22
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:*:*:*:*:*:node.js:*:*
|
— |
8.6.45
|
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:*:*:*:*:*:node.js:*:*
|
9.0.0
|
9.6.0
|
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha1:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha10:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha11:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha12:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha13:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha14:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha15:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha16:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha17:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha18:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha19:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha2:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha20:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha3:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha4:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha5:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha6:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha7:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha8:*:*:*:node.js:*:*
|
— | — |
|
Parseplatform Parse-Server
cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha9:*:*:*:node.js:*:*
|
— | — |