ghsa-3wxg-w96j-8hq9
Vulnerability from github
Published
2023-05-26 13:54
Modified
2023-05-26 21:50
Summary
CraftCMS stored XSS in Quick Post widget error message
Details

Summary

The platform does not filter input and encode output in Quick Post validation error message, which can deliver an XSS payload.

Details

Old CVE fixed the XSS in label HTML but didn’t fix it when clicking save.

PoC

  1. Login at admin
  2. Go to setting
  3. Create a Section
  4. On Entry page, click Edit label
  5. Inject the XSS payload into the label and save
  6. On the admin dashboard choose new widget -> Quick Post
  7. In Quick Post, click save with blank slug; The XSS will be executed

    "errors":{"title":[" cannot be blank."],"slug":["Slug cannot be blank."]

Fixed in https://github.com/craftcms/cms/commit/9d0cd0bda7c8a830a3373f8c0f06943e519ac888

Show details on source website


{
  "affected": [
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "craftcms/cms"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "4.0.0-RC1"
            },
            {
              "fixed": "4.4.6"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c= 3.8.5"
      },
      "package": {
        "ecosystem": "Packagist",
        "name": "craftcms/cms"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "3.0.0"
            },
            {
              "fixed": "3.8.6"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2023-33194"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-79",
      "CWE-80"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2023-05-26T13:54:11Z",
    "nvd_published_at": "2023-05-26T21:15:20Z",
    "severity": "LOW"
  },
  "details": "### Summary\nThe platform does not filter input and encode output in Quick Post validation error message, which can deliver an XSS payload.\n\n### Details\nOld CVE fixed the XSS in label HTML but didn\u2019t fix it when clicking save.\n\n### PoC\n1. Login at admin\n2. Go to setting\n3. Create a Section\n4. On Entry page, click Edit label\n5. Inject the XSS payload into the label and save\n6. On the admin dashboard choose new widget -\u003e Quick Post\n7. In Quick Post, click save with blank slug; The XSS will be executed\n\n    \"errors\":{\"title\":[\"\u003cscript\u003ealert(\u0027nono\u0027)\u003c/script\u003e cannot be blank.\"],\"slug\":[\"Slug cannot be blank.\"]\n\nFixed in https://github.com/craftcms/cms/commit/9d0cd0bda7c8a830a3373f8c0f06943e519ac888\n",
  "id": "GHSA-3wxg-w96j-8hq9",
  "modified": "2023-05-26T21:50:40Z",
  "published": "2023-05-26T13:54:11Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/craftcms/cms/security/advisories/GHSA-3wxg-w96j-8hq9"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-33194"
    },
    {
      "type": "WEB",
      "url": "https://github.com/craftcms/cms/commit/9d0cd0bda7c8a830a3373f8c0f06943e519ac888"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/craftcms/cms"
    },
    {
      "type": "WEB",
      "url": "https://github.com/craftcms/cms/releases/tag/4.4.6"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:L",
      "type": "CVSS_V3"
    }
  ],
  "summary": "CraftCMS stored XSS in Quick Post widget error message"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.