Concrete CMS w wersji 9.5.0 i wcześniejszych nie oczyszcza sekwencji path traversal w polu ptComposerFormLayoutSetControlCustomTemplate, co w połączeniu z luźną walidacją rozszerzeń plików podczas uploadu umożliwia zdalne wykonanie kodu (RCE). Podatność jest krytyczna, ponieważ pozwala atakującemu na pełną kompromitację serwera.
▸ Pokaż oryginał (EN)
Concrete CMS 9.5.0 and below fails to sanitize path traversal sequences in the ptComposerFormLayoutSetControlCustomTemplate field when saving page type composer form layouts. An authenticated rogue administrator with composer form editing rights can exploit this to include arbitrary readable files on the server. Combined with the file uploader's extension-only validation (which permits PHP code in files saved with image extensions like .png), this can result in authenticated remote code execution. The Concrete CMS security team gave this vulnerability a CVSS v.4.0 score of 9.4 with vector CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H Thanks Yonatan Drori (Tenzai) for reporting.
Uwierzytelniony administrator z uprawnieniami do edycji formularzy composer może wstrzyknąć sekwencje path traversal (np. '../') do pola ptComposerFormLayoutSetControlCustomTemplate podczas zapisywania layoutów formularza strony. Mechanizm ten pozwala na dołączenie (include) dowolnego czytalnego pliku na serwerze. Ponieważ uploader plików weryfikuje jedynie rozszerzenie (a nie rzeczywistą zawartość), atakujący może wcześniej przesłać plik zawierający kod PHP zapisany z rozszerzeniem graficznym (np. .png), a następnie wymusić jego dołączenie przez podatne pole – co skutkuje wykonaniem złośliwego kodu PHP.
Atakujący może odczytać dowolne pliki dostępne dla procesu serwera WWW oraz wykonać dowolny kod na serwerze (RCE), co może prowadzić do pełnego przejęcia kontroli nad systemem i środowiskiem hostującym aplikację.
Należy zaktualizować Concrete CMS do wersji 9.5.1 lub nowszej zgodnie z informacjami producenta dostępnymi pod adresem: https://documentation.concretecms.org/9-x/developers/introduction/version-history/951-release-notes
Concrete CMS w wersji 9.5.0 i niższych
Podatność zgłosił Yonatan Drori (Tenzai). Wymagane jest uwierzytelnienie z uprawnieniami administratora do edycji formularzy composer, co nieznacznie ogranicza wektor ataku, jednak nie zmniejsza krytyczności skutków eksploitacji.
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XConcretecms Concrete Cms
APPConcretecms≤ 9.5.0
Powiązane podatności
Concrete CMS before 8.5.13 and 9.x before 9.2.2 allows unauthorized access because directories can be created ...
Concrete 8.5.7 and below as well as Concrete 9.0 through 9.0.2 allow traversal in /index.php/ccm/system/file/u...
Concrete CMS Versions 9.0.0 through 9.0.2 and 8.5.7 and below can download zip files over HTTP and execute cod...
A Server-Side Request Forgery vulnerability was found in concrete5 < 8.5.5 that allowed a decimal notation enc...
An issue was discovered in Concrete CMS through 8.5.5. Path Traversal leading to RCE via external form by addi...