CRITICAL🇬🇧 English

CVE-2016-3957

Web2Py: deserializacja sesji przez pickle umożliwia RCE

CVSS 9.8v3.0pub. 2018-02-06upd. 2024-11-21

Framework Web2Py przed wersją 2.14.2 deserializuje dane sesji przechowywane w ciasteczkach przy użyciu niebezpiecznej funkcji pickle.loads, co może umożliwić zdalnemu atakującemu wykonanie dowolnego kodu. Podatność jest krytyczna, ponieważ nie wymaga uwierzytelnienia ani interakcji użytkownika.

Pokaż oryginał (EN)

The secure_load function in gluon/utils.py in web2py before 2.14.2 uses pickle.loads to deserialize session information stored in cookies, which might allow remote attackers to execute arbitrary code by leveraging knowledge of encryption_key.

🤖 Analiza AI
Jak działa

Funkcja secure_load w pliku gluon/utils.py korzysta z pickle.loads do odtwarzania informacji o sesji zapisanych w ciasteczkach HTTP. Atakujący, który zna klucz szyfrujący (encryption_key) aplikacji, może spreparować złośliwy payload serializowany przez pickle i umieścić go w ciasteczku sesji. Po przesłaniu takiego ciasteczka do serwera, aplikacja deserializuje dane bez odpowiedniej walidacji, co prowadzi do wykonania osadzonego kodu po stronie serwera.

Skutki

Atakujący posiadający wiedzę o kluczu szyfrującym może wykonać dowolny kod na serwerze z uprawnieniami procesu aplikacji Web2Py, uzyskując pełną kontrolę nad systemem, dostęp do danych oraz możliwość dalszego ruchu w sieci (lateral movement).

Mitygacja

Należy zaktualizować Web2Py do wersji 2.14.2 lub nowszej, w której zastąpiono mechanizm deserializacji oparty na pickle bezpieczniejszym rozwiązaniem. Dodatkowo należy zrotować klucze szyfrujące (encryption_key) aplikacji, ponieważ ich znajomość jest warunkiem koniecznym do przeprowadzenia ataku.

Kogo dotyczy

Web2Py we wszystkich wersjach przed 2.14.2

Uwagi

Szczegółowa analiza techniczna podatności została opublikowana przez badaczy z devco.re w styczniu 2017 roku. Podatność objęta jest również biuletynem bezpieczeństwa Ubuntu USN-4030-1.

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Web2py

    APP
    Web2Py
    < 2.14.2
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEDeserialization
CWE
Referencje

Powiązane podatności

CVE-2023-45158CRITICAL9.8PL ✓ten sam produkt

OS command injection w Web2Py przez notifySendHandler

CVE-2016-3953CRITICAL9.8PL ✓ten sam produkt

Web2Py: RCE przez hardkodowany klucz szyfrowania w aplikacji przykładowej

CVE-2016-10321CRITICAL9.8PL ✓ten sam produkt

Web2Py: brak weryfikacji blokady hosta przed sprawdzeniem hasła (brute-force)

CVE-2016-3952HIGH7.8ten sam produkt

web2py before 2.14.1, when using the standalone version, allows remote attackers to obtain environment variabl...

CVE-2016-4806HIGH7.5ten sam produkt

Web2py versions 2.14.5 and below was affected by Local File Inclusion vulnerability, which allows a malicious ...