Serverless Offline 8.0.0 zwraca kod HTTP 403 dla tras kończących się znakiem '/', podczas gdy rzeczywiste środowisko Amazon AWS zwraca kod 200. Rozbieżność ta może skłonić dewelopera do wdrożenia nieprawidłowej logiki kontroli dostępu, skutkującej nadmiernym przyznaniem uprawnień w środowisku produkcyjnym.
▸ Pokaż oryginał (EN)
Serverless Offline 8.0.0 returns a 403 HTTP status code for a route that has a trailing / character, which might cause a developer to implement incorrect access control, because the actual behavior within the Amazon AWS environment is a 200 HTTP status code (i.e., possibly greater than expected permissions).
Narzędzie Serverless Offline służy do lokalnego emulowania środowiska AWS Lambda i API Gateway. W wersji 8.0.0 żądania kierowane do tras zawierających końcowy znak '/' (trailing slash) są obsługiwane niezgodnie ze specyfikacją AWS — lokalnie zwracany jest kod 403 (Forbidden), podczas gdy AWS odpowiada kodem 200 (OK). Deweloper testujący aplikację lokalnie może błędnie uznać, że dostęp do takiej trasy jest blokowany, i pominąć właściwą implementację mechanizmów autoryzacji. W środowisku produkcyjnym AWS trasa ta pozostaje jednak dostępna, co prowadzi do nieświadomego otwarcia zasobu bez odpowiedniej ochrony.
Atakujący może uzyskać nieautoryzowany dostęp do zasobów API (potencjalnie z pełnym zakresem uprawnień: odczyt, zapis, wpływ na dostępność), jeśli deweloper zaniechał implementacji kontroli dostępu dla tras z trailing slash w oparciu o błędne założenia wynikające z testów lokalnych.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dodatkowo zaleca się weryfikację logiki kontroli dostępu dla wszystkich tras API — zarówno z trailing slash, jak i bez — bezpośrednio w środowisku AWS, nie opierając się wyłącznie na wynikach testów lokalnych w Serverless Offline.
Serverless Offline w wersji 8.0.0 (projekt Serverless Offline Project)
Podatność ma charakter rozbieżności behawioralnej między emulatorem a rzeczywistym środowiskiem AWS, co klasyfikuje ją jako problem z nieprawidłową obsługą wyjątków (CWE-755). Ryzyko materializuje się wyłącznie wtedy, gdy deweloper podejmie decyzje projektowe o kontroli dostępu na podstawie zachowania lokalnego emulatora bez weryfikacji w AWS.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HServerless Offline Project Serverless Offline
APPServerless Offline Project8.0.0