Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Remote submission with low complexity, but persisting content requires an authenticated low-privilege account (PR:L); impact is availability-only (A:H) with no confidentiality or integrity effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Lifecycle Timeline
2DescriptionCVE.org
Tiptap for PHP before version 2.1.1 contains an input validation vulnerability that allows authenticated attackers to cause a denial of service by submitting Tiptap JSON with the attrs.href field set to an array instead of a string, causing an unhandled TypeError in the Link::isAllowedUri() function when passed to preg_match(). Attackers can persist malformed JSON records that permanently crash the server-side HTML rendering pipeline for all subsequent viewers of that record until the database entry is manually repaired.
Articles & Coverage 1
AnalysisAI
Persistent denial of service in the Tiptap for PHP library before 2.1.1 lets authenticated users crash the server-side rendering pipeline by submitting Tiptap JSON whose attrs.href is an array rather than a string. The malformed value reaches preg_match() inside Link::isAllowedUri() and triggers an unhandled TypeError; because the bad record is stored, every later attempt to render that content fails for all viewers until the database row is manually fixed. No public exploit has been identified at time of analysis, and the issue is not listed in CISA KEV; EPSS data was not provided.
Technical ContextAI
Tiptap for PHP (ueberdosis/tiptap-php) is the PHP server-side counterpart to the Tiptap rich-text editor framework, responsible for converting Tiptap's JSON document model into HTML. The Link extension enforces a URI allow-list through Link::isAllowedUri(), which passes the href attribute to PHP's preg_match(). The code assumes href is always a string, but Tiptap JSON is attacker-controllable and can carry attrs.href as an array. preg_match() requires a string subject, so an array argument raises a TypeError that is not caught anywhere in the rendering path. This maps to CWE-241 (Improper Handling of Unexpected Data Type): the defect is a missing type check on externally supplied structured input rather than a memory-safety or injection bug.
RemediationAI
Vendor-released patch: upgrade ueberdosis/tiptap-php to version 2.1.1 or later (via Composer), which adds a type guard preventing the TypeError when a link href is not a string (PR https://github.com/ueberdosis/tiptap-php/pull/94, commit 74bfb7be1c8c6102b240f3879b7f984a6ab87b97, release https://github.com/ueberdosis/tiptap-php/releases/tag/2.1.1). If you cannot upgrade immediately, validate or normalize incoming Tiptap JSON before persistence by rejecting or coercing any attrs.href that is not a scalar string, which blocks the malformed input at the application boundary at the cost of adding custom input-validation code that must be kept in sync with the schema. As a recovery measure for an already-affected deployment, identify and repair or delete stored records whose href fields are arrays to restore rendering; wrap the rendering call in error handling only as a stopgap, since catching the TypeError hides the bad data rather than fixing it. See the VulnCheck advisory (https://www.vulncheck.com/advisories/tiptap-for-php-dos-via-malformed-href-attribute) for confirmation of affected versions and fix.
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
NetAlertX (formerly PiAlert) versions 23.01.14 through 24.x before 24.10.12 allow unauthenticated command injection thro
Same weakness CWE-241 – Improper Handling of Unexpected Data Type
View allSame technique Denial Of Service
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-39100
GHSA-4595-7fjw-r3jh