Improper Input Validation Affecting silverstripe/graphql package, versions >=3.2.0, <3.2.4


Severity

Recommended
0.0
medium
0
10

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

Threat Intelligence

EPSS
0.08% (38th 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 Input Validation vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-PHP-SILVERSTRIPEGRAPHQL-584900
  • published16 Jul 2020
  • disclosed16 Jul 2020
  • creditMatthias Leutenegger, CEO, Syntro GmbH and Rob Ingram

Introduced: 16 Jul 2020

CVE-2020-6165  (opens in a new tab)
CWE-20  (opens in a new tab)

How to fix?

Upgrade silverstripe/graphql to version 3.2.4 or higher.

Overview

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

Affected versions of this package are vulnerable to Improper Input Validation. The automatic permission checking mechanism in the silverstripe/graphql module does not provide complete protection against lists that are limited (e.g. through pagination), resulting in records that should fail the permission check being added to the final result set.

GraphQL endpoints are configured by default through the CMS (e.g. for assets), but the admin/graphql endpoint is access protected by default. This limits the vulnerability to users with access to the CMS, but still applies when those authenticated users have limited permissions (e.g. where viewing records exposed through admin/graphql require administrator permissions).

Where custom GraphQL endpoints have been be configured for a specific implementation (usually under /graphql), this vulnerability could also be exploited through unauthenticated requests.

This vulnerability only applies for reading records it does not allow unauthorised changing of records.

References

CVSS Scores

version 3.1