GHSA-RW5H-G8XQ-6877

Vulnerability from github – Published: 2024-09-17 18:33 – Updated: 2024-09-17 22:25
VLAI
Summary
Wire UI has a JS XSS Vulnerability on route /wireui/button?label=Content
Details

Summary

A potential Cross-Site Scripting (XSS) vulnerability has been identified in the /wireui/button endpoint, specifically through the label query parameter. Malicious actors could exploit this vulnerability by injecting JavaScript into the label parameter, leading to the execution of arbitrary code in the victim's browser.

Details

The /wireui/button endpoint dynamically renders button labels based on user-provided input via the label query parameter. Due to insufficient sanitization or escaping of this input, an attacker can inject malicious JavaScript. The following URL demonstrates the vulnerability:

https://wireui.dev/wireui/button?label=Cancel&1%25%7ds8dk0%3E%3Cscript%3Ealert(1)%3C/script%3Ez1qt3=1

By crafting such a request, an attacker can inject arbitrary code that will be executed by the browser when the endpoint is accessed.

Proof of Concept (PoC)

To demonstrate the vulnerability, visit the following URL:

/wireui/button?label=<script>alert(1)</script>

Upon loading the page, the injected JavaScript will execute, displaying an alert with the message "1." This confirms the vulnerability and highlights that user input is not being properly escaped or sanitized.

Impact

If exploited, this vulnerability could allow an attacker to execute arbitrary JavaScript code in the context of the affected website. This could lead to:

  • Session Hijacking: Stealing session cookies, tokens, or other sensitive information.
  • User Impersonation: Performing unauthorized actions on behalf of authenticated users.
  • Phishing: Redirecting users to malicious websites.
  • Content Manipulation: Altering the appearance or behavior of the affected page to mislead users or execute further attacks.

The severity of this vulnerability depends on the context of where the affected component is used, but in all cases, it poses a significant risk to user security.

Show details on source website

{
  "affected": [
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "wireui/wireui"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1.19.3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "wireui/wireui"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "2.0.0"
            },
            {
              "fixed": "2.1.3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2024-45803"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-79"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2024-09-17T18:33:14Z",
    "nvd_published_at": "2024-09-17T19:15:28Z",
    "severity": "MODERATE"
  },
  "details": "### Summary\nA potential Cross-Site Scripting (XSS) vulnerability has been identified in the `/wireui/button` endpoint, specifically through the `label` query parameter. Malicious actors could exploit this vulnerability by injecting JavaScript into the `label` parameter, leading to the execution of arbitrary code in the victim\u0027s browser.\n\n### Details\nThe `/wireui/button` endpoint dynamically renders button labels based on user-provided input via the `label` query parameter. Due to insufficient sanitization or escaping of this input, an attacker can inject malicious JavaScript. The following URL demonstrates the vulnerability:\n\n```\nhttps://wireui.dev/wireui/button?label=Cancel\u00261%25%7ds8dk0%3E%3Cscript%3Ealert(1)%3C/script%3Ez1qt3=1\n```\n\nBy crafting such a request, an attacker can inject arbitrary code that will be executed by the browser when the endpoint is accessed.\n\n### Proof of Concept (PoC)\nTo demonstrate the vulnerability, visit the following URL:\n\n```\n/wireui/button?label=\u003cscript\u003ealert(1)\u003c/script\u003e\n```\n\nUpon loading the page, the injected JavaScript will execute, displaying an alert with the message \"1.\" This confirms the vulnerability and highlights that user input is not being properly escaped or sanitized.\n\n### Impact\nIf exploited, this vulnerability could allow an attacker to execute arbitrary JavaScript code in the context of the affected website. This could lead to:\n\n- **Session Hijacking**: Stealing session cookies, tokens, or other sensitive information.\n- **User Impersonation**: Performing unauthorized actions on behalf of authenticated users.\n- **Phishing**: Redirecting users to malicious websites.\n- **Content Manipulation**: Altering the appearance or behavior of the affected page to mislead users or execute further attacks.\n\nThe severity of this vulnerability depends on the context of where the affected component is used, but in all cases, it poses a significant risk to user security.",
  "id": "GHSA-rw5h-g8xq-6877",
  "modified": "2024-09-17T22:25:22Z",
  "published": "2024-09-17T18:33:14Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/wireui/wireui/security/advisories/GHSA-rw5h-g8xq-6877"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-45803"
    },
    {
      "type": "WEB",
      "url": "https://github.com/wireui/wireui/commit/784c4f110e58eb41d0f2bdecd4655ea417f16e7e"
    },
    {
      "type": "WEB",
      "url": "https://github.com/wireui/wireui/commit/a457654912055f4dcc559da04d4e319f76b80fc5"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/wireui/wireui"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
      "type": "CVSS_V3"
    },
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Wire UI has a JS XSS Vulnerability on route /wireui/button?label=Content"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…