W Yii2 w wersji 2.0.48 bazowa klasa Component zawiera podatność (CWE-470) umożliwiającą atakującemu zdalnie i bez uwierzytelnienia inicjalizację dowolnych klas PHP. W zależności od zainstalowanych zależności może to prowadzić do wykonania kodu, wycieku danych lub nieautoryzowanego dostępu.
▸ Pokaż oryginał (EN)
In yiisoft/yii2 version 2.0.48, the base Component class contains a vulnerability where the `__set()` magic method does not validate that the value passed is a valid Behavior class name or configuration. This allows an attacker to instantiate arbitrary classes, passing parameters to their constructors and invoking setter methods. Depending on the installed dependencies, various types of attacks are possible, including the execution of arbitrary code, retrieval of sensitive information, and unauthorized access.
Metoda magiczna `__set()` klasy Component nie weryfikuje, czy przekazana wartość jest poprawną nazwą klasy Behavior ani prawidłową konfiguracją. Atakujący może w efekcie zmusić aplikację do instancjacji dowolnej klasy dostępnej w środowisku PHP, przekazując parametry do jej konstruktora oraz wywołując metody setter. Podatność jest eksploitowalna zdalnie, bez uwierzytelnienia i bez wymaganej interakcji użytkownika (wektor CVSS: AV:N/AC:L/PR:N/UI:N). Konkretne skutki zależą od klas dostępnych w projekcie i jego zależnościach (atak typu 'PHP Object/Class Instantiation Gadget Chain').
Atakujący może doprowadzić do wykonania dowolnego kodu (RCE), pozyskania wrażliwych informacji lub uzyskania nieautoryzowanego dostępu do systemu. Wpływ na poufność i dostępność oceniony jako wysoki (C:H, A:H).
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Zaleca się pilną aktualizację biblioteki yiisoft/yii2 powyżej wersji 2.0.48 oraz weryfikację zainstalowanych zależności pod kątem potencjalnych gadget chain.
Yiiframework Yii2 (yiisoft/yii2) w wersji 2.0.48
Podatność zgłoszona za pośrednictwem platformy Huntr (bounty 4fbdd965-02b6-42e4-b57b-f98f93415b8f). Stopień zagrożenia może być wyższy w środowiskach z rozbudowanymi zależnościami PHP, które dostarczają klas podatnych na nadużycie jako gadget chain.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:HYiiframework Yii
APPYiiframework2.0.48
Powiązane podatności
Yii 2 — nieprawidłowa obsługa behavior z kluczem __class umożliwia RCE
web\ViewAction in Yii (aka Yii2) 2.x before 2.0.5 allows attackers to execute any local .php file via a relati...
SQL injection vulnerability found in Yii Framework Yii 2 Framework before v.2.0.47 allows the a remote attacke...
Yii 2.x before 2.0.15 allows remote attackers to execute arbitrary LUA code via a variant of the CVE-2018-7269...
The findByCondition function in framework/db/ActiveRecord.php in Yii 2.x before 2.0.15 allows remote attackers...