HIGH 8.2

CVE-2016-20068: Unauthenticated SQL Injection in WordPress Booking Calendar Contact Form 1.0.23

WordPress Booking Calendar Contact Form version 1.0.23 has a serious security flaw that allows attackers to steal database information without needing to log in. By sending specially crafted requests to the website's admin-ajax.php endpoint, an attacker can inject SQL commands through the 'id' parameter and extract sensitive data like user credentials, customer information, or other database contents. The vulnerability requires no authentication and can be exploited remotely over the network.

Source data · NVD / CISA · public domain

CVSS
3.1 · 8.2 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
Weaknesses (CWE)
CWE-89
Affected products
0 configuration(s)
Published / Modified
2026-06-15 / 2026-06-17

NVD description (verbatim)

WordPress Booking Calendar Contact Form version 1.0.23 contains an unauthenticated blind SQL injection vulnerability that allows remote attackers to execute arbitrary SQL queries by injecting malicious code through the 'id' parameter. Attackers can send requests to the admin-ajax.php endpoint with the action parameter set to 'dex_bccf_calendar_ajaxevent' and supply crafted SQL commands in the 'id' parameter to extract sensitive database information.

3 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

This is an unauthenticated blind SQL injection vulnerability (CWE-89) in WordPress Booking Calendar Contact Form 1.0.23. The vulnerability exists in the admin-ajax.php endpoint when the 'dex_bccf_calendar_ajaxevent' action is invoked. The 'id' parameter is not properly sanitized or parameterized, allowing attackers to inject arbitrary SQL syntax. Blind SQL injection means the attacker does not receive direct database output in the response, but can infer data existence and structure through response timing or boolean-based techniques. The attack surface is the publicly accessible AJAX handler, requiring only network access to the vulnerable WordPress installation.

Business impact

Organizations using this plugin risk exposure of their WordPress database, which typically contains user accounts, email addresses, plugin configuration data, and any custom data stored by the booking calendar functionality. In a multi-tenant or SaaS context, compromise could affect customer data and damage trust. The attacker gains read access to sensitive information without detection; while data modification capability is limited according to the CVSS score, the confidentiality breach alone can lead to regulatory fines (GDPR, CCPA), reputational harm, and fraud if customer payment or identity data is extracted. Incident response and forensics become necessary once exploitation is detected.

Affected systems

WordPress installations using Booking Calendar Contact Form version 1.0.23 are directly affected. Older versions should be assumed vulnerable unless patched; newer versions may have remediated this flaw (verify against the vendor advisory). Any WordPress site offering booking functionality via this plugin and exposed to the internet is at risk, regardless of whether the booking form is actually used. Virtual patching or access controls can reduce exposure even on unpatched systems.

Exploitability

This vulnerability has a CVSS score of 8.2 (HIGH) and carries an attack vector of Network, low attack complexity, no privilege requirement, and no user interaction needed. Exploitation is straightforward: an attacker sends HTTP requests to admin-ajax.php with the malicious action and SQL injection payload in the id parameter. Blind SQL injection attacks are slower and noisier than direct injection but are well-understood and automated by publicly available tools. No special credentials, session tokens, or user interaction is required, making this highly exploitable by script kiddies and sophisticated threat actors alike. The lack of KEV listing does not imply low exploitability; it reflects current threat intelligence classifications at publication time.

Remediation

Immediately update WordPress Booking Calendar Contact Form to a patched version released after 1.0.23 (verify version availability and release notes with the plugin vendor or WordPress.org plugin repository). If no update is available, disable or deactivate the plugin until a fix is released, and consider alternative booking solutions. For sites that must continue using the plugin, implement Web Application Firewall (WAF) rules to block requests to admin-ajax.php with the 'dex_bccf_calendar_ajaxevent' action, or restrict access by IP if the booking form is internal-only. Apply input validation, prepared statements, and principle of least privilege at the database level as defense-in-depth measures.

Patch guidance

