Security advisory
SilverStripe 4.5.0 allows attackers to read certain records that should not have been placed into a result set. This affects silverstripe/recipe-cms. 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 have failed a permission check being added to the final result set. GraphQL endpoints are configured by default (e.g., for assets), but the admin/graphql endpoint is access protected by default. This limits the vulnerability to all authenticated users, including those with limited permissions (e.g., where viewing records exposed through admin/graphql requires administrator permissions). However, if custom GraphQL endpoints have been configured for a specific implementation (usually under /graphql), this vulnerability could also be exploited through unauthenticated requests. This vulnerability only applies to reading records; it does not allow unauthorised changing of records.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2020-6165
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 04:17 UTC · Revision 1
Source evidence
SilverStripe 4.5.0 allows attackers to read certain records that should not have been placed into a result set. This affects silverstripe/recipe-cms. 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 have failed a permission check being added to the final result set. GraphQL endpoints are configured by default (e.g., for assets), but the admin/graphql endpoint is access protected by default. This limits the vulnerability to all authenticated users, including those with limited permissions (e.g., where viewing records exposed through admin/graphql requires administrator permissions). However, if custom GraphQL endpoints have been configured for a specific implementation (usually under /graphql), this vulnerability could also be exploited through unauthenticated requests. This vulnerability only applies to reading records; it does not allow unauthorised changing of records.
osv:CVE-2020-6165
Complete source record
{
"id": "a4bae4083ea6b2860e0c56e6c14309d03673882ac3dc48fe9c538b2cda5db962",
"url": "https://osv.dev/vulnerability/CVE-2020-6165",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2020-6165",
"summary": "SilverStripe 4.5.0 allows attackers to read certain records that should not have been placed into a result set. This affects silverstripe/recipe-cms. 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 have failed a permission check being added to the final result set. GraphQL endpoints are configured by default (e.g., for assets), but the admin/graphql endpoint is access protected by default. This limits the vulnerability to all authenticated users, including those with limited permissions (e.g., where viewing records exposed through admin/graphql requires administrator permissions). However, if custom GraphQL endpoints have been configured for a specific implementation (usually under /graphql), this vulnerability could also be exploited through unauthenticated requests. This vulnerability only applies to reading records; it does not allow unauthorised changing of records.",
"evidence": "osv:CVE-2020-6165",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2020-6165",
"aliases": [
"BIT-silverstripe-2020-6165",
"CVE-2020-6165",
"GHSA-589q-75r3-mfq4"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/silverstripe/silverstripe-cms",
"type": "GIT",
"events": [
{
"introduced": "d8915115f837633fb9183bbd66b05a2238606e19"
},
{
"fixed": "dd0163ae000a85e6bf76b96b76c261a211b05047"
},
{
"introduced": "1b50d59aba157eb05f102a19e41a74a94a2522f4"
},
{
"fixed": "a5444c3eeba6b6288b246e0e7e65594f2b98c18b"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.4"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.2.5"
},
{
"fixed": "3.3.0"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"3.2.4-rc1",
"3.2.1",
"3.2.1-rc2",
"3.2.1-rc1",
"3.2.0-rc2",
"3.2.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-6165.json"
}
},
{
"ranges": [
{
"repo": "https://github.com/silverstripe/silverstripe-framework",
"type": "GIT",
"events": [
{
"introduced": "0092792568fb8a33674669aa200c7c81b163a365"
},
{
"fixed": "cfb3d96a0352d3de96d05fabb8f3980129df6355"
},
{
"introduced": "351bf6cfe4cf54a883087921ddc5d4cc8dd0805e"
},
{
"fixed": "0ec021dac89590fd103696737a1d65a3c543786e"
},
{
"introduced": "f75094abcd8ff29ece4bca05a297fda106e3ba89"
},
{
"fixed": "10c32aaa28ceff3f90cd72e3f223b2d84dbeee28"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.4"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "3.2.5"
},
{
"fixed": "3.3.0"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "4.5.0"
},
{
"fixed": "4.5.3"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-6165.json"
}
}
],
"modified": "2026-10-24T10:30:16.697498208Z",
"provider": "osv",
"references": [
"https://www.silverstripe.org/download/security-releases/CVE-2020-6165"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:a:silverstripe:silverstripe:*:*:*:*:*:*:*:*"
],
"vendor_product": "silverstripe:silverstripe",
"extracted_events": [
{
"range": [
{
"introduced": "4.5.0"
},
{
"fixed": "4.5.3"
}
],
"source": "CPE_RANGE"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2020-6165",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 429398,
"published_at": "2020-07-15T21:15:13.583+00:00"
}