IDOR en la API de Order de Prospero Flow CRM permite leer y modificar pedidos de otras empresas
Descripción
Authorization Bypass Through User-Controlled Key (CWE-639) en los controladores de la API REST de Order y OrderItem (OrderReadController, OrderUpdateController, OrderItemReadController, OrderItemUpdateController y OrderItemDeleteController, en app/Http/Controllers/Api/Order/), expuestos en GET /api/order/{id}, PUT /api/order/{id}, GET /api/order-item/{id}, PUT /api/order-item/{id} y DELETE /api/order-item/{id}, en Prospero Flow CRM <5.5.3, que permite a un atacante remoto y autenticado leer, modificar y eliminar órdenes y líneas de pedido pertenecientes a cualquier otra empresa (tenant) proporcionando un {id} numérico secuencial, debido a que los controladores resuelven los registros con Order::find($id) / Item::find($id) sin aplicar ningún filtrado por empresa, a diferencia de OrderDeleteController, que filtra con where('company_id', Auth::user()->company_id). La ruta de lectura expone PII de clientes de terceros (nombre, email, teléfono, VAT, dirección completa y geolocalización), datos del vendedor y de la empresa, y el campo signature_html sin sanitizar, mientras que la ruta de escritura permite manipular el importe y el estado de las órdenes. Dado que los IDs son enteros secuenciales y no existe limitación de tasa, un atacante puede enumerar y exfiltrar o alterar registros de todos los tenants de la instancia. Esto resulta en la divulgación y modificación entre tenants de datos personales y de negocio sensibles, rompiendo el aislamiento entre empresas de la plataforma multiempresa.
Tipo de vulnerabilidad (CWE)
CWE-639: Authorization Bypass Through User-Controlled Key
Versiones afectadas
Prospero Flow CRM posteriores a 4.6.0 y anteriores a 5.5.3. Los endpoints vulnerables de la API de Order y OrderItem se introdujeron después de la versión 4.6.0 y se corrigieron antes de la etiqueta 5.5.3, por lo que ninguna versión etiquetada se distribuyó vulnerable. Estado por defecto: no afectado.
Puntuación (CVSS 4.0)
Alta
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
Solución
Actualizar a la versión 5.5.3 o superior.
Parche
Commit 9a859c4d
Créditos
- theoffsecgirl - finder (descubridor)
- Cristian Fernandez Cornejo - analyst (analista)
- Xoán M. Otero Jorge - analyst (analista)
- Secur0 CNA - coordinator (coordinador)
- Gustavo Novaro - remediation developer (desarrollador de la corrección) Origen del descubrimiento: Externo Registro oficial: CVE-2026-59237