Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-33286: CWE-913: Improper Control of Dynamically-Managed Code Resources in graphiti-api graphiti

0
Critical
VulnerabilityCVE-2026-33286cvecve-2026-33286cwe-913
Published: Mon Mar 23 2026 (03/23/2026, 23:52:30 UTC)
Source: CVE Database V5
Vendor/Project: graphiti-api
Product: graphiti

Description

CVE-2026-33286 is a critical vulnerability in Graphiti versions prior to 1. 10. 2 that allows unauthenticated attackers to execute arbitrary public methods on model instances, their classes, or associated objects via crafted JSONAPI write requests. This occurs because the framework improperly validates relationship names from user-supplied payloads, leading to arbitrary method invocation. Exploitation can result in integrity and availability impacts, including destructive operations on data. The vulnerability requires no authentication or user interaction and affects any application exposing Graphiti write endpoints to untrusted users. The issue is patched in Graphiti v1. 10. 2, and mitigation includes upgrading, restricting write endpoint access, and enforcing strong authorization and parameter validation. Organizations using Graphiti in web applications should prioritize patching and access controls to prevent exploitation.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 03/24/2026, 01:30:52 UTC

Technical Analysis

Graphiti is a Ruby framework that exposes models via a JSON:API-compliant interface. Versions before 1.10.2 contain a critical vulnerability (CVE-2026-33286) classified under CWE-913 (Improper Control of Dynamically-Managed Code Resources). The flaw arises in the `Graphiti::Util::ValidationResponse#all_valid?` method, which recursively calls `model.send(name)` using relationship names extracted directly from user-supplied JSONAPI payloads without validating these names against the resource's configured sideloads. This lack of validation enables an attacker to craft malicious JSONAPI write requests (create, update, delete) containing arbitrary relationship names that cause the framework to invoke any public method on the model instance, its class, or associated models. Because the method invocation is unrestricted, attackers can execute destructive operations or manipulate data integrity. The vulnerability requires no authentication or user interaction and can be exploited remotely if write endpoints are exposed to untrusted users. The issue was addressed in Graphiti version 1.10.2 by adding proper validation and restricting method invocation. Until upgrading, mitigations include restricting access to write endpoints, enforcing strong authentication and authorization, and using Rails strong parameters to whitelist valid inputs.

Potential Impact

The vulnerability allows attackers to execute arbitrary public methods on application models without authentication, leading to severe integrity and availability impacts. Attackers can perform unauthorized data modifications, deletions, or other destructive actions, potentially compromising application logic and data consistency. Since the flaw affects the core write functionality of Graphiti, any web application exposing these endpoints to untrusted users is at risk. This can result in data corruption, loss, or denial of service. The critical CVSS score of 9.1 reflects the high impact and ease of exploitation. Organizations relying on Graphiti for API endpoints may face significant operational disruption, reputational damage, and compliance violations if exploited.

Mitigation Recommendations

1. Upgrade Graphiti to version 1.10.2 or later immediately to apply the official patch that fixes the validation flaw. 2. Restrict access to Graphiti write endpoints (create, update, delete) so they are not exposed to untrusted or unauthenticated users. 3. Implement strong authentication and authorization controls on all write operations to ensure only authorized users can perform modifications. 4. Use Rails strong parameters or equivalent mechanisms to whitelist and validate all incoming JSONAPI payload parameters, preventing arbitrary method names from being processed. 5. Conduct thorough code reviews and testing to verify that no other dynamic method invocations are exposed to user input without validation. 6. Monitor application logs for unusual or unexpected method calls or payloads targeting Graphiti endpoints. 7. Consider implementing Web Application Firewalls (WAFs) with custom rules to detect and block suspicious JSONAPI payloads attempting to exploit this vulnerability.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-03-18T18:55:47.426Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 69c1e5e3f4197a8e3bb3f18b

Added to database: 3/24/2026, 1:16:19 AM

Last enriched: 3/24/2026, 1:30:52 AM

Last updated: 3/24/2026, 2:17:53 AM

Views: 4

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses