Przykładowa aplikacja webowa dostarczana z Web2Py przed wersją 2.14.2 zawiera hardkodowany klucz szyfrowania używany przy wywołaniu funkcji session.connect. Podatność umożliwia zdalnym atakującym wykonanie dowolnego kodu bez uwierzytelnienia.
▸ Pokaż oryginał (EN)
The sample web application in web2py before 2.14.2 might allow remote attackers to execute arbitrary code via vectors involving use of a hardcoded encryption key when calling the session.connect function.
Aplikacja przykładowa w Web2Py używa statycznego, z góry zdefiniowanego (hardkodowanego) klucza szyfrowania podczas nawiązywania sesji przez funkcję session.connect. Znajomość tego klucza pozwala atakującemu spreparować złośliwy, podpisany obiekt sesji. Podczas deserializacji takiego obiektu po stronie serwera dochodzi do wykonania osadzonego kodu (unserialize code execution).
Atakujący zdalny, nieuwierzytelniony może uzyskać pełną kontrolę nad serwerem — wykonać dowolny kod, skompromitować poufność, integralność i dostępność systemu.
Należy zaktualizować Web2Py do wersji 2.14.2 lub nowszej. Jeśli natychmiastowa aktualizacja nie jest możliwa, należy usunąć lub wyłączyć przykładową aplikację webową z wdrożenia produkcyjnego. Dostępna jest również poprawka w ramach Ubuntu Security Notice USN-4030-1.
Web2Py w wersjach przed 2.14.2 — konkretnie przykładowa aplikacja webowa dołączana do pakietu (applications/examples/models/session.py).
Podatność dotyczy wyłącznie przykładowej aplikacji dołączanej do Web2Py, a nie samego frameworka. Wdrożenia produkcyjne, które nie udostępniają tej aplikacji przykładowej, są mniej narażone. Mechanizm ataku opisano jako unserialize code execution z użyciem hardkodowanego klucza (CWE-798).
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWeb2py
APPWeb2Py< 2.14.2
Powiązane podatności
OS command injection w Web2Py przez notifySendHandler
Web2Py: deserializacja sesji przez pickle umożliwia RCE
Web2Py: brak weryfikacji blokady hosta przed sprawdzeniem hasła (brute-force)
web2py before 2.14.1, when using the standalone version, allows remote attackers to obtain environment variabl...
Web2py versions 2.14.5 and below was affected by Local File Inclusion vulnerability, which allows a malicious ...