Skip to main content

Perspective CVE-2026-67195

| EUVDEUVD-2026-52692 HIGH
Eval Injection (CWE-95)
2026-08-04 VulnCheck GHSA-3jqr-28gj-8vq4
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain low-privilege access to Perspective server
  2. Delivery
    Send crafted protobuf TableValidateExprReq or TableMakeViewReq message
  3. Exploit
    Inject Python subclass traversal expression into eval()
  4. Execution
    Bypass __builtins__={} sandbox via class hierarchy traversal
  5. Persist
    Reach subprocess.Popen through loaded runtime classes
  6. Impact
    Execute arbitrary OS commands as host process

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Eval input sanitization
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The PolarsVirtualServer backend must be running and reachable by the attacker over the network - this backend specifically handles expression evaluation via protobuf API (TableValidateExprReq or TableMakeViewReq message types). The CVSS 4.0 vector specifies PR:L, meaning at minimum a low-privilege session or credential is required; however, the CVE description explicitly states 'unauthenticated attackers,' creating a direct conflict that is unresolved from available data - authentication requirements must be verified with the vendor. Exploitation is version-specific: only Perspective 0 through 5.0.0. Limiting factors: the PolarsVirtualServer must be in use (not all Perspective deployments use this backend); the PR:L discrepancy may mean that some authentication barrier exists in default configurations; and scope change is absent (SC:N/SI:N/SA:N) meaning lateral movement to adjacent systems is not directly enabled by this vulnerability alone.

Impact

The CVSS 4.0 score of 8.7 reflects a high-severity, network-accessible (AV:N), low-complexity (AC:L), no-user-interaction (UI:N) vulnerability with full impact on the vulnerable system's confidentiality, integrity, and availability. A critical discrepancy exists between the CVE description - which characterizes attackers as 'unauthenticated' - and the CVSS 4.0 vector, which specifies PR:L (low-privilege access required); defenders must verify authentication requirements with the vendor before assessing true exposure. No CISA KEV listing is identified at time of analysis, so active widespread exploitation is not confirmed. However, the publicly available PoC published by the researcher at christbowel.com dramatically elevates real-world risk: the Python subclass traversal technique is elementary and well-documented, meaning the PoC requires minimal adaptation. The attack is conditionally automatable - if the PR:L barrier proves low or absent in practice, mass scanning and exploitation becomes feasible. This is a genuine high-priority remediation candidate, not a CVSS-inflated theoretical risk, particularly for any internet-exposed Perspective deployment.

Exploit ScenarioDerived

An attacker with low-privilege access to a Perspective 5.0.0 server sends a crafted protobuf TableValidateExprReq message containing a Python expression that walks the interpreter's loaded subclass list (e.g., ''.__class__.__mro__[1].__subclasses__()) to locate subprocess.Popen, then calls it with an arbitrary OS command. Because __builtins__={} does not block class attribute traversal, the server's PolarsVirtualServer evaluates the payload and executes the command in the context of the Perspective host process. A public PoC demonstrating this exact technique is available at the researcher's blog, requiring minimal attacker skill to operationalize.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 1.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 04, 2026

Remote code execution in Perspective 5.0.0 exposes any network-reachable PolarsVirtualServer backend to arbitrary OS command execution via Python eval() injection. The server passes client-supplied expression strings to eval() with only __builtins__={} cleared - a well-known insufficient sandbox - enabling attackers to traverse Python's loaded class hierarchy to reach subprocess.Popen through crafted TableValidateExprReq or TableMakeViewReq protobuf messages. A public exploit is confirmed by VulnCheck, and five vulnerabilities were disclosed simultaneously in the researcher's blog post, suggesting a broader attack surface in this release. No KEV listing is identified, but the published PoC substantially lowers the exploitation barrier.

RemediationAI

No vendor-released patched version has been independently confirmed from available data - patch availability must be verified directly with the perspective-dev project repository. As an immediate compensating control, restrict network access to the PolarsVirtualServer's protobuf endpoints (TableValidateExprReq and TableMakeViewReq) to trusted internal networks only; note this disables server-side expression evaluation and may break expression-based analytics features for end users. If expression evaluation cannot be disabled, enforce strict authentication and authorization at the gateway layer so only known trusted users can submit expression payloads. A code-level fix requires replacing eval() with a safe, sandboxed expression parser (e.g., asteval or a restricted grammar parser) - the __builtins__={} approach must not be used as a security control. Monitor https://www.vulncheck.com/advisories/perspective-rce-via-eval-expression-injection for patch release updates. Given that five CVEs were disclosed simultaneously in the researcher's blog, review the full post at https://christbowel.com/blog/perspective-5-0-0-five-cves/ for companion vulnerabilities that may require additional remediation.

Affected VersionsENISA

perspective 0 ≤5.0.0

Affected Packages

euvd perspective no fix

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 high-performance data visualization and analytics library whose PolarsVirtualServer backend exposes server-side expression evaluation. The root cause is CWE-95 (Eval Injection): client-supplied expression strings are passed directly to Python's built-in eval() function. The only attempted sandboxing - setting __builtins__={} in the eval context - is a widely documented anti-pattern. Python's runtime object model retains references to all loaded classes via __subclasses__(), allowing an attacker to walk the class hierarchy from any accessible type (e.g., object.__subclasses__()) to locate subprocess.Popen or os.system without requiring any __builtins__ access. The attack is delivered via Google Protocol Buffer (protobuf) messages (TableValidateExprReq or TableMakeViewReq), meaning it targets a structured, purpose-built API endpoint rather than a generic web form. The EUVD entry EUVD-2026-52692 corroborates the affected range as all versions from 0 through 5.0.0 inclusive.

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

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Network-delivered eval injection with PR:L per CVSS 4.0 vector (conflicting description claim noted); full CIA impact via OS command execution in host process.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Perspective 5.0.0 contains a remote code execution vulnerability that allows unauthenticated attackers to execute arbitrary operating system commands by submitting crafted expression strings to the PolarsVirtualServer backend, which passes client-supplied input directly to Python's eval() with only __builtins__={} cleared. Attackers can exploit Python object attribute traversal through the interpreter's loaded class list to reach subprocess.Popen via a TableValidateExprReq or TableMakeViewReq protobuf message, achieving arbitrary command execution in the Perspective host process.

Executive ViewAI

Why It Matters

Perspective 5.0.0 PolarsVirtualServer backend systems are vulnerable to remote code execution with publicly available exploit code. Attackers can execute arbitrary OS commands on any network-accessible instance. No vendor patch is available, creating immediate and severe infrastructure compromise risk for affected organizations.

Business Impact: Severe
Compensating Controls

Implement network segmentation via firewall to restrict PolarsVirtualServer access to authorized networks only. Disable the service if operationally feasible. Run all backend processes as least-privileged users and apply OS-level sandboxing (seccomp, AppArmor). Deploy real-time monitoring and alerting for subprocess creation and unexpected command execution. Monitor vendor advisory for patch release. These controls reduce attack surface but do not eliminate risk-no vendor-released patch identified at time of analysis.

Threat Intelligence Overview

EPSS Score
1.2%
Top 36% exploitable
Prevalence
Low
niche open-source data visualization library, limited enterprise footprint
Exploit
POC
Public exploit code exists
Data Quality
7 sources
Confidence: High

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 1.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

65
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

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