Verify the current installed version of Booking Calendar Contact Form by checking wp-content/plugins/booking-calendar-contact-form/readme.txt or the Plugins admin panel. Cross-reference the plugin's official repository or vendor website for available updates and release notes that address SQL injection. Test patches in a staging environment before production deployment. Monitor plugin update channels and security advisories; consider enabling automatic security updates if your WordPress security posture permits. If the vendor has not released a patch, escalate the decision to disable the plugin to your stakeholder team based on business impact and alternative solutions.

Detection guidance

Monitor access logs for requests to /wp-admin/admin-ajax.php containing action=dex_bccf_calendar_ajaxevent with unusual or repeated id parameter values, especially those containing SQL syntax keywords (UNION, SELECT, OR, AND, comment sequences). Implement Web Application Firewall (WAF) logging and alerting for SQL injection patterns. Check database audit logs for unexpected queries or connection attempts from the WordPress application user. Use WordPress security plugins (e.g., Wordfence, iThemes Security) that can detect and log suspicious AJAX requests. Review recent database backups to identify if sensitive data exfiltration occurred during a potential compromise window.

Why prioritize this

This vulnerability merits immediate patching priority due to its HIGH severity score (8.2), unauthenticated remote exploitability, and direct impact on database confidentiality. SQL injection on a CMS database often provides a foothold for lateral movement, privilege escalation, or supply-chain attacks if the site hosts third-party content. The ease of exploitation and low barriers to discovery make this a primary target for opportunistic attackers scanning for vulnerable WordPress plugins. Delaying remediation increases risk of data breach, regulatory non-compliance, and operational disruption.

Risk score, explained

The CVSS 3.1 score of 8.2 reflects: Network-based attack vector (high accessibility), Low complexity (straightforward injection), No privilege or user interaction required (maximum ease of exploitation), and High confidentiality impact (unrestricted database read). The Integrity impact is rated as Low because SQL injection in this context permits limited write capability; the Availability impact is None, as the attack does not directly cause service disruption. The HIGH severity rating appropriately captures the combination of unrestricted remote access and database confidentiality breach, warranting urgent remediation.

Frequently asked questions

Can this vulnerability be exploited if the booking form is not actively used on our site?

Yes. The vulnerability exists at the code level in the plugin regardless of whether the booking calendar feature is actively displayed or used by visitors. Simply having the plugin installed and activated makes the AJAX endpoint accessible to attackers. Deactivating or uninstalling the plugin eliminates the risk.

Is this vulnerability currently being actively exploited in the wild?

This vulnerability was not added to the CISA KEV catalog as of the published date, which means it is not yet listed as actively exploited in the wild. However, the lack of KEV status does not guarantee it is not being targeted; it reflects current threat intelligence reporting at publication. Given its ease of exploitation and high severity, security teams should assume opportunistic scanning and exploitation are likely and patch urgently.

What data is most at risk if this vulnerability is exploited?

The WordPress database is the primary target. This typically includes user account credentials (usernames, email addresses, password hashes), customer booking data, contact form submissions, plugin configuration settings, and any custom data stored in the database. If your site processes or stores sensitive information (payment details, government IDs, health information), that data is also at risk depending on your database schema.

Can a Web Application Firewall (WAF) protect us until we patch?

Yes, a WAF can block requests to admin-ajax.php containing the malicious action parameter ('dex_bccf_calendar_ajaxevent') or SQL injection patterns in the id parameter, providing temporary mitigation. However, WAF rules require ongoing maintenance and sophisticated attackers may bypass them. WAF protection should be a stopgap only; prioritize patching or plugin removal as the permanent solution.

This analysis is provided for informational purposes to help security teams assess and remediate vulnerabilities. Patch version numbers, release dates, and vendor advisories should be verified directly with the official Booking Calendar Contact Form plugin repository and WordPress.org before deployment. SEC.co does not guarantee the completeness or accuracy of third-party vendor patch availability or timeline. Organizations are responsible for testing patches in their own environments and assessing business risk independently. This is not legal or compliance advice; consult your legal and compliance teams regarding regulatory obligations related to data breach notification and remediation timelines. Source: NVD (public-domain), retrieved 2026-07-20. Analysis generated by SEC.co (claude-haiku-4-5).