Podatność typu SQL injection w frameworku Yii 2.x przed wersją 2.0.15 umożliwia zdalnym atakującym wykonanie dowolnych zapytań SQL bez uwierzytelnienia. Błąd jest szczególnie groźny, ponieważ wynika z nieudokumentowanego wymagania sanityzacji danych wejściowych w postaci tablic.
▸ Pokaż oryginał (EN)
The findByCondition function in framework/db/ActiveRecord.php in Yii 2.x before 2.0.15 allows remote attackers to conduct SQL injection attacks via a findOne() or findAll() call, unless a developer recognizes an undocumented need to sanitize array input.
Podatność tkwi w funkcji findByCondition() zlokalizowanej w pliku framework/db/ActiveRecord.php. Atakujący może dostarczyć spreparowane dane w postaci tablicy jako argument do metod findOne() lub findAll(), co prowadzi do wstrzyknięcia złośliwego kodu SQL do wykonywanego zapytania. Problem wynika z braku odpowiedniej walidacji i sanityzacji danych tablicowych, a fakt, że wymaganie to nie było udokumentowane, sprawia, iż wielu programistów mogło nieświadomie tworzyć podatny kod aplikacji.
Atakujący może uzyskać nieautoryzowany odczyt, modyfikację lub usunięcie danych w bazie danych, a w zależności od konfiguracji serwera bazy danych możliwe jest również przejęcie pełnej kontroli nad systemem.
Należy zaktualizować Yii Framework do wersji 2.0.15 lub nowszej, która zawiera poprawki bezpieczeństwa opisane przez producenta. Szczegóły dostępne są w oficjalnym komunikacie producenta pod adresem: http://www.yiiframework.com/news/168/releasing-yii-2-0-15-and-database-extensions-with-security-fixes/
Yii Framework w wersjach 2.x przed 2.0.15
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HYiiframework Yii
APPYiiframework2.0.0 – 2.0.15 (bez)
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
SQL injection w Yii 2 Framework umożliwiający zdalne wykonanie kodu
Zdalne wykonanie kodu LUA w Yii Framework przez rozszerzenie Redis