CVE-2026-48062
KrytyczneCVSS 9.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 36 - wyżej niż 36% wszystkich znanych CVE
Streszczenie
CodeIgniter przed wersją 4.7.3 zawiera podatność w regule walidacji ext_in, która sprawdza rozszerzenie na podstawie wykrytego typu MIME, a nie rzeczywistego rozszerzenia pliku. Plik o nazwie shell.php z treścią GIF może przejść walidację, co może prowadzić do wykonania dowolnego kodu.
Ocena ryzyka
Atakujący może przesłać plik PHP udający obraz, który po zapisaniu na serwerze może zostać wykonany, prowadząc do zdalnego wykonania kodu i przejęcia serwera.
Rekomendacja
Należy zaktualizować CodeIgniter do wersji 4.7.3 lub nowszej.
Inne podatności w CodeIgniter
Zobacz wszystkie- CVE-2017-1000247Wysokie
CodeIgniter w wersji 3.1.3, używany przez British Columbia Institute of Technology, jest podatny na wstrzyknięcie nagłówków HTTP w funkcji set_status_header() pod Apache, co prowadzi do luk związanych z wstrzyknięciem nagłówków HTTP.
- CVE-2026-63223Krytyczne
CodeIgniter przed wersją 4.7.4 zawiera podatność w regułach walidacji is_image i mime_in, które nie wymuszają bezpiecznego rozszerzenia pliku. Zdalny atakujący może przesłać plik wykonywalny, jeśli aplikacja zachowuje oryginalną nazwę pliku i przechowuje go w katalogu dostępnym z sieci, gdzie PHP może być wykonywane.
- CVE-2026-63221Krytyczne
CodeIgniter od wersji 4.3.0 do 4.7.3 zawiera podatność w metodzie deleteBatch() Query Buildera, która podstawia wartości z warunków where() do wygenerowanego SQL bez uwzględniania flag ucieczki. Pozwala to na wstrzyknięcie SQL przez kontrolowane przez użytkownika wartości warunków.
- CVE-2014-8686Krytyczne
CodeIgniter przed wersją 2.2.0 ułatwia atakującym dekodowanie ciasteczek sesyjnych poprzez wykorzystanie alternatywnego szyfrowania opartego na XOR, gdy rozszerzenie Mcrypt dla PHP nie jest dostępne.
- CVE-2026-63222Wysokie
CodeIgniter przed wersją 4.7.4 zawiera podatność w metodzie UploadedFile::move(). Wywołanie jej bez drugiego argumentu używa nazwy pliku podanej przez klienta bez sanityzacji, co pozwala zdalnemu atakującemu na użycie sekwencji przejścia do katalogu nadrzędnego (path traversal) i zapisanie przesłanej zawartości poza zamierzonym katalogiem.
- CVE-2026-63220Średnie
W CodeIgniter przed wersją 4.7.4, metoda IncomingRequest::isSecure() ufa nagłówkom X-Forwarded-Proto i Front-End-Https, co pozwala atakującemu na podszycie się i błędne uznanie żądania HTTP za bezpieczne, co może wpłynąć na logikę wymuszającą HTTPS.
Oryginalny opis (angielski, źródło NVD)
CodeIgniter is a PHP full-stack web framework. Prior to 4.7.3, the ext_in upload validation rule in system/Validation/StrictRules/FileRules.php checked the MIME-derived guessed extension instead of the client-provided filename extension. As a result, an uploaded file named shell.php containing GIF-like content could pass validation such as uploaded[avatar]|is_image[avatar]|mime_in[avatar,image/gif]|ext_in[avatar,gif] because the detected MIME type maps to gif, even though the uploaded filename extension is php. Applications are impacted if they accept user-controlled uploads, rely on ext_in to validate the uploaded filename extension, save uploaded files using the original client filename with $file->move($path), store uploads in a web-accessible directory, and allow PHP or other executable files to run from that directory. In those conditions, this may lead to arbitrary code execution. This issue is fixed in version 4.7.3.

