GHSA-32wx-4gxx-h48f: Flarum/tags Users Can Edit The Tags Vulnerability

MODERATE
CWE-639
Published
Advisory Summary

GHSA-32wx-4gxx-h48f is a MODERATE users can edit the tags vulnerability (CWE-639: Authorization Bypass Through User-Controlled Key) affecting Flarum/tags libraries in the Packagist ecosystem. The issue involves users can edit the tags of any discussion. Remediation is available by upgrading affected packages to version 0.1.0-beta.13.2.

GHSA-32wx-4gxx-h48f at a Glance

CVE Identifier N/A
GHSA Identifier GHSA-32wx-4gxx-h48f
Severity MODERATE
CVSS v3.1 Base Score N/A
CWE Classification CWE-639: Authorization Bypass Through User-Controlled Key
Affected Product Flarum/tags
Package Ecosystem Packagist
Published Date
Last Updated

How to Fix GHSA-32wx-4gxx-h48f

To remediate this vulnerability, upgrade all affected Flarum/tags dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

flarum/tags fixed: 0.1.0-beta.13.2
Upgrade flarum/tags to 0.1.0-beta.13.2
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for flarum/tags

How to Check if You Are Affected

To determine whether your application is affected by GHSA-32wx-4gxx-h48f, inspect your project dependencies for Flarum/tags:

inspect dependencies for flarum/tags

Analyze the terminal output to locate any version of Flarum/tags in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.1.0-beta.13.2), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-639: Authorization Bypass Through User-Controlled Key, where the system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data. In Flarum/tags, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

This advisory concerns a vulnerability which was patched and publicly released on October 5, 2020. ### Impact This vulnerability allowed any registered user to edit the tags of any discussion for which they have READ access using the REST API. Users were able to remove any existing tag, and add any tag in which they are allowed to create discussions. The chosen tags still had to match the configured Tags minimums and maximums. By moving the discussion to new tags, users were able to go around permissions applied to restricted tags. Depending on the setup, this can include publicly exposing content that was only visible to certain groups, or gain the ability to interact with content where such interaction was limited. The full impact varies depending on the configuration of permissions and restricted tags, and which community extensions are being used. All tag-scoped permissions offered by extensions are impacted by this ability to go around them. Forums that don't use restricted tags and don't use any extension that relies on tags for access control should not see any security impact. An update is still required to stop users from being able to change any discussion's tags. Forums that don't use the Tags extension are unaffected. ### Patches The fix will be available in version v0.1.0-beta.14 with Flarum beta 14. The fix has already been back-ported to Flarum beta 13 as version v0.1.0-beta.13.2 of the Tags extension. ### Workarounds Version v0.1.0-beta.13.2 of the Tags extension allows existing Flarum beta 13 forums to fix the issue without the need to update to beta 14. Forums that have not yet updated to Flarum beta 13 are encouraged to update as soon as possible. ### References - [Release announcement](https://discuss.flarum.org/d/25059-security-update-to-flarum-tags-010-beta132) - [GitHub issue](https://github.com/flarum/core/issues/2355) ### For more information If you have any questions or comments about this advisory, please start a new discussion on our [support forum](https://discuss.flarum.org/t/support). If you discover a security vulnerability within Flarum, please send an e-mail to [security@flarum.org](mailto:security@flarum.org). All security vulnerabilities will be promptly addressed. More details can be found in our [security policy](https://github.com/flarum/core/security/policy).

GHSA-32wx-4gxx-h48f Affected Flarum/tags Versions

1 component(s)
Fixed Versions:
0.1.0-beta.13.2
Product / Package Ecosystem Affected Versions Fixed Version
flarum/tags
Packagist
< 0.1.0-beta.13.2
0.1.0-beta.13.2

References

Frequently Asked Questions

