{"id":"CVE-2026-78365","state":"PUBLISHED","title":"IDOR and missing authorization in Prospero Flow CRM supplier API allows cross-tenant read and modification","description":"Authorization Bypass Through User-Controlled Key in the supplier API in Roskus Prospero Flow CRM 4.0.0 through 5.3.1 allows any authenticated user to read and modify another company's supplier record, and to reassign it to their own company, via a PUT request to /api/supplier/{id} setting company_id in the body.","publishedAt":"2026-08-24T12:49:36.802Z","updatedAt":"2026-08-24T13:01:26.201Z","severity":{"score":9.3,"label":"Critical","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","source":"Secur0"},"assigner":"Secur0","products":["Roskus Prospero Flow CRM"],"affected":[{"vendor":"Roskus","product":"Prospero Flow CRM","defaultStatus":"unaffected","versions":[{"version":"4.0.0","status":"affected","lessThan":"5.3.2","versionType":"semver"}],"repo":"https://github.com/Roskus/prospero-flow-crm","modules":["Supplier API"],"programFiles":["app/Http/Controllers/Api/Supplier/SupplierUpdateController.php"]}],"references":["https://github.com/Roskus/prospero-flow-crm/commit/4a52477e6ed66afa436814c80e7bcd68670dd596","https://github.com/Roskus/prospero-flow-crm/releases/tag/v5.5.3","https://secur0.com/en/cna/cve-list/cve-2026-78365-idor-supplier-api-cross-tenant-update"],"weaknesses":["CWE-639","CWE-862"],"ingestedAt":"2026-10-29T20:13:07.220Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/78xxx/CVE-2026-78365.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-78365","state":"PUBLISHED","datePublished":"2026-08-24T12:49:36.802Z","dateUpdated":"2026-08-24T13:01:26.201Z","assignerShortName":"Secur0","assignerOrgId":"4daa8cea-433a-44bd-9456-53b127fc289a","dateReserved":"2026-08-24T11:49:04.308Z"},"containers":{"cna":{"title":"IDOR and missing authorization in Prospero Flow CRM supplier API allows cross-tenant read and modification","descriptions":[{"lang":"en","value":"Authorization Bypass Through User-Controlled Key in the supplier API in Roskus Prospero Flow CRM 4.0.0 through 5.3.1 allows any authenticated user to read and modify another company's supplier record, and to reassign it to their own company, via a PUT request to /api/supplier/{id} setting company_id in the body."}],"affected":[{"vendor":"Roskus","product":"Prospero Flow CRM","defaultStatus":"unaffected","versions":[{"version":"4.0.0","status":"affected","lessThan":"5.3.2","versionType":"semver"}],"repo":"https://github.com/Roskus/prospero-flow-crm","modules":["Supplier API"],"programFiles":["app/Http/Controllers/Api/Supplier/SupplierUpdateController.php"]}],"references":[{"url":"https://github.com/Roskus/prospero-flow-crm/commit/4a52477e6ed66afa436814c80e7bcd68670dd596","tags":["patch"]},{"url":"https://github.com/Roskus/prospero-flow-crm/releases/tag/v5.5.3","tags":["release-notes"]},{"url":"https://secur0.com/en/cna/cve-list/cve-2026-78365-idor-supplier-api-cross-tenant-update","tags":["third-party-advisory","technical-description"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","subConfidentialityImpact":"NONE","vulnIntegrityImpact":"HIGH","subIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"CRITICAL","baseScore":9.3,"vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-639","lang":"en","description":"CWE-639 Authorization bypass through User-Controlled key","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-862","lang":"en","description":"CWE-862 Missing Authorization","type":"CWE"}]}],"providerMetadata":{"shortName":"Secur0","orgId":"4daa8cea-433a-44bd-9456-53b127fc289a","dateUpdated":"2026-08-24T12:49:36.802Z"},"datePublic":"2026-08-24T11:52:00.000Z","impacts":[{"capecId":"CAPEC-1","descriptions":[{"lang":"en","value":"CAPEC-1 Accessing Functionality Not Properly Constrained by ACLs"}]}],"cpeApplicability":[{"operator":"OR","nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:roskus:prospero_flow_crm:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0.0","versionEndExcluding":"5.3.2"}]}]}],"tags":["x_open-source"],"solutions":[{"lang":"en","value":"Upgrade to 5.3.2 or later; first tagged release with the fix is v5.5.3. Review the supplier table for altered company_id values and rotate exposed order-portal credentials and bank details.","supportingMedia":[{"type":"text/html","base64":false,"value":"Upgrade to 5.3.2 or later; first tagged release with the fix is v5.5.3. Review the <code>supplier</code> table for altered <code>company_id</code> values and rotate exposed order-portal credentials and bank details."}]}],"credits":[{"lang":"en","value":"Antonio Rivera Poblete","type":"finder"},{"lang":"en","value":"Xoán M. Otero Jorge","type":"analyst"},{"lang":"en","value":"Cristian Fernández Cornejo","type":"analyst"},{"lang":"en","value":"Secur0 CNA","type":"coordinator"},{"lang":"en","value":"Gustavo Novaro","type":"remediation developer"}],"source":{"discovery":"EXTERNAL"},"x_generator":{"engine":"Vulnogram 1.0.4"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-78365","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-08-24T12:58:38.578036Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-08-24T13:01:26.201Z"}}]}}}