W dniu dzisiejszym wydaliśmy kolejny update do DJ-Classifieds. Poprawka dotyczy bezpieczeństwa. Niestety w komponencie wykryto lukę. która mogłaby umożliwić włamanie. Nowa wersja eliminuje ten problem. Ci, którzy już używają komponentu na stronach produkcyjnych powinni dokonać poprawki w controller.php zgodnie z opisem ...
W pliku components/com_djclassifieds/controller.php
w okolicy linii 428 trzeba zamienić:
for ($i = 0; $i < count($pliki['name']); $i++)
{
if (substr($pliki['type'][$i], 0, 5) == "image")
{
$nazwa = md5(microtime()).$pliki['name'][$i];;
$images .= $nazwa;
$images .= ";";
$sciezka = JPATH_BASE."/components/com_djclassifieds/images/".$nazwa;
move_uploaded_file($pliki['tmp_name'][$i], $sciezka);
$this->makeimg($sciezka);
if ($i == 0)
{
$this->makeimg_s($sciezka);
} //tylko dla pierwszego obrazka miniaturka
}
}
na:
for ($i = 0; $i < count($pliki['name']); $i++)
{
if (substr($pliki['type'][$i], 0, 5) == "image")
{
$s_f = getimagesize($pliki['tmp_name'][$i]);
if(is_array($s_f) && $s_f[0] > 2){
$nazwa = md5(microtime()).$pliki['name'][$i];;
$images .= $nazwa;
$images .= ";";
$sciezka = JPATH_BASE."/components/com_djclassifieds/images/".$nazwa;
move_uploaded_file($pliki['tmp_name'][$i], $sciezka);
$this->makeimg($sciezka);
if ($i == 0)
{
$this->makeimg_s($sciezka);
} //tylko dla pierwszego obrazka miniaturka
}
}
}