CVE-2026-1169
NixOS vulnerability analysis and mitigation

Overview

CVE-2026-1169 is a Cross-Site Request Forgery (CSRF) vulnerability with missing authorization controls affecting birkir/prime, an open-source self-hosted headless GraphQL CMS. The vulnerability affects all versions of birkir prime up to and including 0.4.0.beta.0 and was publicly disclosed on January 19, 2026, after the project was notified via a GitHub issue report (opened January 4, 2026) but did not respond (GitHub Issue, Feedly). NIST NVD assigned a CVSS v3.1 base score of 8.8 (High), while the CNA (VulDB) assigned a lower score of 4.3 (Medium) (NVD).

Technical details

The vulnerability is classified under CWE-352 (Cross-Site Request Forgery) and CWE-862 (Missing Authorization). The root cause is that birkir prime's GraphQL endpoint (/graphql) accepts query requests via the HTTP GET method without enforcing CSRF token validation or proper authorization checks, allowing state-changing operations to be triggered through crafted URLs (GitHub Issue). An attacker can craft a malicious link or web page that, when visited by an authenticated user, sends a GET-based GraphQL query to the victim's prime instance — exploiting the browser's automatic inclusion of session cookies. A proof-of-concept was publicly disclosed in the GitHub issue: curl -X GET 'http://<target>/graphql?query=query+cop+%7B__typename%7D' (GitHub Issue).

Impact

Successful exploitation allows remote attackers to perform unauthorized actions on behalf of authenticated users, including modification of CMS content, user account changes, and data integrity compromise. Because prime is a headless CMS managing content and schema, CSRF exploitation could result in unauthorized content publication, deletion, or schema manipulation. The public availability of a PoC increases the risk of exploitation against organizations running self-hosted prime instances (Feedly, GitHub Issue).

Exploitability

A proof-of-concept exploit is publicly available via the GitHub issue tracker (GitHub Issue). The EPSS score is approximately 0.015% (0.000150), indicating low but non-zero probability of exploitation in the wild. There is no current evidence of active in-the-wild exploitation, no known threat actor attribution, and the vulnerability is not listed in the CISA KEV catalog. The CVSSv4.0 exploit maturity is rated as PROOF_OF_CONCEPT (Feedly).

Exploitation steps

  1. Reconnaissance: Identify publicly accessible birkir prime instances (version ≤ 0.4.0.beta.0) using search engines or Shodan, looking for exposed /graphql endpoints.
  2. Verify GET-based GraphQL support: Confirm the target accepts GraphQL queries via HTTP GET by sending a benign introspection query: curl -X GET 'http://<target>/graphql?query=query+%7B__typename%7D' and checking for a valid JSON response (GitHub Issue).
  3. Craft malicious payload: Construct a GraphQL mutation or query URL that performs a privileged action (e.g., modifying content or user data) encoded as a GET parameter: http://<target>/graphql?query=mutation+%7B...%7D.
  4. Deliver to authenticated victim: Embed the crafted URL in a malicious web page (e.g., <img src="..."> or <a href="...">) or phishing email targeting a user with an active authenticated session on the prime instance.
  5. Trigger unauthorized action: When the authenticated victim visits the attacker-controlled page, the browser automatically sends the GET request with the victim's session cookies, causing the GraphQL operation to execute with the victim's privileges (GitHub Issue).

Indicators of compromise

  • Network: Unusual HTTP GET requests to /graphql containing encoded mutation or privileged query parameters from unexpected source IPs or referrers; requests with User-Agent: oxpecker (as used in the disclosed PoC).
  • Logs: Web server access logs showing GET requests to /graphql with query= parameters containing mutation operations or sensitive data queries from unauthenticated or unexpected sessions.
  • Application: Unexpected content changes, schema modifications, or user account alterations in the prime CMS without corresponding admin activity in audit logs.
  • Process/Session: GraphQL operations executed under authenticated user sessions originating from unusual referrer headers or cross-origin requests.

Mitigation and workarounds

No official patch has been released by the birkir/prime project as of the time of disclosure, and the project has not responded to the issue report (GitHub Issue). Recommended mitigations include: (1) disabling GET-based GraphQL queries at the server or reverse proxy level, enforcing POST-only for the /graphql endpoint; (2) implementing CSRF token validation for all state-changing GraphQL operations; (3) setting SameSite=Strict or SameSite=Lax on session cookies to prevent cross-site request inclusion; and (4) restricting access to the GraphQL endpoint via network-level controls (e.g., firewall rules, VPN). Organizations should monitor the GitHub repository for an official patch release (Feedly).

Community reactions

The vulnerability was reported by a researcher (NinjaGPT) via a GitHub issue on January 4, 2026, with no response from the project maintainer as of disclosure (GitHub Issue). A security advisory was published by zast.ai covering this and other unpatched vulnerabilities in prime's GraphQL implementation (zast.ai Advisory). Red Hat tracked the CVE but assigned it an "Unknown" status, reflecting the lack of vendor response (Red Hat). Community coverage has been limited to automated vulnerability aggregators and a brief write-up on infinitsec.net.

Additional resources


SourceThis report was generated using AI

Related NixOS vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-13097CRITICAL9.1
  • NixOS logoNixOS
  • python3-samba-test
NoYesAug 20, 2026
CVE-2026-11861HIGH8.1
  • NixOS logoNixOS
  • samba-common
NoYesAug 20, 2026
CVE-2026-73198HIGH7.5
  • NixOS logoNixOS
  • ctdb-ceph-mutex
NoYesAug 20, 2026
CVE-2026-73197HIGH7.5
  • NixOS logoNixOS
  • samba-test-libs-debuginfo
NoYesAug 20, 2026
CVE-2026-73196MEDIUM6.5
  • NixOS logoNixOS
  • samba-ldb-ldap-modules-debuginfo
NoYesAug 20, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management