W Yii 2 Framework przed wersją 2.0.47 wykryto podatność SQL injection, która pozwala zdalnemu, nieuwierzytelnionemu atakującemu na wykonanie dowolnego kodu. Podatność otrzymała ocenę CVSS 9.8, co klasyfikuje ją jako krytyczną.
▸ Pokaż oryginał (EN)
SQL injection vulnerability found in Yii Framework Yii 2 Framework before v.2.0.47 allows the a remote attacker to execute arbitrary code via the runAction function. NOTE: the software maintainer's position is that the vulnerability is in third-party code, not in the framework.
Podatność zlokalizowana jest w funkcji runAction i umożliwia atakującemu wstrzyknięcie złośliwych zapytań SQL poprzez sieć, bez konieczności posiadania jakichkolwiek uprawnień ani interakcji ze strony użytkownika. Należy odnotować, że opiekunowie frameworka Yii stoją na stanowisku, iż rzeczywista podatność leży w kodzie zewnętrznych bibliotek (third-party), a nie bezpośrednio w samym frameworku.
Skuteczny atak może prowadzić do pełnego przejęcia kontroli nad systemem, w tym do odczytu, modyfikacji lub usunięcia danych, a także do zdalnego wykonania dowolnego kodu na serwerze.
Należy zaktualizować Yii 2 Framework do wersji 2.0.47 lub nowszej. Zaleca się również przegląd zależności third-party stosowanych w projekcie, ponieważ opiekunowie frameworka wskazują, że źródło podatności może leżeć w zewnętrznych bibliotekach.
Yii 2 Framework (yiisoft/yii2) w wersjach przed 2.0.47
Opiekunowie projektu Yii 2 kwestionują, że podatność leży bezpośrednio w frameworku — ich stanowisko jest takie, że błąd pochodzi z kodu zewnętrznego (third-party). Administratorzy powinni zapoznać się z dyskusją pod wskazanym zgłoszeniem GitHub (issue #19755), aby właściwie ocenić ryzyko w kontekście swojego środowiska.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HYiiframework Yii
APPYiiframework2.0.0 – 2.0.47
Powiązane podatności
Yii 2 — nieprawidłowa obsługa behavior z kluczem __class umożliwia RCE
Yii2: Instantiacja dowolnych klas przez metodę __set() w klasie Component
Path Traversal w Yii2 umożliwiający wykonanie dowolnego pliku PHP
Zdalne wykonanie kodu LUA w Yii Framework przez rozszerzenie Redis
SQL Injection w Yii 2.x — podatna funkcja findByCondition()