Simply Schedule Appointments <= 1.6.12.35 - Unauthenticated Stored Cross-Site Scripting via 'status' Parameter via /wp-json/ssa/v1/appointments/{id}
What fixes it
No source in this snapshot names a fixed version.
Description
The Simply Schedule Appointments plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'status' parameter in all versions up to, and including, 1.6.12.35 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The malicious payload is stored unconditionally because debug logging is enabled by default, and the debug-log viewer is accessible to anyone holding the site-wide Support PIN (an HMAC-MD5 of AUTH_SALT displayed in wp-admin), meaning the injected script will execute against the administrator's session during ordinary support or troubleshooting workflows.
Text from CVE List
Affected versions 1
- Simply Schedule Appointmentsaffected: all versions through 1.6.12.35CVE List
References 5
- wordfence.com/threat-intel/vulnerabilities/id/3a8bd422-112c-43bc-a041-3c6eea27b790?source=cveReferencevia CVE List
- plugins.trac.wordpress.org/browser/simply-schedule-appointments/tags/1.6.12.33/includes/class-debug.php#L92Referencevia CVE List
- plugins.trac.wordpress.org/browser/simply-schedule-appointments/tags/1.6.12.33/includes/class-appointment-model.php#L1490Referencevia CVE List
- plugins.trac.wordpress.org/browser/simply-schedule-appointments/tags/1.6.12.33/includes/class-utils.php#L716Referencevia CVE List
- plugins.trac.wordpress.org/changeset/3746344/simply-schedule-appointments/trunk/includes/class-appointment-model.phpReferencevia CVE List