Podatność typu BOLA (Broken Object Level Authorization) w aplikacji Easy!Appointments umożliwia nisko uprzywilejowanemu użytkownikowi nieautoryzowany odczyt, modyfikację lub usunięcie danych innych klientów. Ze względu na brak weryfikacji uprawnień na poziomie obiektów, zagrożenie dotyczy poufności i integralności danych przechowywanych w systemie.
▸ Pokaż oryginał (EN)
A BOLA vulnerability in GET, PUT, DELETE /customers/{customerId} allows a low privileged user to fetch, modify or delete a low privileged user (customer). This results in unauthorized access and unauthorized data manipulation.
Podatność dotyczy endpointów API: GET, PUT oraz DELETE /customers/{customerId}. Zalogowany użytkownik o niskich uprawnieniach może manipulować wartością parametru customerId w żądaniu HTTP, uzyskując tym samym dostęp do zasobów należących do innych użytkowników. Aplikacja nie weryfikuje, czy żądający użytkownik jest właścicielem wskazanego zasobu, co jest klasycznym przejawem błędu CWE-639 (Authorization Bypass Through User-Controlled Key). Atakujący może w ten sposób pobierać, nadpisywać lub trwale usuwać dane dowolnego klienta zarejestrowanego w systemie.
Atakujący może uzyskać nieautoryzowany dostęp do danych osobowych klientów, modyfikować te dane lub je trwale usuwać, co prowadzi do naruszenia poufności, integralności oraz dostępności danych przechowywanych w systemie.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się również wdrożenie weryfikacji uprawnień na poziomie obiektów (object-level authorization) dla wszystkich endpointów API operujących na zasobach użytkowników.
Aplikacja Easy!Appointments (easyappointments autorstwa alextselegidis) — wersje wskazane w referencjach producenta
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HEasyappointments
APPEasyappointments< 1.5.0
Powiązane podatności
EasyAppointments v.1.5.0 — privilege escalation przez index.php
BOLA w EasyAppointments — nieautoryzowany dostęp do webhooków innych użytkowników
BOLA w Easy!Appointments — nieautoryzowany dostęp do kont dostawców
BOLA w Easy!Appointments — privilege escalation do administratora
BOLA w EasyAppointments — nieuprawniony dostęp do wizyt innych użytkowników