What is GHSA-32wx-4gxx-h48f?
GHSA-32wx-4gxx-h48f is a security vulnerability in Flarum/tags involving Users can edit the tags of any discussion under CWE-639: Authorization Bypass Through User-Controlled Key.
Which Flarum/tags versions are affected?
Affected versions include releases prior to 0.1.0-beta.13.2 across affected packages: flarum/tags.
What version fixes GHSA-32wx-4gxx-h48f?
Upgrading to 0.1.0-beta.13.2 (or the latest patched release for your respective branch) resolves the vulnerability.
Is flarum/tags affected?
Yes, flarum/tags is affected in releases prior to 0.1.0-beta.13.2. Upgrade your dependency to 0.1.0-beta.13.2 or later.
What CWE is associated with GHSA-32wx-4gxx-h48f?
GHSA-32wx-4gxx-h48f is classified under CWE-639: Authorization Bypass Through User-Controlled Key (The system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data.).
How can I check Packagist dependencies for GHSA-32wx-4gxx-h48f?
Run the dependency tree command: 'inspect dependencies for flarum/tags'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-32wx-4gxx-h48f",
  "modified" : "2021-01-26T03:45:41Z",
  "published" : "2021-01-29T18:13:32Z",
  "aliases" : [ ],
  "summary" : "Users can edit the tags of any discussion",
  "details" : "This advisory concerns a vulnerability which was patched and publicly released on October 5, 2020.\n\n### Impact\nThis vulnerability allowed any registered user to edit the tags of any discussion for which they have READ access using the REST API.\n\nUsers were able to remove any existing tag, and add any tag in which they are allowed to create discussions. The chosen tags still had to match the configured Tags minimums and maximums.\n\nBy moving the discussion to new tags, users were able to go around permissions applied to restricted tags. Depending on the setup, this can include publicly exposing content that was only visible to certain groups, or gain the ability to interact with content where such interaction was limited.\n\nThe full impact varies depending on the configuration of permissions and restricted tags, and which community extensions are being used. All tag-scoped permissions offered by extensions are impacted by this ability to go around them.\n\nForums that don't use restricted tags and don't use any extension that relies on tags for access control should not see any security impact. An update is still required to stop users from being able to change any discussion's tags.\n\nForums that don't use the Tags extension are unaffected.\n\n### Patches\nThe fix will be available in version v0.1.0-beta.14 with Flarum beta 14. The fix has already been back-ported to Flarum beta 13 as version v0.1.0-beta.13.2 of the Tags extension.\n\n### Workarounds\nVersion v0.1.0-beta.13.2 of the Tags extension allows existing Flarum beta 13 forums to fix the issue without the need to update to beta 14.\n\nForums that have not yet updated to Flarum beta 13 are encouraged to update as soon as possible.\n\n### References\n\n- [Release announcement](https://discuss.flarum.org/d/25059-security-update-to-flarum-tags-010-beta132)\n- [GitHub issue](https://github.com/flarum/core/issues/2355)\n\n### For more information\nIf you have any questions or comments about this advisory, please start a new discussion on our [support forum](https://discuss.flarum.org/t/support).\n\nIf you discover a security vulnerability within Flarum, please send an e-mail to [security@flarum.org](mailto:security@flarum.org). All security vulnerabilities will be promptly addressed. More details can be found in our [security policy](https://github.com/flarum/core/security/policy).",
  "severity" : [ ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Packagist",
      "name" : "flarum/tags"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "0.1.0-beta.13.2"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "<= 0.1.0-beta.13"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/flarum/tags/security/advisories/GHSA-32wx-4gxx-h48f"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/flarum/core/issues/2355"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/flarum/tags/commit/c8fcd000857493f1e4cc00b6f2771ce388b93e9d"
  }, {
    "type" : "WEB",
    "url" : "https://discuss.flarum.org/d/25059-security-update-to-flarum-tags-010-beta132"
  }, {
    "type" : "WEB",
    "url" : "https://packagist.org/packages/flarum/tags"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-639" ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2021-01-26T03:45:41Z",
    "nvd_published_at" : null
  }
}