Improper Access Control Affecting silverstripe/graphql package, versions >=4.0.0, <4.3.7>=5.0.0, <5.1.3


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.05% (22nd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Improper Access Control vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-PHP-SILVERSTRIPEGRAPHQL-6184771
  • published25 Jan 2024
  • disclosed23 Jan 2024
  • creditUnknown

Introduced: 23 Jan 2024

CVE-2023-44401  (opens in a new tab)
CWE-284  (opens in a new tab)

How to fix?

Upgrade silverstripe/graphql to version 4.3.7, 5.1.3 or higher.

Overview

silverstripe/graphql is a GraphQL server for SilverStripe models and other data.

Affected versions of this package are vulnerable to Improper Access Control via the pagination process in GraphQL queries. An attacker can access ORM data without the required canView permissions by exploiting the way records are fetched and displayed in paginated query results.

Notes:

  1. This is only exploitable if the total number of ORM records is greater than the number of records per page, or if a limit is applied to the query, even if not explicitly paginated.

  2. This also affects GraphQL queries which have a limit applied, even if the query isn’t paginated per se.

  3. This has been fixed by ensuring no new records are pulled in from the database after performing canView permission checks for each page of results and may result in some pages in your query results having less than the maximum number of records per page even when there are more pages of results.

CVSS Scores

version 3.1