<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Graphql — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/graphql/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Tue, 21 Apr 2026 13:16:20 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/graphql/feed.xml" rel="self" type="application/rss+xml"/><item><title>FreePBX API Module Command Injection Vulnerability (CVE-2026-40520)</title><link>https://feed.craftedsignal.io/briefs/2026-04-freepbx-command-injection/</link><pubDate>Tue, 21 Apr 2026 13:16:20 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-freepbx-command-injection/</guid><description>FreePBX api module version 17.0.8 and prior contain a command injection vulnerability in the initiateGqlAPIProcess() function, allowing authenticated users to execute arbitrary commands via crafted GraphQL mutations.</description><content:encoded><![CDATA[<p>FreePBX, a widely used open-source PBX (Private Branch Exchange) system, is vulnerable to a command injection flaw within its API module. Specifically, versions 17.0.8 and earlier are affected by CVE-2026-40520. The vulnerability resides in the <code>initiateGqlAPIProcess()</code> function, where GraphQL mutation input fields are directly passed to the <code>shell_exec()</code> function without proper sanitization or escaping. This allows an authenticated attacker with a valid bearer token to inject and execute arbitrary commands on the underlying host operating system as the web server user. The attack vector involves sending a specially crafted GraphQL <code>moduleOperations</code> mutation containing backtick-wrapped commands within the <code>module</code> field. Successful exploitation grants the attacker the ability to compromise the FreePBX server and potentially pivot to other internal systems.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker authenticates to the FreePBX API using a valid bearer token.</li>
<li>The attacker crafts a GraphQL <code>moduleOperations</code> mutation request.</li>
<li>Within the <code>module</code> field of the mutation, the attacker injects a command using backticks (e.g., <code>\</code>id` `).</li>
<li>The attacker sends the malicious GraphQL request to the <code>/api</code> endpoint.</li>
<li>The <code>initiateGqlAPIProcess()</code> function processes the request without proper sanitization.</li>
<li>The injected command is passed to the <code>shell_exec()</code> function within <code>Api.class.php</code>.</li>
<li>The <code>shell_exec()</code> function executes the injected command on the FreePBX server as the web server user (e.g., <code>www-data</code>, <code>apache</code>).</li>
<li>The attacker gains arbitrary command execution on the server.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this command injection vulnerability (CVE-2026-40520) allows an attacker to execute arbitrary commands on the FreePBX server with the privileges of the web server user. This can lead to complete compromise of the PBX system, allowing the attacker to eavesdrop on calls, modify call routing, steal sensitive data, install malware, and potentially pivot to other systems on the network. Given the critical role of PBX systems in business communications, a successful attack can disrupt operations, damage reputation, and result in significant financial losses.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade the FreePBX API module to a version greater than 17.0.8 to patch CVE-2026-40520.</li>
<li>Deploy the Sigma rule <code>Detect FreePBX GraphQL Command Injection</code> to identify exploitation attempts by detecting backticks in GraphQL mutation requests.</li>
<li>Monitor web server logs for POST requests to the <code>/api</code> endpoint containing GraphQL mutations with backtick-wrapped commands to detect command injection attempts.</li>
<li>Implement input validation and sanitization measures for all GraphQL input fields to prevent command injection vulnerabilities.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>command-injection</category><category>freepbx</category><category>graphql</category><category>cve-2026-40520</category></item><item><title>Saleor GraphQL Batch Query Resource Exhaustion Vulnerability (CVE-2026-33756)</title><link>https://feed.craftedsignal.io/briefs/2026-04-saleor-resource-exhaustion/</link><pubDate>Thu, 09 Apr 2026 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-saleor-resource-exhaustion/</guid><description>Unauthenticated attackers can exploit a resource exhaustion vulnerability (CVE-2026-33756) in Saleor e-commerce platform versions before 3.23.0a3, 3.22.47, 3.21.54, and 3.20.118 by sending a single HTTP request with a large number of GraphQL operations, bypassing query complexity limits and exhausting server resources.</description><content:encoded><![CDATA[<p>Saleor, an e-commerce platform, is susceptible to a resource exhaustion vulnerability affecting versions 2.0.0 prior to 3.23.0a3, 3.22.47, 3.21.54, and 3.20.118. This vulnerability stems from the platform&rsquo;s support for query batching, where multiple GraphQL operations can be submitted in a single HTTP request as a JSON array. The absence of an upper limit on the number of operations within a single request allows unauthenticated attackers to bypass per-query complexity limits. By sending a single HTTP request containing a massive number of GraphQL operations, an attacker can exhaust server resources, potentially leading to denial of service. The vulnerability is addressed in versions 3.23.0a3, 3.22.47, 3.21.54, and 3.20.118. Defenders must ensure they are running patched versions.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker identifies a Saleor instance running a vulnerable version (prior to 3.23.0a3, 3.22.47, 3.21.54, or 3.20.118).</li>
<li>The attacker crafts a malicious HTTP POST request targeting the GraphQL endpoint (typically <code>/graphql/</code>).</li>
<li>The request body contains a JSON array representing a batch of GraphQL queries.</li>
<li>The number of GraphQL operations within the array is excessively large, designed to bypass query complexity limits.</li>
<li>The Saleor server processes the HTTP request, attempting to execute all GraphQL operations within the batch.</li>
<li>Due to the large number of operations, the server&rsquo;s resources (CPU, memory) become heavily utilized.</li>
<li>The server becomes slow or unresponsive to legitimate user requests, causing a denial-of-service condition.</li>
<li>The attacker repeats the process to maintain the denial-of-service state, impacting legitimate users.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability results in resource exhaustion on the Saleor e-commerce platform. This can lead to slow response times, application instability, and ultimately a denial-of-service condition for legitimate users. This vulnerability poses a significant risk to e-commerce businesses relying on Saleor, potentially impacting sales, customer satisfaction, and overall business operations. The number of potential victims is directly proportional to the number of Saleor installations running vulnerable versions.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade Saleor instances to versions 3.23.0a3, 3.22.47, 3.21.54, or 3.20.118 or later to patch CVE-2026-33756.</li>
<li>Deploy the Sigma rule <code>Detect High Volume of GraphQL Queries</code> to identify potential exploitation attempts by monitoring the number of GraphQL queries within a single HTTP request in web server logs.</li>
<li>Monitor web server logs for abnormally large HTTP POST requests to the <code>/graphql/</code> endpoint.</li>
<li>Implement rate limiting on the GraphQL endpoint to restrict the number of requests from a single IP address within a defined timeframe.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>resource-exhaustion</category><category>graphql</category><category>cve-2026-33756</category><category>dos</category></item><item><title>Saleor GraphQL Resource Exhaustion Vulnerability (CVE-2026-35401)</title><link>https://feed.craftedsignal.io/briefs/2026-04-saleor-graphql-exhaustion/</link><pubDate>Wed, 08 Apr 2026 19:25:23 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-saleor-graphql-exhaustion/</guid><description>A remote, unauthenticated attacker can cause resource exhaustion in Saleor e-commerce platforms via maliciously crafted GraphQL API requests, leading to denial of service.</description><content:encoded><![CDATA[<p>CVE-2026-35401 details a resource exhaustion vulnerability affecting the Saleor e-commerce platform. Present in versions 2.0.0 up to, but not including, 3.23.0a3, 3.22.47, 3.21.54, and 3.20.118, the flaw allows an unauthenticated, remote attacker to exhaust server resources. This is achieved by sending a single API call containing numerous GraphQL mutations or queries, leveraging aliases or chaining techniques. The excessive processing load induced by these malicious requests can lead to a denial-of-service (DoS) condition. Organizations using vulnerable Saleor versions are at risk of service disruption, potentially impacting business operations and revenue. Mitigation involves upgrading to the patched versions: 3.23.0a3, 3.22.47, 3.21.54, or 3.20.118.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker identifies a Saleor e-commerce platform running a vulnerable version (2.0.0 to before 3.23.0a3, 3.22.47, 3.21.54, and 3.20.118).</li>
<li>The attacker crafts a malicious GraphQL query or mutation containing numerous aliased or chained operations. This is done to maximize server-side processing load.</li>
<li>The attacker sends the crafted GraphQL request to the Saleor platform&rsquo;s API endpoint, typically <code>/graphql/</code>.</li>
<li>The Saleor server attempts to process all the queries/mutations within the single request.</li>
<li>The server resources (CPU, memory, database connections) are rapidly consumed by the excessive processing demand.</li>
<li>The server becomes slow and unresponsive, potentially timing out for legitimate user requests.</li>
<li>The Saleor e-commerce platform experiences a denial-of-service condition, disrupting service for legitimate customers.</li>
<li>The attacker may repeat this process to maintain the denial-of-service state, further impacting business operations.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of CVE-2026-35401 leads to resource exhaustion on the Saleor e-commerce platform, resulting in a denial-of-service condition. This disruption can impact online sales, customer experience, and brand reputation. The number of affected systems depends on the prevalence of vulnerable Saleor installations. While the exact number of victims is unknown, any e-commerce business using an unpatched version is susceptible to service outages. Prolonged or repeated attacks can lead to significant financial losses and damage to business operations.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Immediately upgrade Saleor e-commerce platforms to versions 3.23.0a3, 3.22.47, 3.21.54, or 3.20.118 to patch CVE-2026-35401.</li>
<li>Implement rate limiting on the <code>/graphql/</code> API endpoint to mitigate the impact of excessive requests.</li>
<li>Deploy the Sigma rule <code>Detect Suspicious GraphQL Volume</code> to identify potential exploitation attempts based on request patterns.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>cve-2026-35401</category><category>graphql</category><category>resource-exhaustion</category><category>denial-of-service</category><category>saleor</category></item><item><title>TinaCMS GraphQL Path Traversal Vulnerability</title><link>https://feed.craftedsignal.io/briefs/2026-04-tinacms-path-traversal/</link><pubDate>Mon, 30 Mar 2026 17:11:02 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-tinacms-path-traversal/</guid><description>A path traversal vulnerability in @tinacms/graphql allows unauthenticated users to write and overwrite arbitrary files within the project root by manipulating the relativePath parameter in GraphQL mutations, leading to potential arbitrary code execution.</description><content:encoded><![CDATA[<p>A path traversal vulnerability has been identified in versions 2.2.1 and earlier of <code>@tinacms/graphql</code>, a GraphQL API for TinaCMS. This flaw enables unauthenticated attackers to write and overwrite arbitrary files within the project root directory. The vulnerability stems from insufficient validation of the <code>relativePath</code> parameter within GraphQL mutations. By exploiting this weakness, attackers can overwrite critical server configuration files like <code>package.json</code> and <code>tsconfig.json</code>, inject malicious scripts into the <code>public/</code> directory, and even achieve arbitrary code execution by modifying build scripts or server-side logic files. This vulnerability poses a significant risk to systems utilizing vulnerable versions of <code>@tinacms/graphql</code>.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker identifies a TinaCMS instance running a vulnerable version of <code>@tinacms/graphql</code> (&lt;= 2.2.1).</li>
<li>The attacker crafts a malicious GraphQL mutation request targeting the <code>updateDocument</code> mutation.</li>
<li>Within the mutation, the attacker manipulates the <code>relativePath</code> parameter to include a path traversal sequence, such as <code>x\\\\..\\\\..\\\\..\\\\package.json</code>. The backslashes are misinterpreted on non-Windows systems.</li>
<li>The vulnerable <code>getValidatedPath</code> function fails to properly sanitize the malicious path due to the backslash bypass on non-Windows platforms.</li>
<li>The request is processed, and the server attempts to write to the attacker-specified file path.</li>
<li>The file system API resolves the path traversal sequence, leading to a write operation outside the intended directory.</li>
<li>The attacker overwrites a critical file, such as <code>package.json</code>, with malicious content.</li>
<li>The server or build process executes the modified file, resulting in arbitrary code execution or other malicious behavior.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability allows unauthenticated attackers to perform arbitrary file writes, leading to several critical consequences. Attackers can overwrite server configuration files, inject malicious scripts for client-side attacks, and achieve arbitrary code execution by modifying build scripts or server-side logic. The impact ranges from denial of service to complete system compromise. While the exact number of affected systems is unknown, all TinaCMS instances running <code>@tinacms/graphql</code> version 2.2.1 or earlier are susceptible.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade <code>@tinacms/graphql</code> to a patched version (later than 2.2.1) to remediate CVE-2026-33949.</li>
<li>Deploy the Sigma rule <code>Detect TinaCMS GraphQL Path Traversal Attempt</code> to identify attempted exploitation of the vulnerability.</li>
<li>Monitor web server logs for POST requests to the <code>/graphql</code> endpoint containing suspicious <code>relativePath</code> parameters.</li>
<li>Implement strict input validation and sanitization for file paths within GraphQL mutations, regardless of the underlying operating system.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>path-traversal</category><category>graphql</category><category>tinacms</category><category>arbitrary-file-write</category></item><item><title>GitLab GraphQL Denial of Service Vulnerability (CVE-2026-3988)</title><link>https://feed.craftedsignal.io/briefs/2026-03-gitlab-graphql-dos/</link><pubDate>Thu, 26 Mar 2026 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-03-gitlab-graphql-dos/</guid><description>CVE-2026-3988 is a denial of service vulnerability in GitLab CE/EE allowing unauthenticated users to crash instances by sending malformed GraphQL requests, affecting versions 18.5 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1.</description><content:encoded>&lt;p>CVE-2026-3988 is a denial-of-service (DoS) vulnerability affecting GitLab CE/EE. The vulnerability resides in the processing of GraphQL requests and stems from improper input validation. An unauthenticated attacker can exploit this flaw by sending specially crafted GraphQL requests, causing the GitLab instance to become unresponsive, effectively denying service to legitimate users. The affected versions include all versions from 18.5 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1…&lt;/p>
</content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>denial-of-service</category><category>graphql</category><category>gitlab</category><category>cve-2026-3988</category></item><item><title>GitLab GraphQL CSRF Vulnerability (CVE-2026-3857)</title><link>https://feed.craftedsignal.io/briefs/2026-03-gitlab-csrf/</link><pubDate>Thu, 26 Mar 2026 12:00:00 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-03-gitlab-csrf/</guid><description>CVE-2026-3857 describes a vulnerability in GitLab CE/EE versions 17.10 before 18.8.7, 18.9 before 18.9.3, and 18.10 before 18.10.1, where an unauthenticated user can execute arbitrary GraphQL mutations on behalf of authenticated users due to insufficient CSRF protection, potentially leading to data modification or privilege escalation.</description><content:encoded>&lt;p>GitLab has addressed a critical security flaw, identified as CVE-2026-3857, within its Community Edition (CE) and Enterprise Edition (EE). This vulnerability impacts GitLab instances running versions 17.10 up to, but not including, 18.8.7, versions 18.9 up to 18.9.3, and versions 18.10 up to 18.10.1.  The core issue lies in insufficient Cross-Site Request Forgery (CSRF) protection when handling GraphQL mutations. An unauthenticated attacker could exploit this by crafting malicious web pages…&lt;/p>
</content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>gitlab</category><category>csrf</category><category>cve-2026-3857</category><category>graphql</category></item></channel></rss>