Skip to main content

KiviCare CVE-2026-11990

| EUVDEUVD-2026-42864 MEDIUM
Missing Authorization (CWE-862)
2026-07-10 security@wordfence.com GHSA-9wwr-q273-mfwg
5.3
CVSS 3.1 · Vendor: wordfence
Share

Severity by source

Vendor (wordfence) PRIMARY
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
vuln.today AI
5.3 MEDIUM

Network-exploitable REST API, no authentication or interaction required on default installs; integrity impact limited to appointment and payment records within plugin scope, no confidentiality or availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (wordfence).

CVSS VectorVendor: wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None

Lifecycle Timeline

2
Analysis Generated
Jul 10, 2026 - 10:31 vuln.today
CVE Published
Jul 10, 2026 - 10:16 nvd
MEDIUM 5.3

DescriptionCVE.org

The KiviCare - Clinic & Patient Management System (EHR) plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 4.4.0. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for unauthenticated attackers to mark arbitrary pending appointments as Confirmed and forge an associated completed payment record in wp_kc_payments_appointment_mappings using an attacker-supplied payment ID, bypassing payment entirely. This exploit is achievable on a default installation because the gateway resolution logic returns all registered gateways regardless of admin-enabled status, making the manual (KCPayLater) gateway always selectable.

AnalysisAI

Authorization bypass in the KiviCare WordPress EHR plugin (all versions through 4.4.0) allows unauthenticated network attackers to confirm arbitrary pending clinic appointments and inject forged payment records into the wp_kc_payments_appointment_mappings table using attacker-supplied payment IDs, completely circumventing the payment collection process. The root defect is a two-part failure: the appointments API controller does not verify user authorization before processing status changes, and the KCPaymentGatewayFactory returns all registered gateways regardless of admin-enabled status - meaning the KCPayLater manual-payment gateway is always selectable, even by unauthenticated callers on default installations. No public exploit or CISA KEV listing exists at time of analysis, though the trivially low attack complexity makes scripted abuse realistic.

Technical ContextAI

KiviCare is a WordPress plugin providing clinic and patient management (EHR) functionality. The vulnerability spans four files identified in the plugin's SVN repository: KCPaymentGatewayFactory.php (line 131) performs gateway resolution but returns all registered gateways unconditionally rather than filtering by admin-enabled status; AppointmentsController.php (lines 465 and 3931) handles appointment status transitions via REST API without authorization checks; KCPayLater.php (line 109) implements the 'pay later' manual gateway that defers payment collection; and KCAppointmentPaymentService.php (line 32) records the payment mapping using whatever payment ID the caller supplies. CWE-862 (Missing Authorization) is the root cause class - the access control gate that should validate whether the requester is entitled to confirm an appointment and record a payment is simply absent, not misconfigured. The gateway factory design flaw independently guarantees the bypass route exists on every installation without any non-default configuration.

RemediationAI

Update the KiviCare plugin to the version released after 4.4.0 - SVN changeset 3599918 is the referenced fix commit, but the exact tagged release version has not been independently confirmed from available data; verify the current patched version via the WordPress.org plugin page or the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/efe4223a-5c1a-401e-a46b-0278e96d2d71. As an interim compensating control if immediate update is not possible, clinic administrators should disable the patient-facing appointment booking and online payment flow at the application or WAF level - this prevents unauthenticated access to the vulnerable API endpoints but disrupts patient self-scheduling. Administrators should also audit the wp_kc_payments_appointment_mappings database table for anomalous or sequential attacker-supplied payment IDs and cross-reference confirmed appointments against actual payment processor transaction records to detect any historical exploitation. Re-enabling gateways only when explicitly configured by admins (the fix the changeset likely implements) is the structural long-term resolution.

CVE-2016-10033 CRITICAL POC
9.8 Dec 30

The mailSend function in the isMail transport in PHPMailer before 5.2.18 might allow remote attackers to pass extra para

CVE-2016-10045 CRITICAL POC
9.8 Dec 30

The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail comman

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2024-8353 CRITICAL POC
9.8 Sep 28

The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-11749 CRITICAL POC
9.8 Nov 05

The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2026-63030 CRITICAL POC
9.8 Jul 17

Remote code execution in WordPress 6.9.x (before 6.9.5) and 7.0.x (before 7.0.2) arises from a REST API batch endpoint r

Share

CVE-2026-11990 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy