Apollo Server — это сервер GraphQL с открытым исходным кодом, соответствующий спецификациям, который совместим с любым клиентом GraphQL, включая клиент Apollo. В версиях от 2.0.0 до 3.13.0, от 4.2.0 до 4.13.0 и от 5.0.0 до 5.4.0 конфигурация startStandaloneServer по умолчанию из @apollo/server/standalone уязвима для атак типа «отказ в обслуживании» (DoS) через специально созданные тела запросов с экзотическими кодировками набора символов. Эта проблема не затрагивает пользователей, которые используют @apollo/server в качестве зависимости для пакетов интеграции, таких как @as-integrations/express5 или @as-integrations/next, а только прямое использование startStandaloneServer.
Показать оригинальное описание (английский)
Apollo Server is an open-source, spec-compliant GraphQL server that's compatible with any GraphQL client, including Apollo Client. In versions from 2.0.0 to 3.13.0, 4.2.0 to before 4.13.0, and 5.0.0 to before 5.4.0, the default configuration of startStandaloneServer from @apollo/server/standalone is vulnerable to denial of service (DoS) attacks through specially crafted request bodies with exotic character set encodings. This issue does not affect users that use @apollo/server as a dependency for integration packages, like @as-integrations/express5 or @as-integrations/next, only direct usage of startStandaloneServer.
Матрица атаки
СТРОКА CVSS ВЕКТОРА
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H