Здравейте,
До неотдавна честичко ми се случваше някой псевдо хакер да ми качва разни шелчета чрез формата за upload на изображения. В момента отново се опитвам да направя такава и се опитвам да наблегна на security-то, та рекох да се допитам и до вас
Мога ли да се чувствам спокоен или е желателно да направя още някоя и друга проверка? Умувам дали и да не отварям файла и да търся с preg_match() например, някакъв зловреден код в него. Има ли смисъл да го правя?
До неотдавна честичко ми се случваше някой псевдо хакер да ми качва разни шелчета чрез формата за upload на изображения. В момента отново се опитвам да направя такава и се опитвам да наблегна на security-то, та рекох да се допитам и до вас
PHP:
protected final function avatar_upload()
{
$fname = $_FILES['avatar']['name'];
$tmp_name = $_FILES['avatar']['tmp_name'];
$ftype = $_FILES['avatar']['type'];
$fsize = $_FILES['avatar']['size'] / 1024;
$fext = strtolower(end(explode('.', $fname)));
$GIS = getimagesize($tmp_name);
if($fsize > $this -> config['upload']['avatar_max_size'])
$this -> context['Errors'][] = $this -> Lang['Errors']['upload']['large_file'];
if($fsize < 1)
$this -> context['Errors'][] = $this -> Lang['Errors']['upload']['small_file'];
if(($GIS[0] < 1 || $GIS[1] < 1) || ($GIS['mime'] != $ftype))
$this -> context['Errors'][] = $this -> Lang['Errors']['upload']['not_image'];
if(!in_array($fext, $this -> config['upload']['img_allow_upload']))
$this -> context['Errors'][] = $this -> Lang['Errors']['upload']['not_supported_image'];
if(isset($this -> context['Errors']))
return false;
}
Мога ли да се чувствам спокоен или е желателно да направя още някоя и друга проверка? Умувам дали и да не отварям файла и да търся с preg_match() например, някакъв зловреден код в него. Има ли смисъл да го правя?