Klient mógł otworzyć fakturę innego klienta
- Gdzie
- Panel klienta, faktury
- Jak to sprawdziłem
- Zalogowałem się jako klient A i w adresie faktury zmieniłem numer na fakturę klienta B.
- Co to oznacza dla firmy
- Każdy zalogowany klient mógł pobrać faktury innych osób: imiona, adresy i kwoty. To wyciek danych osobowych, który trzeba zgłosić do UODO w ciągu 72 godzin.
- Poprawka
- Serwer sprawdza teraz, czy faktura należy do zalogowanego klienta, zanim ją wyda.
Test
portal.forma.pl/faktury/1044
Brak dostępu do tej faktury
Klient A widzi tylko swoje faktury. Własna faktura nadal się otwiera.
Zmiana w kodzie dla zespołu
const invoice = await db.invoice.findUnique({ where: { id: params.id },});const invoice = await db.invoice.findFirst({ where: { id: params.id, customerId: session.customerId },});if (!invoice) return forbidden();