---
id: CVE-2026-81921
title: >-
  Concrete CMS 8.5.3 through 9.5.2 enabled the OAuth 2.0 refresh-token grant
  using the unmodified upstream League grant, which issued new access tokens
  from a valid refresh token without re-checking the associated account's active
  status
summary: >-
  Concrete CMS 8.5.3 through 9.5.2 enabled the OAuth 2.0 refresh-token grant
  using the unmodified upstream League grant, which issued new access tokens
  from a valid refresh token without re-checking the associated account's active
  status. …
severity: medium
cvss: 5.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N'
cwe:
  - CWE-862
vendor: concretecms
product: concrete_cms
affected:
  - 'concrete_cms >= 8.5.3, < 9.5.3'
patched:
  - concrete_cms 9.5.3
published: '2026-09-15'
updated: '2026-09-18'
sourceUpdated: '2026-09-18T15:29:38.830'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-81921'
references:
  - url: >-
      https://documentation.concretecms.org/developers/introduction/version-history/953-release-notes
    label: ff5b8ace-8b95-4078-9743-eac1ca5451de
tags:
  - nvd
  - cve.org
  - score-dispute
epss: 0.00238
epssPercentile: 0.13364
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-09-15T19:28:23.386520Z'
scores:
  nvd: 5.4
  cna: 2.3
ingestedAt: '2026-09-15T19:42:58.809Z'
---

## Overview

Concrete CMS 8.5.3 through 9.5.2 enabled the OAuth 2.0 refresh-token grant using the unmodified upstream League grant, which issued new access tokens from a valid refresh token without re-checking the associated account's active status. A user who obtained a refresh token while active could therefore continue to mint valid access tokens after being deactivated or suspended (uIsActive=0), so deactivating an account did not revoke its API access. The Concrete CMS security team gave this vulnerability a CVSS v4.0 score of 2.3 with vector CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:L/VA:L/SC:L/SI:L/SA:L. Thanks sh4d0byss for reporting.

## Affected

- `concrete_cms >= 8.5.3, < 9.5.3`

## Remediation

Upgrade past the affected range:

- `concrete_cms 9.5.3`
