Lecture et modification des factures de tous les clients
Un utilisateur authentifié accède aux factures de n'importe quel autre client en changeant l'identifiant dans l'URL. 12 400 documents exposés, IBAN compris.
GET /api/v2/invoices/48213 HTTP/2 Host: app.acme.fr Authorization: Bearer eyJhbGci… # compte « client B » HTTP/2 200 OK { "id": 48213, "customer": "Client A — SAS ", "iban": "FR76 4021" }
✓ Rejoué 3× · script de reproduction joint en annexe
// invoices.controller.ts - const invoice = await Invoice.findById(req.params.id); + const invoice = await Invoice.findOne({ + _id: req.params.id, + tenantId: req.user.tenantId, + }); + if (!invoice) return res.sendStatus(404);
✓ Correctif écrit pour votre stack, pas une recommandation générique
- Faille identifiée, exploitée
- Appel au RSSI (sévérité critique)
- Correctif déployé par l'équipe
- Contre-audit : exploitation impossible