Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privilege credentials for Perspective server
-
DeliveryCraft TableMakeViewReq with expression column containing unbounded loop construct
-
ExploitSubmit message to target server endpoint
-
ExecutionExpression evaluator iterates per table row with no cap or timeout
-
PersistTornado IOLoop blocks indefinitely
-
ImpactAll connected clients denied service
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires low-privilege access to submit a TableMakeViewReq message to the Perspective server - an authenticated or otherwise credentialed session is needed, consistent with the CVSS 4.0 PR:L metric. The attacker must be able to create or modify a view with a computed expression column containing an unbounded loop construct (for or while). No special server configuration beyond a running Perspective 5.0.0 instance is required; this is the default behavior of the expression evaluator. What limits exploitation: unauthenticated anonymous users cannot trigger this without at least low-privilege credentials; the impact is availability-only with no data exfiltration path; and the attack affects only the single Perspective server process, not the underlying host or other services. The single-threaded IOLoop architecture means that even one such request fully denies service to all clients simultaneously. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N) scores 7.1 and accurately reflects the threat profile: network-reachable, low complexity, no special attack requirements, but requiring low-privilege access (PR:L). The availability impact is high against the vulnerable system only - confidentiality and integrity are not affected. The primary risk amplifier is the publicly available proof-of-concept exploit, which lowers the barrier to exploitation significantly and makes this a credible, near-term threat for any internet- or intranet-exposed Perspective deployment. The DoS is complete and affects all concurrent clients, not just the attacker's session, meaning a single low-privileged user can perform a multi-tenant denial of service. No EPSS data was provided in the input; exploitation probability cannot be independently confirmed from available data. No CISA KEV listing is present, so active exploitation in the wild is not confirmed. The combination of a public POC, network accessibility, and low-privilege requirement makes this a real operational priority despite the absence of KEV status. |
| Exploit ScenarioDerived | An attacker with low-privilege access to a Perspective server - such as a normal user account in a shared analytics platform - crafts a TableMakeViewReq message specifying a computed expression column containing a while(true) or for loop with a very large iteration bound. Upon submission, the server begins evaluating the expression row-by-row against the table with no timeout or yield point, permanently blocking the Tornado IOLoop and making the server unresponsive to all other connected clients. A public proof-of-concept exploit exists per VulnCheck's disclosure, meaning this attack requires minimal reverse engineering. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 04, 2026
Denial of service in Perspective 5.0.0 allows low-privileged remote attackers to render the server permanently unresponsive by submitting a crafted TableMakeViewReq message containing expression columns with unbounded for or while loop constructs. Because the Tornado IOLoop evaluates the expression once per table row with no iteration cap, deadline enforcement, or cancellation mechanism, a single malicious request stalls the entire event loop and blocks all connected clients. A publicly available proof-of-concept exploit exists, and the vulnerability is part of a batch of five CVEs disclosed against this version.
RemediationAI
No vendor-released patch version has been independently confirmed in the available data at time of analysis; users should monitor the VulnCheck advisory at https://www.vulncheck.com/advisories/perspective-dos-via-loop-expression-evaluation and the official perspective-dev repository for a patched release. As an immediate compensating control, restrict access to the Perspective server to trusted, authenticated users only - since PR:L is required, eliminating public or anonymous access removes the unauthenticated attack surface. If the expression evaluation feature is not required for the deployment, disabling computed expression columns via server-side configuration eliminates the vulnerable code path entirely, though this may impact analytical functionality. Network-level controls such as placing the Perspective server behind an authenticated reverse proxy or API gateway with per-client request rate limiting can reduce the frequency of abuse but cannot prevent a single crafted request from blocking the IOLoop once received. Sandboxing expression evaluation in a separate worker process or thread with a hard timeout would address the root cause architecturally but requires code changes.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Perspective (CPE: cpe:2.3:a:perspective-dev:perspective:*:*:*:*:*:*:*:*) is an open-source, WebAssembly-powered streaming data visualization and analytics library originally developed at J.P. Morgan and now maintained under FINOS. It exposes a server-side component built on Python's Tornado framework, using an IOLoop (single-threaded cooperative event loop) to handle client connections. The TableMakeViewReq message type allows clients to define computed expression columns that are evaluated row-by-row against the underlying table data. CWE-770 (Allocation of Resources Without Limits or Throttling) describes the root cause: the expression evaluator imposes no upper bound on loop iterations, no wall-clock deadline, and no cooperative yielding or cancellation hook, meaning an adversarially crafted loop expression can consume the IOLoop thread indefinitely. Because Tornado's IOLoop is inherently single-threaded and non-preemptive, one blocked coroutine stalls the entire server.
Know when Perspective gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
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
Network-reachable, low complexity, PR:L per CVSS 4.0 alignment; no scope change, confidentiality or integrity impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Perspective 5.0.0 contains a denial of service vulnerability that allows remote attackers to block the server event loop indefinitely by submitting a crafted expression containing unbounded for or while loop constructs in a TableMakeViewReq message. Attackers can embed an arbitrarily large iteration count in an expression column evaluated once per table row, causing the Tornado IOLoop to block without any iteration cap, deadline, or cancellation check, rendering the server unresponsive to all connected clients.
Executive ViewAI
A denial-of-service vulnerability in Perspective 5.0.0 enables remote attackers to render affected servers permanently unresponsive through a single malicious request, causing complete service unavailability for all connected clients. With publicly available exploit code and no vendor patch currently available, organizations running this version face immediate and sustained risk of extended outages affecting business-critical operations.
Implement network-level rate limiting and TableMakeViewReq filtering on load balancers; enforce expression input validation to reject loop constructs; configure IOLoop timeout settings if available through vendor configuration; restrict network access to Perspective instances to trusted clients only; establish process monitoring and auto-restart mechanisms for server stalls; implement request queue limits with deadline enforcement to prevent event loop blocking.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
More in Perspective
View allPerspective ICM Investigation & Case 5.1.1.16 allows remote authenticated users to modify access level permissions and c
Remote code execution in Perspective 5.0.0 exposes any network-reachable PolarsVirtualServer backend to arbitrary OS com
Remote unauthenticated file disclosure in perspective-dev/perspective 5.0.0 allows any network attacker to read arbitrar
Unauthenticated remote denial-of-service in Perspective 5.0.0 crashes the server process by exploiting missing field val
Cross-site scripting in Perspective 5.0.0's built-in Debug plugin enables an authenticated attacker with low privileges
EUVD-2026-52695
GHSA-vc2q-3q58-3rrv
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB