{"id":"CVE-2026-55739","published":"2026-08-05T08:16:33.903","lastModified":"2026-08-10T12:17:18.480","description":"Crater isolates data per company_id, and its Invoice/Estimate/Payment/Expense policies enforce both a Bouncer ability check and ->hasCompany(->company_id). CustomerPolicy's view/update/delete methods omit the company-ownership check entirely, checking only the blanket ability. Route-model-bound customer lookups and the bulk Customer::deleteCustomers method are similarly unscoped (self::find with no company filter).","cvssScore":8.3,"cvssSeverity":"HIGH","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L","cwes":["CWE-639"],"vendors":[],"products":[],"references":[{"url":"https://github.com/crater-invoice/crater","tags":[]}],"exploitRefs":[{"url":"https://github.com/crater-invoice/crater","tags":[]}],"hasPoc":true,"ai":{"summary":"The flaw allows unauthorized access to customer data by bypassing company ownership checks in certain methods, enabling potential data exfiltration or modification.","exploitability":"Exploitation requires knowledge of the system and specific conditions, making it moderately difficult but feasible with proper reconnaissance.","blast_radius":"If exploited, this could lead to significant data breaches affecting multiple companies' sensitive information.","remediation":"Implement company ownership checks in all CustomerPolicy methods and ensure that customer lookups are scoped by company_id.","tags":["auth-bypass","data-exposure","web"],"model":"qwen2.5:7b-instruct","analyzedAt":"2026-08-11T06:48:52.109Z"}}