Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed Craftplan API
-
DeliverySend anonymous POST /api/json/customers or create_customer mutation
-
ExploitServer skips authorization check (CWE-862)
-
ExecutionAttacker-chosen customer record inserted
-
ImpactCRM polluted with fraudulent data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | No special conditions beyond network reachability - remote unauthenticated exploitation against a Craftplan instance (through 0.7.5) whose JSON:API (POST /api/json/customers) or GraphQL endpoint (create_customer mutation) is exposed to the attacker. The limiting factors are deployment-driven rather than technical: the instance's API must be network-reachable to the attacker, and impact is confined to CREATING new CRM customer records - the flaw does not grant read access to existing customer data, nor the ability to modify or delete existing records, so the realistic worst case is CRM data pollution/spam rather than compromise of confidentiality or system availability. |
| Impact | This is a genuine but modest-severity integrity-only issue, not a top priority. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) confirms remote, unauthenticated, low-complexity reachability with no user interaction, which is why it scores 6.9 - the attack surface is maximally open. However, impact is deliberately narrow: VI:L with VC:N and VA:N means the only consequence is that an attacker can INSERT attacker-chosen customer records; there is no data disclosure, no modification/deletion of existing records implied, and no availability loss. No EPSS score was supplied, the CVE is NOT in CISA KEV, and no public exploit code is referenced, so there is no evidence of active exploitation or weaponization - exploitation status is 'no public exploit identified at time of analysis.' The signals are internally consistent (easy to reach, limited to low-integrity write), so there is no network-vs-local contradiction to resolve. Real-world risk is driven far more by the product's tiny deployment footprint than by the flaw itself: a trivially exploitable write primitive into an obscure open-source CRM is a data-pollution/spam nuisance, not a widespread threat. |
| Exploit ScenarioDerived | An attacker, without any account or token, sends an anonymous HTTP POST to /api/json/customers (or issues the create_customer GraphQL mutation) against an internet-exposed Craftplan instance and injects fabricated customer names, contact details, and addresses into the operator's CRM. Because the request requires no authentication and no user interaction, it is scriptable for bulk record injection (CRM spam/poisoning). No public proof-of-concept is referenced, though the HackMD writeup and VulnCheck advisory describe the exact endpoints. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Unauthenticated attackers can create arbitrary CRM customer records in Craftplan through 0.7.5 by abusing missing authorization on the JSON:API POST /api/json/customers endpoint and the GraphQL create_customer mutation (CWE-862). The issue is remote and requires only network reachability, with impact limited to integrity - insertion of attacker-chosen names, contact details, and addresses into the operator's CRM - without read access to existing records or ability to modify or delete them. Rated CVSS 4.0 6.9 and independently assessed as an integrity-only modest-severity issue, no public exploit identified at time of analysis and no CISA KEV active exploitation is confirmed.
RemediationAI
No vendor-released patch identified at time of analysis; monitor the VulnCheck advisory (https://www.vulncheck.com/advisories/craftplan-through-0.7.5-missing-authorization-via-crm-customer-json-api-and-graphql) and https://github.com/puemos/craftplan for a fixed release. Until a patch is available, block unauthenticated POST requests to /api/json/customers and the GraphQL create_customer mutation at an upstream reverse proxy, WAF, or API gateway; doing so restores the missing authorization check for the CRM Customer resource but may break legitimate integrations that rely on anonymous customer creation. Restrict the JSON:API and GraphQL endpoints to trusted networks or require authentication at the proxy layer, accepting reduced API accessibility for external clients. If you maintain a fork, apply the api_scope_check enforcement (as referenced in lib/craftplan/accounts/checks/api_scope_check.ex) to the customer create path in lib/craftplan/crm/customer.ex, but test for regressions with existing CRM workflows and note that code changes must be deployed to each Craftplan instance.
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
Craftplan is an Elixir/Phoenix application (CPE cpe:2.3:a:puemos:craftplan:*:*:*:*:*:*:*:*) that exposes CRM resources through JSON:API and GraphQL. CWE-862 (Missing Authorization) is the root cause: the CRM Customer create action lacks an authorization plug or scope check, allowing unauthenticated requests to invoke it. The referenced code at lib/craftplan/crm/customer.ex lines 91-94 implements the create logic, while lib/craftplan/accounts/checks/api_scope_check.ex lines 33-40 defines the API scope enforcement that is not applied to this resource. Consequently, both POST /api/json/customers and the GraphQL create_customer mutation accept anonymous input and persist records, which enables CRM data pollution or spam rather than confidentiality or availability compromise.
Know when Craftplan 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:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Remote, no auth and no interaction to reach the endpoint (AV:N/AC:L/PR:N/UI:N); only unauthorized record creation gives I:L, with no read (C:N) or availability (A:N) impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Craftplan through 0.7.5 contains a missing authorization vulnerability in the CRM Customer resource that allows unauthenticated attackers to create customer records via JSON:API and GraphQL. Attackers can send anonymous requests to POST /api/json/customers or the create_customer mutation to insert attacker-chosen names, contact details and addresses into the operator's CRM.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-102493
GHSA-4pw4-44qq-2vmv
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB