Klient może odczytać zamówienie innego klienta
W modelu uwierzytelniony klient uzyskuje dostęp do cudzego zamówienia. W sklepie wpływ na poufność zależałby od ujawnionych pól i liczby dostępnych rekordów.
- Zaobserwowany problem
- Test zmienia identyfikator zamówienia, zachowując tożsamość drugiego klienta. Odczyt bez kontroli uprawnień zwraca 1 cudze zamówienie ze statusem 200.
- Zalecana zmiana
- Chroń dane zamówień. Sprawdzaj właściciela przy każdym odczycie i zmianie; tożsamość pobieraj z uwierzytelnionego kontekstu serwera. Odmawiaj dostępu, gdy nie można potwierdzić reguły.
- Weryfikacja i dalsze testy
- Powtórz próbę między kontami i potwierdź brak danych zamówienia. W rzeczywistym API zachowaj test właściciela oraz testy brakującego zamówienia i nieuwierzytelnionego żądania.
Przed zmianą
Ujawnione cudze zamówienia: 1; status 200.
Po zmianie
Ujawnione cudze zamówienia: 0; status 403.