CRITICAL✓ PATCH🇬🇧 English

CVE-2018-7269

SQL Injection w Yii 2.x — podatna funkcja findByCondition()

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

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.

🤖 Analiza AI
Jak działa

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.

Skutki

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.

Mitygacja

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/

Kogo dotyczy

Yii Framework w wersjach 2.x przed 2.0.15

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

    APP
    Yiiframework
    2.0.0 – 2.0.15 (bez)
🟢
PATCH DOSTĘPNY
Aktualizacja od producenta gotowa. Wdrożenie w ramach standardowego cyklu.
Tagi
SQLi
CWE
Referencje

Powiązane podatności

CVE-2024-58136CRITICAL9.0⚠ KEVPL ✓ten sam produkt

Yii 2 — nieprawidłowa obsługa behavior z kluczem __class umożliwia RCE

CVE-2024-4990CRITICAL9.1PL ✓ten sam produkt

Yii2: Instantiacja dowolnych klas przez metodę __set() w klasie Component

CVE-2015-5467CRITICAL9.8PL ✓ten sam produkt

Path Traversal w Yii2 umożliwiający wykonanie dowolnego pliku PHP

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

SQL injection w Yii 2 Framework umożliwiający zdalne wykonanie kodu

CVE-2018-8073CRITICAL9.8PL ✓ten sam produkt

Zdalne wykonanie kodu LUA w Yii Framework przez rozszerzenie Redis