GitHub Advisoryadvisory · Packagist
GHSA-v23w-pppm-jh66 Silverstripe GraphQL has DDOS Vulnerability due to lack of protection against recursive queries
HIGH
Official page ↗
- Aliases
- CVE-2023-40180
- Ecosystem
- Packagist
- Packages
- silverstripe/graphql
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-400
- Reviewed
- 2023-10-17
Affected packages
• Packagist silverstripe/graphql: >= 3.0.0, < 3.8.2 → fixed in 3.8.2
• Packagist silverstripe/graphql: >= 4.0.0, < 4.1.3 → fixed in 4.1.3
• Packagist silverstripe/graphql: >= 4.2.0, < 4.2.5 → fixed in 4.2.5
• Packagist silverstripe/graphql: >= 4.3.0, < 4.3.4 → fixed in 4.3.4
• Packagist silverstripe/graphql: >= 5.0.0, < 5.0.3 → fixed in 5.0.3
Description
Impact
An attacker could use a recursive graphql query to execute a Distributed Denial of Service attack (DDOS attack) against a website. This mostly affects websites with publicly exposed graphql schemas.
If your Silverstripe CMS project does not expose a public facing graphql schema, a user account is required to trigger the DDOS attack. If your site is hosted behind a content delivery network (CDN), such as Imperva or CloudFlare, this may further mitigate the risk.
The fix includes some new configuration options which you might want to tweak for your project, based on your own requirements. See the documentation in the references for details.
Patches
Patched in 3.8.2, 4.1.3, 4.2.5, 4.3.4, 5.0.3
References
• CVE-2023-40180 on silverstripe.org
• Documentation about protection against recursive or complex queries for silverstripe/graphql 4.x/5.x
• Documentation about protection against recursive or complex queries for silverstripe/graphql 3.x
Reported by
Jason Nguyen from phew (https://phew.co.nz/)
Related
Alias · CVE (1)
- CVE-2023-40180 silverstripe-graphql is a package which serves Silverstripe data in GraphQL representations. vulnerability
Weakness · CWE (1)
- CWE-400 Uncontrolled Resource Consumption weakness
References
- https://github.com/silverstripe/silverstripe-graphql/security/advisories/GHSA-v23w-pppm-jh66 web
- https://nvd.nist.gov/vuln/detail/CVE-2023-40180 advisory
- https://github.com/silverstripe/silverstripe-graphql/commit/f6d5976ec4608e51184b0db1ee5b9e9a99d2501c web
- https://docs.silverstripe.org/en/developer_guides/graphql/security_and_best_practices/recursive_or_complex_queries web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/silverstripe/graphql/CVE-2023-40180.yaml web
- https://github.com/silverstripe/silverstripe-graphql package
- https://github.com/silverstripe/silverstripe-graphql/tree/3.8#recursive-or-complex-queries web
- https://www.silverstripe.org/download/security-releases/CVE-2023-40180 web